努力学习编程中 2023-04-04 21:59 采纳率: 100%
浏览 57
已结题

BLUETOOTH_CONNECT权限

想要连接一个蓝牙APP,一打开就提示请求蓝牙,但是Intent intent =new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);startActivity(intent);一直报错,提示说需要android.permission.BLUETOOTH_CONNECT权限,可是已经添加了,还是出问题,华为手机就可以正常运行,小米的却不行,想知道为啥

img

img

img

  • 写回答

2条回答 默认 最新

  • usp1994 2023-04-06 13:48
    关注

    可能是由于小米手机的权限管理系统导致的问题。在Android 6.0及以上的系统中,应用需要在运行时向用户请求授权。除了在AndroidManifest.xml文件中声明权限外,还需要在运行时动态请求权限。

    你需要检查以下几点:

    确保你已经在AndroidManifest.xml文件中声明了android.permission.BLUETOOTH_CONNECT权限。
    
    确保你已经在运行时动态请求了蓝牙权限。可以使用以下代码请求蓝牙权限:
    
    if (ContextCompat.checkSelfPermission(this, Manifest.permission.BLUETOOTH_CONNECT)
         != PackageManager.PERMISSION_GRANTED) {
         ActivityCompat.requestPermissions(this,
             new String[]{Manifest.permission.BLUETOOTH_CONNECT},
             REQUEST_BLUETOOTH_CONNECT);
    }
    
    上述代码会在用户第一次运行应用时向用户请求蓝牙权限。REQUEST_BLUETOOTH_CONNECT是一个请求代码,可以在onRequestPermissionsResult方法中使用。
    
    检查是否在华为手机上安装了应用,并且已经授予了蓝牙权限。如果是在小米手机上测试应用,需要确保已经授予了蓝牙权限。可以在小米手机的设置中找到应用程序,检查是否已经授予了蓝牙权限。
    

    如果上述方法都没有解决问题,可以尝试在小米手机上运行应用时打开调试日志,并查看是否有其他的错误提示。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月15日
  • 已采纳回答 4月7日
  • 创建了问题 4月4日