我想写一个应用程序,使用动态壁纸为insatnce。此功能仅在版本7及更高版本中受支持。可以肯定的是,应用程序检查Android手机的版本,并取决于运行不同的代码(例如使用动态壁纸或静态背景。)可以安卓应用程序检查手机的版本
你有这样的代码示例吗?这需要特殊的权限吗?
我想写一个应用程序,使用动态壁纸为insatnce。此功能仅在版本7及更高版本中受支持。可以肯定的是,应用程序检查Android手机的版本,并取决于运行不同的代码(例如使用动态壁纸或静态背景。)可以安卓应用程序检查手机的版本
你有这样的代码示例吗?这需要特殊的权限吗?
假设你需要的Android 1.6或更高版本:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ECLAIR_MR1) {
...
}
是的,有。看看Android中的Build类。您可以像这样使用它Build.VERSION.SDK_INT
public static final int ECLAIR_MR1 =7;
public static final int FROYO =8;
if(Build.VERSION.SDK_INT==FROYO){
Toast.makeText(getApplicationContext(), "Iam a FROYO-Phone", 1).show();
}else if(Build.VERSION.SDK_INT==ECLAIR_MR1){
Toast.makeText(getApplicationContext(), "Iam an ECLAIR-Phone", 1).show();
}
SDK_INT在很早的版本上不可用。所以,如果你的清单中的实例:
android:minSdkVersion="1"
你可以使用这样的事情:
@TargetApi(Build.VERSION_CODES.DONUT)
static boolean getPreHoneyComb() {
try {
Build.VERSION.class.getField("SDK_INT");
}
catch (NoSuchFieldException e) {
return true;
}
return Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB;
}
RELEASE是不是一个很好的,这是一个用户自定义字符串,可以是任何东西(特别是当你”重新使用自定义ROM)。当您想要测试特定的SDK功能时,SDK_INT是要走的路。 – EboMike 2011-03-03 21:53:26
阿好好知道。将改变我的答案。 – 2011-03-03 21:58:59