对于Android 3.0及更高版本,我想调用某个方法。
有没有办法检查某个方法在运行的 Android 版本中是否可用?
更准确地说,我的MinSDK是7(Android 2.1),TargetSDK是8(Android 2.2),我需要测试
如果 HoneyComb Android 3.0 或更高版本正在运行。
根据这一点,我如何调用 HoneyComb 方法?
问题的第二部分出现了,因为简单地调用 HoneyComb 方法将无法编译,因为我正在针对 2.2 进行构建。
更准确地说,我的 MinSDK 是 7 (Android 2.1),TargetSDK 是 8 (Android 2.2),我需要测试 HoneyComb Android 3.0 或更高版本是否正在运行。根据这一点,我如何调用 HoneyComb 方法?
步骤#1:将构建目标设置为您希望直接调用并进行编译的最高 API 级别。您的构建目标(例如,compileSdkVersion
在 Android Studio 中,Project > Properties > Android in Eclipse)与您的无关android:targetSdkVersion
.
步骤#2:正如其他答案所示,您可以有条件地调用保护块内的方法:
if (android.os.Build.VERSION.SDK_INT>=android.os.Build.VERSION_CODES.HONEYCOMB) {
// call something for API Level 11+
}
问题的第二部分出现了,因为简单地调用 HoneyComb 方法将无法编译,因为我正在针对 2.2 进行构建。
如果您希望直接调用 API 级别 11 或更高版本的方法,则需要将构建目标更改为 API 级别 11 或更高版本。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)