【问题标题】:MinSDK and TaretSDK android , How does compilation and linking actually occurs at runtime?MinSDK 和 TaretSDK android ,编译和链接实际上是如何在运行时发生的?
【发布时间】:2013-06-28 21:10:00
【问题描述】:

请原谅我对这个主题的无知,我知道 SDK 是一组头文件和库,用于支持编译应用程序。

现在在 android 中有 2 个概念 minSDK 和 TargetSDK。文档说您针对 TargetSDK 进行编译。

所以我有点困惑,如何在编译中使用 2 个 SDK。 链接是如何在运行时发生的。

【问题讨论】:

    标签: android


    【解决方案1】:

    AFAIK,唯一规范确定的用途是由 Play 商店(或任何可能需要操作 apks 的东西)。.apk 是带有清单(可能是二进制)版本的 zip。 xml 在里面。 Play 商店会查找此内容并使用它来防止其商店中的客户下载不支持其 api 版本的应用程序。

    我没有必要将规范解释为目标 SDK 版本将用于构建——远离它;清单在编译时没有被广泛检查。清单中的此字段仅告诉 google 您已在目标 SDK 级别测试您的应用,并为更高的 API 版本打开兼容模式。我引用:

    例如,将此值设置为“11”或更高允许系统在运行 Android 3.0 或更高版本时将新的默认主题 (Holo) 应用到您的应用,并在运行较大屏幕时禁用屏幕兼容模式(因为对 API 级别 11 的支持隐式支持更大的屏幕)。

    如需进一步阅读,请参阅here

    因此,如果您对决定用于构建的 api 的因素感兴趣,您可以在 project.properites 中添加类似 target=Google Inc.:Google APIs:17 的行。

    实际上,我建议使用 project.properties 针对您的最低版本构建应用程序,直到您开始 QA,因为如果您不小心使用了以前 SDK 版本的方法,您会在编译时被告知时间。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-18
      • 1970-01-01
      • 2016-08-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多