是否必须指定minSdkVersion和targetSdkVerion

时间:2012-08-18 10:04:07

标签: android android-manifest

我的应用程序正在处理galaxy s1,s2和galaxy TAB,但我的客户发现它不适用于galaxy s3。 通过在线测试我发现它也没有在nexus上工作

在我的清单中指定了

        <uses-sdk android:minSdkVersion="10" />

我试图探索这个问题,我发现我应该在清单中指定

    <uses-sdk android:minSdkVersion="integer" 
      android:targetSdkVersion="integer"
      android:maxSdkVersion="integer" />

请指导我到底应该做些什么才能让它在所有设备上运行! 总是希望得到帮助 _

2 个答案:

答案 0 :(得分:1)

强制性。它表示安装和运行该应用程序所需的最低android版本。如果它不存在,则会导致错误。

答案 1 :(得分:1)

android:minSdkVersion

一个整数,指定运行应用程序所需的最低API级别。如果系统的API级别低于此属性中指定的值,则Android系统将阻止用户安装应用程序。您应该始终声明此属性。

警告:如果您未声明此属性,系统会假定默认值为“1”,表示您的应用程序与所有Android版本兼容。如果您的应用程序与所有版本不兼容(例如,它使用API​​级别3中引入的API)并且您尚未声明正确的minSdkVersion,那么当安装在API级别小于3的系统上时,应用程序将在崩溃期间崩溃尝试访问不可用的API时的运行时。因此,请务必在minSdkVersion属性中声明相应的API级别。

android:targetSdkVersion

此属性通知系统您已针对目标版本进行了测试,系统不应启用任何兼容性行为来维持应用程序与目标版本的向前兼容性。该应用程序仍然可以在旧版本上运行(直到minSdkVersion)。

指定应用程序所针对的API级别的整数。如果未设置,则默认值等于给予minSdkVersion的值。