【问题标题】:What value to set for: "Minimum Required SDK" , "Target SDK" & "Compile with"设置什么值:“Minimum required SDK”、“Target SDK”和“Compile with”
【发布时间】:2013-06-24 05:27:08
【问题描述】:

我知道这方面有很多问题,我也读过这个page。但是,我仍然对确切的选择感到困惑。

如果我的手机运行 Android 2.3.6

我知道Minimum Required SDK 应该是我的应用支持的最低 Android 版本。 因此,例如我会选择Android 2.2 或小于该值,例如Android 1.5


令人困惑的部分Target SDKCompile with

我在下面安装了这些:(SDK 管理器中没有Android 2.3.6

Android 4.2.2 (API 17)
安卓 3.0 (API 11)
安卓 2.3.3 (API 10)
安卓 2.2 (API 8)

无论我的手机使用什么,Target SDK是否应该设置为最大值Android 4.2.2;这是Android 2.3.6

选择Android 4.2.2 会覆盖它下面的所有手机吗?是这样吗?

或者

它是否应该设置为与我的手机完全相同/最接近的值。这里可用的是Android 2.3.3?但不能超过我的手机Android 2.3.6


Compile with 是否必须设置为最大 Android 4.2.2 还是什么?

【问题讨论】:

    标签: android sdk


    【解决方案1】:

    Target SDK 是否应该设置为 Android 4.2.2 的最大值, 无论我的手机使用什么;哪个是安卓2.3.6?

    这取决于您,但始终建议使用最新的 sdk 作为目标。

    它只是说应用程序将在 min 和 target sdk 之间工作,但仅针对目标 sdk 进行了测试,因此如果有任何兼容的设置系统必须处理它。

    选择Android 4.2.2 会覆盖它以下的所有手机吗?是这样吗?

    您的应用始终涵盖从 Min-SDK 到 Max-SDK。如果 Min-SDK 为 1 且未设置 Max-SDk,则您的应用支持所有 API。

    是否应该设置为与我的手机完全相同/最接近的值。这里 可用的一个是Android 2.3.3?但不超过我的手机Android 2.3.6

    必须是最新的 SDK

    Compile with 必须设置为 Android 4.2.2 的最大值还是什么?

    您可以选择使用哪个 SDK 来编译您的应用。但最好使用 Target-SDK,后者又是最新的。

    【讨论】:

    • “您的应用仅涵盖从 Min-SDK 到 Target-SDK”不正确。应用程序可以在比目标 SDK 更高的 API 级别运行的设备上安装和运行。您只是没有从最近的 API 级别获得所有好处,并且可能适用一些向后兼容模式
    • 你能解释更多关于编译的信息吗?
    【解决方案2】:

    我一直将我的Compile with 设置为与Target SDK 相同。

    目标应该是您已测试和构建应用程序以处理的内容。随着 Android 的发展,API 行为可能会发生变化,例如默认 AsyncTask 的串行/并行/串行性质(请参阅:Running multiple AsyncTasks at the same time -- not possible?http://commonsware.com/blog/2012/04/20/asynctask-threading-regression-confirmed.html),这取决于您应用的目标 API 和设备 API。那时我们发现它的有趣时光。

    此外,各种 API 也会贬值,因此使用最新的 API 会迫使您仅使用当前维护的内容。

    【讨论】:

      猜你喜欢
      • 2014-10-26
      • 2022-10-21
      • 2011-05-02
      • 2015-12-29
      • 1970-01-01
      • 2012-05-04
      • 1970-01-01
      • 2017-01-19
      • 2012-01-13
      相关资源
      最近更新 更多