我正在尝试获取应用程序的SDK 版本,但如果我测试
android.os.Build.VERSION.SDK_INT
在针对 2.3.3 的应用程序中,我得到的设备版本是 17 而不是 10。
我不知道编译我的代码的 SDK 版本,因为我正在编写一个代码片段,开发人员可以将其添加到他们自己的应用程序中。
谢谢。
您应该始终以最新版本为目标。这将为您带来最新的 API。我想您需要知道设备上可用的 API 的当前版本。为此,您将执行以下操作(检查当前 API 是否为 2.3):
@TargetApi(Build.VERSION_CODES.GINGERBREAD)
public static void someMethod() {
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.GINGERBREAD) {
/**
* Call code accessible from Gingerbread onwards
* */
} else {
/**
* Call code from previous API
* */
}
}
如果我没有误解
你需要android.os.Build.VERSION.RELEASE;
看看这个.. targetSdkVersion。
使用此代码:
ApplicationInfo info=getApplicationInfo();// this class give info from the application tag in the manifest file
final int target=info.targetSdkVersion;
也通过这个讨论。