如何处理构建API版本>的minSdkVersion?

时间:2012-01-14 05:56:34

标签: android

我的应用程序有minSdkVersion = 8,targetSdkVersion = 15和SDK构建版本= 8.一般来说它运行良好,包括在ICS上,但我想为ICS用户提供更多功能,例如可调整大小的小部件。这需要将SDK构建版本增加到15。

我关注API静态安全性。例如,如果我无意中使用旧手机上没有的API功能。

处理SDK构建版本的优秀做法>的minSdkVersion?如何在发送新版本之前验证它是否在旧手机上没有损坏?解决这个问题的好方法是什么?

2 个答案:

答案 0 :(得分:4)

我不知道这是否被视为"良好做法",但我只是打开文件project.properties并将属性target=android-11更改为我想要的任何API级别去检查。保存文件后,Eclipse将开始标记API调用高于设置版本的错误。我只是浏览它们,检查它们是否包含在API级检查中,然后再更改属性。

答案 1 :(得分:0)

我尝试了Glitch的回答(谢谢!),它有点工作但不像我预期的那样。我的小部件信息文件具有API 15属性,例如

android:minResizeWidth="40dp"
android:minResizeHeight="40dp"
android:resizeMode="horizontal|vertical"

当我将SDK构建版本从15更改为8时,这些行标记为错误(这很好),这导致R类的生成失败。这反过来将每个对R的引用标记为错误(hundrads)。现在,如果我有类似

的东西
someApi15SpecificMethod(R.xyz)

由于参数未定义,因此无法安全地判断API 8中是否存在某些A ap15SpecificMethod(...)。

由于Glitch的回答是迄今为止最好的答案我在答案中标记了它,但请继续在这里发表想法。