请原谅我对这个主题的无知,我所知道的是 SDK 是一组头文件和库,用作编译应用程序的支持。
现在在android中有两个概念minSDK和TargetSDK。文档说您针对 TargetSDK 进行编译。
所以我有点困惑,如何在编译中使用 2 个 SDK。链接如何在运行时发生。
请原谅我对这个主题的无知,我所知道的是 SDK 是一组头文件和库,用作编译应用程序的支持。
现在在android中有两个概念minSDK和TargetSDK。文档说您针对 TargetSDK 进行编译。
所以我有点困惑,如何在编译中使用 2 个 SDK。链接如何在运行时发生。
AFAIK,唯一确定使用的规范是由 Play 商店(或任何可能需要操作 apks 的东西)。 .apk 是一个 zip,其中包含 manifest.xml 的(可能是二进制)版本。Play 商店会查找此内容并使用它来防止其商店中的客户下载不支持其 api 版本的应用程序。
我不需要将规范解释为目标 SDK 版本将用于构建——远离它;清单在编译时没有被广泛检查。清单中的这个字段只告诉谷歌你已经在目标 SDK 级别测试了你的应用程序,并为更高的 API 版本打开了兼容模式。我引用:
例如,将此值设置为“11”或更高允许系统在 Android 3.0 或更高版本上运行时将新的默认主题 (Holo) 应用到您的应用程序,并且还可以在大屏幕上运行时禁用屏幕兼容模式(因为支持 API 11 级隐式支持更大的屏幕)。
如需进一步阅读,请参见此处。
因此,如果您对决定用于构建的 api 的因素感兴趣,您希望添加一行target=Google Inc.:Google APIs:17
to project.properites
.
实际上,我建议在您开始 QA 之前使用project.properties
针对您的最低版本构建应用程序,因为如果您不小心使用了以前的 SDK 版本的方法,您会在编译时被告知。