Android SDK平台软件包有哪些用途?
我需要为我定位的每个API级别下载相应的平台吗?
minSdkVersion
是您的应用兼容的最低API版本。您无需根据此值下载任何内容。如果您将值设置为21(棉花糖),则您的应用将无法在具有Android 19(KitKat)版本的设备上运行。
targetSdkVersion
用于检测您的应用程序兼容的最高sdk版本,它表示向前兼容。此处的区别在于,如果您将目标版本设置为21,则您的应用程序将在装有android 23的设备上运行。以后的Android版本只能使用该应用程序,以了解您的应用程序可能有一些新功能不支持。Google Play政策最近已更新,因此您将被迫使用最新的API版本作为目标,请阅读此处。
compileSdkVersion
是您在编译应用时使用的Android SDK的版本。您必须下载该版本的SDK,才能编译您的应用并使用该版本SDK中的类。例如,您可能想使用类Context
,并调用方法getColor(int)
,SDK的版本23拥有它,因此您可以在代码中使用它。如果您使用的是21版,则该方法不存在,因此您无法在应用中调用它。您会在这里看到minSdkVersion
有用的信息,因为您可能想使用此方法,但是它仅在版本23中引入,并且由于您使用的是最低SDK 21,因此在编译时会收到警告。
构建工具用于编译您的应用程序,无论上述值如何,您都应将其更新为最新版本。我认为,使用最新版本的Android gradle插件,您无需再设置此值,它将自动进行处理。
综上所述,您只需下载要编译的API版本的SDK,即compileSdkVersion
。
关于“针对”的含义,在编写应用程序时,您将代码编译并打包为apk,然后将apk部署到设备上。在您的代码中,您使用的是Android SDK中的类(例如Context
),但这些类的代码未包含在apk中,它是从运行您的应用程序的设备的操作系统中提供的。如果要编译使用这些SDK类的类,则必须向编译器“显示”这些SDK类,以便随后可以编译自己的类。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句