android蓝牙开发:无法发现蓝牙设备的问题
来源:互联网 发布:淘宝手机图片尺寸多少 编辑:程序博客网 时间:2024/05/20 13:04
蓝牙应用搜索不到附近设备的问题困扰了很久.
蓝牙应用需要两个基本权限:
<uses-permission android:name="android.permission.BLUETOOTH"/><uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
而对于发现设备新这个功能, 还需另外两个权限(Android M 以上版本需要显式获取授权,附授权代码):
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/><uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
@SuppressLint("WrongConstant")private void getPermission() { if (Build.VERSION.SDK_INT > Build.VERSION_CODES.M) { int permissionCheck = 0; permissionCheck = this.checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION); permissionCheck += this.checkSelfPermission(Manifest.permission.ACCESS_COARSE_LOCATION); if (permissionCheck != PackageManager.PERMISSION_GRANTED) { this.requestPermissions( // 请求授权 new String[]{Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION}, ACCESS_LOCATION);// 自定义常量,任意整型 } else { // 已经获得权限 } }}@Overridepublic void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { switch (requestCode) { case ACCESS_LOCATION: if (hasAllPermissionGranted(grantResults)) { Log.d(TAG, "onRequestPermissionsResult: OK"); } else { Log.d(TAG, "onRequestPermissionsResult: NOT OK"); } break; }}private boolean hasAllPermissionGranted(int[] grantResults) { for (int grantResult : grantResults) { if (grantResult == PackageManager.PERMISSION_DENIED) { return false; } } return true;}在初始化方法中调用
getPermission()方法即可获取授权
阅读全文
0 0
- android蓝牙开发:无法发现蓝牙设备的问题
- Android Bluetooth蓝牙开发:发现Bluetooth蓝牙设备(1)
- android蓝牙开发 蓝牙设备的查找和连接
- android蓝牙开发 蓝牙设备的查找和连接
- android蓝牙开发 蓝牙设备的查找和连接
- android蓝牙开发 蓝牙设备的查找和连接
- android蓝牙开发 蓝牙设备的查找和连接
- android蓝牙开发 蓝牙设备的查找和连接
- android蓝牙开发 蓝牙设备的查找和连接
- android蓝牙开发 蓝牙设备的查找和连接
- android蓝牙开发 蓝牙设备的查找和连接
- 蓝牙----Android的蓝牙开发
- Android 蓝牙开发(二)开启蓝牙,获取状态,发现设备。
- 蓝牙开启&& 被附近的其它蓝牙设备发现
- android 蓝牙ble设备开发
- Android之蓝牙开发初编(发现蓝牙,配对蓝牙,连接蓝牙)
- 关于安卓6.0无法查找蓝牙设备的问题
- Android蓝牙的开发
- JAVA 基础知识 容器
- 文件导出成excel-java
- nginx 安装及配置
- CentOS下MySQL的彻底卸载
- 集成ijkplayer使用时出现只有声音没有画面问题的解决
- android蓝牙开发:无法发现蓝牙设备的问题
- DataTable.Compute()用法
- hive学习笔记
- mysql “Host is blocked because of many connection errors”
- 【学习笔记】斯坦福大学公开课:cs229 Part 6 Learning Theory【上】
- JanusGraph重新索引reindex
- Java基础之内部类、匿名类和异常处理知识点总结
- JS单线程、任务队列与异步
- 【已解决】VirtualBox中安装Ubuntu到最后时卡死在:执行安装后执行的触发器update-notifier-common, ubuntu ubiquity processing trigge