如何确定目标Android版本是什么?

时间:2011-10-31 08:15:12

标签: android

我是android开发的新手。 我需要编写一些简单的应用程序 - 我需要确定目标版本是什么。 我不知道如何决定这个 - 因为我想支持所有新功能的最新版本 - 但我也想支持最大的设备(很少有旧版本的设备)

那么,如何确定目标版本是什么?

3 个答案:

答案 0 :(得分:5)

答案 1 :(得分:3)

android:targetSdkVersion设置为最新的Android SDK版本 引自Bruno Oliveira at Google IO

  

targetSdkVersion不会影响运行应用程序所需的最低SDK级别。它应该始终是您所知道的最新版本。

您必须使用较低版本的唯一原因是检测不兼容性,但这不是一个好理由,因为Lint做得更好。


但是android:minSdkVersion设置为应用运行的最低值。那是重要的一个。

例如,my app使用了非常新的功能,但我将android:minSdkVersion设置为3(这意味着Android 1.5)。我的代码检测到Android 1.5设备,并对它们使用不太闪亮的控件,但仍能正常运行。

Detection code sample

if (android.os.Build.VERSION.SDK_INT > 4) {
        ActivityTransitionAnimation.slide(this, ActivityTransitionAnimation.UP);
    }

所以,这是我的建议:

  • android:minSdkVersion设为3
  • 每当您发现该级别不存在API时,请考虑与增加此数量相关的潜在用户的丢失是否比花时间实施变通办法更糟糕。

答案 2 :(得分:1)

我想说的是从最低目标开始,然后当你遇到只能用更高目标做的事情时,你必须将目标更改为更高目标。如果您的目标较低(因为那里不存在API),使用仅适用于例如2.3的API将显示错误。

此外,您应该考虑“碎片化”的当前状态,以确定实际使用的目标。看看这张图表(从10月5日开始)也许值得从2.1开始,如果它足够高,可以用于你想做的所有事情:

http://cdn.devilsworkshop.org/files/2011/09/android-OS-fragmentation-report.jpg