91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android 6.0 藍牙搜索不到設備原因,MIUI權限申請機制方法

發布時間:2020-08-21 00:05:08 來源:腳本之家 閱讀:263 作者:ddiagw 欄目:移動開發

為提供更高的數據保護 Android6.0版本上增加了關于Wifi和藍牙的權限。

藍牙搜索到設備需要用到定位服務,所以在開發中 targetSdkVersion 大于等于23(6.0) 需要在代碼中進行權限獲取

需要在配置文件中申請兩個權限:

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> 

在代碼中調用時先進行權限判斷,如果沒有權限就去申請權限:

private void requestPermission() {
 if (Build.VERSION.SDK_INT >= 23) {
  int checkAccessFinePermission = ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION);
  if (checkAccessFinePermission != PackageManager.PERMISSION_GRANTED) {
   ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.ACCESS_FINE_LOCATION},
     REQUEST_PERMISSION_ACCESS_LOCATION);
   Log.d(TAG, "沒有權限,請求權限");
   return;
  }
  Log.d(TAG, "已有定位權限");
 }
 //做下面該做的事
}

調用ActivityCompat.requestPermissions()之后會有一個回調

@Override
public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
 switch (requestCode) {
  case Common.REQUEST_PERMISSION_ACCESS_LOCATION: {
   if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
    Log.d(TAG, "開啟權限permission granted!");
    //做下面該做的事
   } else {
    Log.d(TAG, "沒有定位權限,請先開啟!");
   }
  }
 }
 super.onRequestPermissionsResult(requestCode, permissions, grantResults);
}

網上有人說,當彈出權限確認框之后,用戶點擊確定或者拒絕時才會調用進行回調:onRequestPermissionsResult

但是在小米手機MIUI上并不是這樣的。MIUI上是這樣的:權限管理那里設置應用的定位權限為拒絕或者詢問時checkAccessFinePermission != PackageManager.PERMISSION_GRANTED,說明沒有定位權限 。如果設置為允許,checkAccessFinePermission ==PackageManager.PERMISSION_GRANTED,說明有定位權限。

當設置拒絕時去ActivityCompat.requestPermissions ,并沒有彈出權限使用確認框,而是直接回調:沒有權限

當設置詢問時去ActivityCompat.requestPermissions ,并沒有彈出權限使用確認框,而是直接回調:已有權限,然后在調用藍牙代碼的時候彈出確認框。當點擊允許時權限管理那里變成了允許,當點擊拒絕時,權限管理那里變成拒絕,但是下次再進行權限檢查時返回 已有定位權限。權限管理那里明明是拒絕的啊,怎么就有定位權限了?感覺這是MIUI的一個bug,我的系統是:MIUI 8 6.11.3開發版。

以上這篇Android6.0 藍牙搜索不到設備原因,MIUI權限申請機制方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

新蔡县| 绍兴市| 山丹县| 荥经县| 甘南县| 陆河县| 隆德县| 林芝县| 黄龙县| 六盘水市| 宁远县| 夏津县| 大宁县| 墨脱县| 慈溪市| 麻阳| 赣州市| 浙江省| 台东市| 固镇县| 探索| 大田县| 榕江县| 卢湾区| 花莲县| 阳原县| 温宿县| 阆中市| 基隆市| 泾阳县| 南皮县| 灯塔市| 宜兰市| 长岛县| 朝阳县| 合肥市| 鲁山县| 济宁市| 钟祥市| 莱西市| 深州市|