哪个android sdk版本要上市?

时间:2010-01-12 23:50:31

标签: android google-play distribution

我想在市场上发布一款应用。它在2.0版本中没有使用任何新功能,例如蓝牙,它适用于使用1.6到2.1版本的每个模拟器。

我的问题是我应该分发我的应用程序版本以使其与运行1.6,2.0或2.1的所有设备兼容?

我只有一个运行1.6的物理设备来测试它,但正如我所说,它没有使用任何花哨的东西,并且在使用API​​级别4,5,6或7的模拟器上运行良好。

由于

5 个答案:

答案 0 :(得分:8)

这里的答案很好,但这里还有一些建议:

  • 除非您完全确定需要,否则不要设置android:maxSdkVersion
  • android:minSdkVersion设置为3,以便Cupcake设备可以运行它。
  • android:targetSdkVersion设置为4,表示该应用已在Donut上进行过测试。

您的应用应该适用于所有> = Cupcake设备。如果您计划为高密度屏幕(Droid,Nexus One)提供高密度资源,那么您还需要做更多的工作。为此开始另一个线程会更好,但长话短说,你将高密度资源放在一个名为drawable-hdpi-v4的文件夹中。

请务必查看uses-sdk文档。

答案 1 :(得分:4)

我用1.5测试并输入android:minSdkVersion =“3” 基于此,仍有很多设备1.5 http://developer.android.com/resources/dashboard/platform-versions.html

答案 2 :(得分:2)

如果你的应用程序没有做任何花哨的事情,那么在这些版本之间不使用任何已弃用/更改/添加的内容并在各自的模拟器上运行,那么你应该没问题。

使用android:maxSdkVersion="7"将其限制为2.1作为上限 - 您可以随时更新下一个SDK。

答案 3 :(得分:1)

我相信在以前版本的SDK中编写的任何内容都与最新版本完全兼容。

我确信我在设置IDE时会在SDK文档中阅读此内容。

如果我是正确的,那么确实没有必要更新您的应用程序以使用添加的功能,尽管如果您决定对其进行扩展,该选项将始终存在。

答案 4 :(得分:1)

在我看来,最佳做法是使用Android 1.6 sdk进行编译,并在清单中将minSdkVersion设置为3。

我根据Dianne Hackborn(用户名为hackbod评论已接受答案的评论)推荐this thread,她是Google员工,可以使用Android源代码。

基本上有相当多的Android 1.5 SDK设备,因此使用Android 1.5 SDK进行编译将为使用1.5 SDK,1.6 SDK,2.0 SDK或2.1 SDK的更多设备提供支持,但有些设备需要1.6诸如HTC Tattoo之类的SDK使用1.6 sdk编译你的应用程序,但将minSdkVersion设置为3允许大多数设备能够使用你的应用程序。

如果您按照接受的答案说并使用最新的2.1 SDK进行编译,那么您就错过了大量用户。使用2.1 SDK编译的应用程序只能由具有2.1 SDK或更高版本的设备使用,因此基本上您将用户限制为拥有Google Nexus One的用户。