android.annotation.SuppressLint
2016-08-18 11:42
316 查看
Lint是一个静态检查器,它围绕Android项目的正确性、安全性、性能、可用性以及可访问性进行分析。 它检查的对象包括XML资源、位图、ProGuard配置文件、源文件甚至编译后的字节码。
Lint包含了API版本检查、性能检查以及其他诸多特性。
其中还有一个重要的改动是Lint可以使用@SuppressLint标注忽略指定的警告。
@SuppressLint("NewApi")在Android代码中,我们有时会使用比我们在AndroidManifest中设置的android:minSdkVersion 版本更高的方法,此时编译器会提示警告,解决方法是在方法上加上@SuppressLint("NewApi")或者@TargetApi()。
那他们之间有什么区别呢,很简单,
@SuppressLint("NewApi")屏蔽一切新api中才能使用的方法报的androidlint错误
@TargetApi()只屏蔽某一新api中才能使用的方法报的androidlint错误
举个例子,某个方法中使用了api9新加入的方法,而项目设置的android:minSdkVersion=8, 此时在方法上加@SuppressLint("NewApi")和@TargetApi(Build.VERSION_CODES.GINGERBREAD)都可以,以上是通用的情况。
而当你在此方法中又引用了一个api11才加入的方法时,@TargetApi(Build.VERSION_CODES.GINGERBREAD)注解的方法又报错了, 而@SuppressLint("NewApi")不会报错,这就是区别。
当然,不管你使用了哪个注解,作用仅仅是屏蔽androidlint错误,所以在方法中还要判断版本做不同的操作,比如:
if(Build.VERSION.SDK_INT>=Build.VERSION_CODES.GINGERBREAD){
//
}else{//PreGINGERBREAD
//
}
相关文章推荐
- android.mk添加第三方jar包
- 从Activity的启动理解Binder通信
- Android判断横屏竖屏代码
- Android Activity生命周期以及onSaveInstanceState、onRestoreInstanceState要点备忘
- Android_androidstudio_Install Repository and sync project异常
- 自定义View基础之——图片加载进度条
- Android常用的工具方法(1)
- android触摸屏ar1011驱动
- Androd binder机制需注意
- Android之自定义Dialog
- Android Glide图片加载库的使用
- android 图片转Base64压缩上传
- android之View坐标解析
- android studio 传感器之加速度,临近,光线传感器
- Android 剖析Activity管理栈
- Android样式开发--drawable总结
- Android的fragment生命周期
- 浪漫桃心的Android表白程序
- android自动更新实现方案
- 开源框架greenDao的使用(一)-greenDao2