compile with在安卓开发是什么

在安卓开发中,编译器(Compiler)是非常重要的一环。在编写代码完成后,我们需要将它转换成可执行的机器码。这个过程就称之为编译。compile with 作为 Android Studio 编译环境中的一个重要选项,其作用是指定将代码编译为可运行应用的 Android 版本。本文将逐一介绍 compile with 的原理和使用方法。

什么是 compile with?

compile with 可以直译为“编译为”,在 Android Studio 中指定了一个版本号,用于告诉编译器我们使用的是什么 Android 平台版本。compile with 选项会影响代码编译过程中许多的决策,包括运行时权限许可、库依赖和应用程序二进制接口(API)等。同时,compile with 也会直接影响到应用程序运行的最低设备版本。简单来说,这个选项将决定你的应用程序在哪些平台上能够运行。

compile with 原理

compile with 的原理在于操作系统的不同版本。每一个 Android 系统版本都有其相关的 API 版本。编译时使用的 API 版本会决定你的应用程序是否能被运行在某一特定平台上,以及它是否能够在该平台上获得正确的行为和可用性。API 层是 Android 安卓提供的标准公共程序界面,软件开发者可以利用它们来调用其他程序的子例程或者运行自己的子例程。

Android 操作系统版本对应的 API 级别如下:

| Android 版本 | API 级别 |

| :---: | :---: |

| 1.0 | 1 |

| 1.1 | 2 |

| 1.5 | 3 |

| 1.6 | 4 |

| 2.0 - 2.0.1 | 5 |

| 2.1.x | 7 |

| 2.2 - 2.2.3 | 8 |

| 2.3 - 2.3.2 | 9 |

| 2.3.3 - 2.3.7 | 10 |

| 3.0 | 11 |

| 3.1 | 12 |

| 3.2 | 13 |

| 4.0.1 - 4.0.2 | 14 |

| 4.0.3 - 4.0.4 | 15 |

| 4.1.x | 16 |

| 4.2.x | 17 |

| 4.3.x | 18 |

| 4.4 - 4.4.4 | 19 |

| 5.0 - 5.1.1 | 21 |

| 6.0 - 6.0.1 | 23 |

| 7.0 - 7.1.2 | 24 |

| 8.0 - 8.1 | 26 |

| 9.0 | 28 |

| 10.0 | 29 |

在 Android 中,为了确保应用程序能够支持特定版本的操作系统,我们需要在代码中使用编译器指定特定的 API 级别。

compile with 的使用

在 Android Studio 中,你可以通过修改 build.gradle 实现 compile with。build.gradle 是一个 Gradle 基础配置文件,它包含了 Android 应用程序的所有设置和构建信息。简单的来说,这个文件告诉 Gradle 在构建应用程序时需要做什么。typical Android Studio 的 build.gradle 文件如下:

```

apply plugin: 'com.android.application'

android {

compileSdkVersion 29

buildToolsVersion "29.0.3"

defaultConfig {

applicationId "com.example.myapplication"

minSdkVersion 21

targetSdkVersion 29

versionCode 1

versionName "1.0"

testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"

}

buildTypes {

release {

minifyEnabled false

proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'

}

}

compileOptions {

sourceCompatibility JavaVersion.VERSION_1_8

targetCompatibility JavaVersion.VERSION_1_8

}

lintOptions {

checkReleaseBuilds false

abortOnError false

}

}

dependencies {

implementation fileTree(dir: 'libs', include: ['*.jar'])

implementation 'androidx.appcompat:appcompat:1.2.0'

implementation 'com.google.android.material:material:1.2.1'

implementation 'androidx.constraintlayout:constraintlayout:2.0.1'

testImplementation 'junit:junit:4.+'

androidTestImplementation 'androidx.test.ext:junit:1.1.2'

androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'

}

```

其中,compileSdkVersion、minSdkVersion 和 targetSdkVersion 就是配置 compile with 的主要选项。具体来说,compileSdkVersion 指定的版本号将决定你的应用能够使用哪些接口;minSdkVersion 和 targetSdkVersion 指定的版本将分别决定你的应用必须支持的最低的 Android 版本和目标版本。

总结

compile with 是安卓开发中非常基础而重要的一个概念,当你正在开发一款 Android 应用程序时,它将影响你应用的运行环境和最终的版本发布。因此,在编写应用程序时,请务必留意你所选定的 API 级别,以确保你应用可以顺利运行。


相关知识:
virtualbox 安卓模拟器开发
VirtualBox 是一款非常流行的虚拟机软件,它能够模拟多个操作系统。而安卓模拟器则是一种在 PC 上运行模拟安卓系统的软件。而使用虚拟机模拟安卓系统的方式也成为了一种常见的安卓模拟器解决方案。本文将介绍如何使用 VirtualBox 创建安卓模拟器。
2023-05-23
mono开发安卓系统
Mono是一款跨平台的开源框架,由Novell公司开发,旨在提供一个可以在不同操作系统上运行的.Net开发环境。Mono框架可以在包括Linux,Windows,macOS,Android等多个操作系统上运行。在Android开发中,由于Java是其主要开
2023-05-23
kotlin安卓开发全部课程
Kotlin是一个开源的、跨平台的编程语言,被广泛用于安卓开发。与Java相比,Kotlin具有更加简洁明了的语法,更好的代码安全性,更强的兼容性和更高的效率。本文将为您介绍Kotlin安卓开发的全部课程,帮助您掌握Kotlin开发。Kotlin基础Kot
2023-05-23
flash安卓开发
Flash是一款多功能的图形动画工具,也是一种基于矢量的软件设计工具,可以产生非常精美的动画、游戏和应用程序。对于安卓开发来说,Flash可以用来制作安卓应用程序,以及为安卓用户提供富媒体内容和网页。本文将简单介绍Flash安卓开发的原理和相关内容。1.
2023-05-23
eclipse安卓开发怎么设置图片高度
在Android开发中,经常需要使用图片作为背景或者是控件中的图标。对于图片的大小我们可以根据需要灵活设置,比如需要将图片的高度设置为特定的值。下面我将详细介绍在Eclipse中如何设置Android开发中图片的高度。1. 准备工作在开始设置图片高度之前,
2023-05-23
怎样制作安卓app共存版
安卓App共存版的制作可以通过以下步骤进行:1. 下载并安装“蒲公英”或“PP助手”等支持应用双开的应用。2. 在蒲公英或PP助手等应用中找到需要双开的应用,点击“多开”或“复制”选项。此时,该应用就会被复制出一个新的安装包,可以与原应用共存。3. 安装复
2023-04-28
开发一款安卓app难吗
开发一款安卓应用(简称app)的难易程度取决于您的开发经验、所需功能的复杂程度以及您对安卓开发技术的熟悉程度。在这篇文章中,我们将深入了解安卓应用开发的原理和基本流程,帮助您了解其背后的工作原理。1. 安卓操作系统和开发环境安卓(Android)是一种基于
2023-04-28
安卓和ios直播app开发区别
安卓和iOS平台的直播APP开发有着一定的区别,主要包括以下几个方面:1. 编程语言不同。安卓平台的开发需要使用Java或Kotlin语言,而iOS平台则需要使用Objective-C或Swift语言进行开发。2. 硬件和软件差异。安卓和iOS平台的硬件和
2023-04-28
安卓app的界面开发代码下载
安卓app的界面开发主要是通过 XML 文件和 Java 代码进行实现,其中 XML 文件主要用于定义界面的布局和控件,Java 代码则用于处理界面的逻辑和交互。一、XML 文件编写在 Android Studio 中创建新的 Android 项目后,可以
2023-04-28
北京安卓app开发怎么收费
北京安卓App开发收费的原理与详细介绍:安卓App开发的收费主要取决于以下几个方面:1. 项目复杂度: 根据项目的复杂程度,开发费用会有所不同。简单的应用功能较为单一,开发难度较低,因此收费也较低。而复杂的应用功能多样,涉及到更多的技术难点与技术含量更
2023-04-28
vs开发安卓appc++
在这篇文章中,我们将详细介绍如何使用Visual Studio(VS)进行C++安卓应用的开发。VS提供了C++开发者所需的一切工具,从中可以极具开发效率地创建原生Android应用。**1. 系统要求和安装**在开始之前,请确保您的计算机满足以下要求:-
2023-04-28
上海集团安卓app开发公司
上海集团安卓APP开发公司是一家专业从事安卓APP开发的公司,总部位于中国上海。该公司拥有一支经验丰富、技术精湛的技术团队,能够为客户提供高质量、个性化的APP定制服务。以下是该公司的原理和详细介绍。1. 客户需求分析在接收到客户需求后,上海集团安卓APP
2023-04-28
©2015-2023 安卓益APP Anzhuoe.com 蜀ICP备17007734号-1