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


相关知识:
安卓4
开发者选项是安卓系统中非常重要的一部分,它可以帮助开发人员测试、调试和优化自己的应用程序。在安卓4.4中,开发者选项是一个很强大的工具,它提供了一些非常有用的功能和选项,同时也需要一些特殊的设置和注意事项。在本文中,我们将详细介绍安卓4.4开发者选项的原理
2023-05-23
win10安卓app开发
在过去,Windows 应用程序不支持在 Android 上运行,这导致了做出决策时的困惑。但是现在,由于技术的进步和不断的创新,开发人员可以使用 Windows 10 平台开发 Android 应用程序。Win10 安卓应用开发的原理主要是通过安装 An
2023-05-23
rtcp链接安卓开发
RTCP(Real-time Transport Control Protocol)是一种用于流媒体通信的控制协议,它是RTP(Real-time Transport Protocol)的组成部分之一。在音视频通信中,RTP负责携带媒体数据,RTCP负责携
2023-05-23
k20pro安卓9开发版
K20 Pro是一款全新的智能手机,它是小米旗下的一款高端手机。K20 Pro安卓9开发版是一种在K20 Pro上运行的安卓系统的开发版本,用于帮助开发人员在手机上进行新功能的开发和调试。K20 Pro安卓9开发版中最重要的特点之一是它的操作系统核心为An
2023-05-23
h5开发工具安卓
HTML5开发工具是为了帮助开发者减少开发时间、提高开发效率而开发的一款工具。通常,这种工具会为开发者提供丰富的 HTML5 相关组件库、代码自动补全、实时预览、代码编辑器等多种实用功能。下面将详细介绍一下h5开发工具在安卓系统上的实现原理和几种常见的h5
2023-05-23
ee开发程序员想转安卓怎么办
如果你是一名ee开发程序员,而且想转到安卓开发领域,那么恭喜你已经朝着正确的方向迈出了第一步。虽然ee开发和安卓开发看起来相差很远,但是实际上它们之间有很多相似之处。比如,ee开发和安卓开发都需要掌握一些编程语言、熟悉软件开发流程和工具等等。因此,只要你愿
2023-05-23
苹果安卓app通用开发
苹果和安卓是两个不同的操作系统,它们具有不同的代码结构和应用程序接口。因此,开发应用程序需要不同的工具和技术来构建应用程序。但是,最近,一些工具和框架已经出现,使得开发一个既可以在苹果设备上运行,也可以在安卓设备上运行的应用程序成为可能。混合开发:混合开发
2023-04-28
开发安卓app中
开发安卓应用程序需要掌握一些关键概念和技能。在这篇文章中,我们将详细了解Android开发的原理、开发环境的搭建、基本组件以及一次简单的开发实例。希望能为初学者提供一个全面的了解。一、安卓应用程序开发原理1. Android操作系统是基于Linux内核的,
2023-04-28
安卓阅读类app开发问题
安卓阅读类App开发需要考虑以下几个方面:1. 应用架构开发阅读类App时,通常需要采用MVC或MVVM设计模式来构建应用结构。同时,需要考虑应用的维护性和扩展性问题,尽量避免应用代码过于臃肿,建议使用模块化开发。2. 功能需求阅读App的核心功能包括阅读
2023-04-28
安卓小说app开发文档下载
安卓小说APP开发文档下载(原理或详细介绍)本文将为您详细介绍如何构建一个简易的安卓小说APP。您将了解到涉及的技术和步骤,以便在入门后能够创建一个基本功能的小说阅读APP。开发环境和工具:1. 操作系统:Windows、macOS 或 Linux2. 开
2023-04-28
安卓app开发用什么技术
安卓App开发主要使用Java语言和Android SDK开发工具包。下面详细介绍一下:1. Java语言安卓App是运行在Android操作系统上的,而Android操作系统是基于Linux内核的。因此,开发Android App需要使用基于Java语言
2023-04-28
mqtt安卓app开发
MQTT(Message Queuing Telemetry Transport)是一个轻量级的消息传递协议,它适用于各种物联网设备和应用程序之间的通信。Android 应用程序可以通过 MQTT 协议与服务器进行通信,这对于需要实时通信和设备监控的应用程
2023-04-28
©2015-2023 安卓益APP Anzhuoe.com 蜀ICP备17007734号-1