android下的SuppressLint与TargetApi

简介: android下的SuppressLint与TargetApi

版本:Android stuido 2.2

其实他们的作用都是屏蔽使用新的方法中的API时报错的问题。打个比方。我写了一个蓝牙操作的demo,它的配置是这样的:

1. minSdkVersion 16
2. targetSdkVersion 24

我在代码中增加了一个回调的定义:

private ScanCallback scanCallback = new ScanCallback() {
            @Override
            public void onScanResult(int callbackType, ScanResult result) {
                super.onScanResult(callbackType, result);
            }
        };

这个时候IDE会报警告给我。我可以有三个方法可以去除该警告,那就是在文件头部加入下面三个声明中的任意一个:


@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)

@TargetApi(Build.VERSION_CODES.LOLLIPOP)

@SuppressLint(“NewApi”)

要注意的是,上面这些方法只是去除警告并没有解决程序在不平版本的系统中运行的问题,比如上面这个示例中,如果demo是在低于android L的系统中运行还是会出错。所以类似这样的问题还是要结合Build.VERSION.SDK_INT一起使用,像下面这样:


if(Build.VERSION.SDK_INT >= 23)

  {

       //使用api 23以上加入的方法

  }


目录
相关文章
|
12月前
|
API Android开发
android:descendantFocusability
android:descendantFocusability
40 0
|
Android开发
Android 多进程通信之几个基本问题
开启多进程的方法 Android 中使用多进程只有一种方法,那就是给四大组件(Activity、Service、Receiver、ContentProvider)在AndroidMenifest中指定android:process属性 <service android:name="com.
2440 0
|
Java Android开发 Shell
|
定位技术 Android开发 UED
|
XML Android开发 数据格式
|
Android开发 iOS开发
|
XML Android开发 数据格式
|
JSON Android开发 数据格式
Android 即时通讯开发
Android 即时连天工具的开发   客户端,开三个线程,thread1监听接收消息,用udp,thread2定时向服务器发送在线消息,用tcp,thread3每隔一段时间检查发送的消息的时间是否超时(客户端之间每次收到消息都要发送一个确认包,每次发送消息,都要把此消息加入全局json,加上time,消息id等标签。直到收到确认消息后删除全局变量中的此消息),超时后就把此消息发送服
1691 0