Android Version
Android系统的每一次升级都会带来一些更新,有些更新是在原有的接口上兼容更新,但也有些更新是覆盖之前的接口而不兼容的
比如 相机接口Camera(5.0以前) 和 Camera2(5.0起支持)
此时需要在应用中根据Adnroid版本分别处理,以求支持不同的Android版本
Build.SDK.VERSION
SDK中的类Build储存有不同的版本信息
截取部分代码:
public class Build {
private static final String TAG = "Build";
/** Value used for when a build property is unknown. */
public static final String UNKNOWN = "unknown";
/** Either a changelist number, or a label like "M4-rc20". */
public static final String ID = getString("ro.build.id");
/** A build ID string meant for displaying to the user */
public static final String DISPLAY = getString("ro.build.display.id");
/** The name of the overall product. */
public static final String PRODUCT = getString("ro.product.name");
}
Build定义了一些静态的字符串来说明系统信息
信息通过getString获取
private static String getString(String property) {
return SystemProperties.get(property, UNKNOWN);
}
一层层跟踪就可以查看储存的信息的来源处
判断当前系统版本
private int chkVersion() {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {
return -1;
}
}
Build.VERSION.SDK_INT是当前系统版本转化的整数值
而Build.VERSION_CODES内有许多的版本号 LOLLIPOP是android5.0的发布名称
转化成整数值直接比较就可以得出当前系统的版本号