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 级别,以确保你应用可以顺利运行。


相关知识:
安卓12开发版隐藏勇者勋章
安卓12开发版隐藏勇者勋章是一项很有趣的功能,它可以展示用户使用安卓系统的时间和功力。该功能被隐藏在系统中,只有在特定条件下才能显示。原理是通过访问设备信息,判断用户使用安卓系统的时间和使用频率,然后展示相应的勋章。以下是详细介绍。首先,安卓12开发版的隐
2023-05-23
安仁安卓软件定制开发联系方式
安仁安卓软件定制开发是一种针对不同用户需求的定制化软件开发。安仁安卓软件定制开发公司可根据企业或个人业务需求,提供定制化的安卓应用软件开发,能够满足用户的特定需求,并提供客户定期维护,解决软件更新和升级等问题。公司联系方式:地址:成都市高新区天府五街62号
2023-05-23
qt开发安卓iosapp
Qt是一款跨平台的开发工具套件,可以方便快捷的开发各种类型的应用程序,包括桌面应用程序、嵌入式应用程序、Web应用程序以及移动应用程序等。其中特别重要的是移动应用程序开发,Qt提供了丰富的功能和工具,支持开发安卓和iOS移动应用程序。Qt开发安卓、iOS应
2023-05-23
mix2的开发版现在是安卓几
Mi MIX 2是小米公司在2017年推出的一款手机,是小米首款搭载全面屏设计的旗舰手机。从系统方面来说,MIX 2的开发版最新版本是MIUI 12,基于Android 10。Android 10是Google在2019年推出的Android系统的最新版本
2023-05-23
keep 安卓开发
Keep是一款集运动跟踪、健身计划、社交互动于一体的健身软件,目前已成为国内最受欢迎的健身应用之一。作为国内主流健身APP之一,Keep的安卓开发为大家提供了很好的参考案例。一、开发工具Keep主要采用Java语言进行开发,开发工具为Android Stu
2023-05-23
java安卓开发问题汇总
Java安卓开发是移动应用开发中最流行的一种技术,也是目前市场上最稳定的技术之一。而Java安卓开发的成熟也为移动应用开发提供了更高的效率和可靠性。但是在Java安卓开发的过程中会遇到许多问题,在这里我将对一些常见的问题进行汇总,并且解释它们的原理和详细的
2023-05-23
fuchsia安卓开发
Fuchsia是谷歌正在积极开发的新型操作系统,而移动端的开发者们也纷纷关注着它。其中一个比较关键的原因就是Fuchsia与安卓的联系。那么Fuchsia和安卓的联系到底是什么呢?Fuchsia是一个基于微内核的操作系统,而安卓则是一个基于Linux内核的
2023-05-23
chtml5安卓开发
HTML5是一种标记语言,用于编写网页,并且由于其丰富的特性,它可以用于移动应用程序的开发。Android开发人员可以使用HTML5编写Android应用程序。HTML5的优势在于可扩展性、跨平台支持、开发易于维护、应用程序的易部署和多设备支持。在本文中,
2023-05-23
as安卓开发
Android是当前全球最流行的移动操作系统,其庞大的市场份额和广泛的使用范围,成为了移动互联网时代的代表之一。在这个巨大的生态系统中,Android应用的开发成为了一项非常重要的任务。本文将从原理和详细介绍两个方面,介绍Android开发的基础。一、An
2023-05-23
安卓物流app开发有用吗安全吗
安卓物流App开发的确是一个有用且安全的解决方案。物流App可以帮助企业和个人更有效地管理货物的运输、仓储和配送。在当前科技日益发达的时代,借助物流App可以为物流行业带来巨大的收益,并帮助企业借助模拟和跟踪技术获取实时信息,从而降低成本并提高服务质量。以
2023-04-28
安卓开发图书馆定位app
一、概述随着互联网技术的发展、智能手机的普及与人们阅读习惯的改变,传统的纸质图书被数字图书所代替。数字图书具有方便易携带、经济省空间、可多人同时阅读和阅读体验好等特点,大受欢迎。然而,数字图书读者与图书馆、书店之间的距离、数字图书的版权限制、阅读终端设备限
2023-04-28
基于安卓开发的课程类app
基于安卓开发的课程类App可以为学生提供便捷的课程管理功能,例如将所有的课程信息整理在一个地方,方便进行查看、添加、编辑、删除以及提醒等。下面是一些常见的功能和实现方法。1. 登录注册和用户信息管理:App需要进行用户身份验证和管理,一般可以采用用户名或手
2023-04-28
©2015-2023 安卓益APP Anzhuoe.com 蜀ICP备17007734号-1