Android应用程序限制功能以支持向后兼容性

时间:2012-04-08 15:59:28

标签: android android-manifest

我有一个Android应用程序,其最低API级别为4(Android 1.6),我有一些用户使用此版本的Android。但是,我想实现一个使用NFC的功能,它需要Android 3或更高版本(API级别9+)。这意味着我必须更改清单文件中的最低API级别,这将使用较旧版本的Android疏远用户。那么有没有办法以编程方式禁用使用NFC的功能,如果设备不兼容并仍然允许使用其他功能而不是使用旧版本的Android锁定用户?

3 个答案:

答案 0 :(得分:2)

将min-sdk设置为4,将target-sdk设置为9,并在代码中使用类似的内容:

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB){
  //your API-9 specific code here
}else{
 // an alternative code
}

对于java部分,在XML中,新属性被忽略,因此可以安全地添加所需内容

答案 1 :(得分:1)

阅读此http://developer.android.com/resources/articles/backward-compatibility.html。您可以使用反射API检查方法是否存在。阅读上一个问题:Check if method exists

答案 2 :(得分:0)

您需要将API级特定代码封装到外部类并使用反射来调用它们(例如使用接口)