TargetAPI和SuppressLint
- @TargetApi(版本号)
@TargetApi(版本号) 是一个注解,用来兼容不同版本的开发。他指定了下面的一个方法与某个版本对应(大于minSdk),忽略指定的minSdk。例如高版本API需要实现某种功能,而低版本则不需要,可以这样写,
@TargetApi(23)
private void getPersimmions() {
if (Build.VERSION.SDK_INT >= 23) {
...
}
此时编译器Lint检测的时候就不会报错误或者警告。其中Build.VERSION.SDK_INT 是当前运行机器版本号。
- @SuppressLint(‘NewApi’)
与@TargetApi(版本号) 类似,只不过@TargetApi(版本号) 对应一个版本号,而@SuppressLint(‘NewApi’)只要设置过之后,就等于在任意api版本都忽略了。比如现在的TargetAPI指定为11,以后我用了13的,仍然会得到版本不兼容的提示;而@SuppressLint做不到这一点。