【发布时间】:2013-02-03 00:52:57
【问题描述】:
简单问题:在 Eclipse 中,“新建 Android 项目”命令总是尝试使用最后一个可用的 sdk。这总是一个好主意吗?
更新:
我试着解释一下。现在在 Eclipse 中,“新项目”会生成一个清单,其中包含:
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
因此,定位到最后一个 Android(Jelly Bean,4.2.x),但它也可以在 Froyo (2.2) 上运行。对我来说还好。这个选择我有什么大错?
更新
如果我将 android:minSdkVersion="8" + android:targetSdkVersion="17" 和构建目标设置为 2.2 以确保我的应用程序可以在旧设备上运行(没有 NoSuchMethodError 异常),是否可以?
【问题讨论】:
-
这取决于您要定位哪些设备
-
阅读此说明,了解“目标 sdk 版本”的含义:developer.android.com/guide/topics/manifest/… 为此,您在此 sdk 版本上测试了您的应用程序并验证它可以正常工作。所以设备不需要为你模拟旧的 sdk。
-
@tuxSlayer 是的,谢谢,自从我写这个问题以来已经过去了很多时间。现在我总是针对最后一个 sdk 版本
-
我的意思是你可能并不总是希望在那个地方有最后一个版本。 IE。如果您创建新项目(从头开始编写应用程序) - 这可能是开始的好方法。否则,假设您的应用程序访问了某些设备功能,并且您在 API 级别 18 的设备上对其进行了测试。然后您会看到 API 级别 20 可用,只需更改此目标版本。在此之后,某些功能可能无法在较新的设备上运行,但是,如果您将 target sdk 保留在 18 上,新设备会为您模拟它,一切都会正常工作。
标签: android android-manifest android-library