国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

《Android學(xué)習(xí)筆記》Android12藍(lán)牙掃描不到設(shè)備的權(quán)限問(wèn)題

這篇具有很好參考價(jià)值的文章主要介紹了《Android學(xué)習(xí)筆記》Android12藍(lán)牙掃描不到設(shè)備的權(quán)限問(wèn)題。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

Android12 關(guān)于藍(lán)牙這部分新增了BLUETOOTH_SCAN、BLUETOOTH_ADVERTISEBLUETOOTH_CONNECT 權(quán)限,這些權(quán)限都屬于敏感權(quán)限,都需要在代碼中動(dòng)態(tài)申請(qǐng)。移除了Android11 及以下版本中必須申請(qǐng)的位置權(quán)限[FINE_LOCATION] 和 [COARES_LOCATION]。

權(quán)限的申請(qǐng)

1、在Manifest.xml清單文件中添加對(duì)應(yīng)的權(quán)限。

	<uses-permission android:name="android.permission.BLUETOOTH"
					android:maxSdkVersion="30" />
	<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"
					android:maxSdkVersion="30" />

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

	<uses-permission android:name="android.permission.BLUETOOTH_SCAN" />
	<uses-permission android:name="android.permission.BLUETOOTH_ADVERTISE" />
	<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />

其中 Android12 也提供了自主選擇是否需要推導(dǎo)位置的操作,就是在 BLUETOOTH_SCAN 權(quán)限后加上android:usesPermissionFlags="neverForLocation"屬性表示不推導(dǎo)位置權(quán)限。

2、在java代碼中動(dòng)態(tài)申請(qǐng)權(quán)限

private List<String> mPermissionList = new ArrayList<>();

// 動(dòng)態(tài)申請(qǐng)權(quán)限
private void initPermission(){
	if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.S){
		// Android 版本大于等于 Android12 時(shí)
		// 只包括藍(lán)牙這部分的權(quán)限,其余的需要什么權(quán)限自己添加
		mPermissionList.add(Manifest.permission.BLUETOOTH_SCAN);
		mPermissionList.add(Manifest.permission.BLUETOOTH_ADVERTISE);
		mPermissionList.add(Manifest.permission.BLUETOOTH_CONNECT);
	} else {
		// Android 版本小于 Android12 及以下版本
		mPermissionList.add(Manifest.permission.ACCESS_COARSE_LOCATION);
		mPermissionList.add(Manifest.permission.ACCESS_FINE_LOCATION);
	}

	if(mPermissionList.size > 0){
		ActivityCompat.requestPermissions(this,mPermissionList.toArray(new String[0]),1001);
	}
}


@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions,
									   int[] grantResults){
	super.onRequestPermissionsResult(requestCode, permissions, grantResults);
	// 有權(quán)限沒(méi)有通過(guò)
	boolean hasPermissionDismiss = false;
	if(1001 == requestCode){
		for(int i = 0; i < grantResults.length; i++){
			if(grantResults[i] == -1){
				hasPermissionDismiss = true;
				break;
			}
		}
	}
	if(hasPermissionDismiss){
		// 有權(quán)限未通過(guò)的處理
		...
	} else {
		//權(quán)限全部通過(guò)的處理
		...
	}
}

這樣就能解決在 Android12 及以上版本搜索不到設(shè)備的情況。
如果還是有不懂的地方可以參考官方文檔文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-617234.html

到了這里,關(guān)于《Android學(xué)習(xí)筆記》Android12藍(lán)牙掃描不到設(shè)備的權(quán)限問(wèn)題的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 中柏 EZpad 8 Windows 平板電腦 |驅(qū)動(dòng)備份|系統(tǒng)優(yōu)化|不能調(diào)節(jié)顯示器亮度|進(jìn)入Bios/uefi 快捷鍵 |藍(lán)牙掃描不到設(shè)備|CPU占用過(guò)高解決方案

    中柏 EZpad 8 Windows 平板電腦 |驅(qū)動(dòng)備份|系統(tǒng)優(yōu)化|不能調(diào)節(jié)顯示器亮度|進(jìn)入Bios/uefi 快捷鍵 |藍(lán)牙掃描不到設(shè)備|CPU占用過(guò)高解決方案

    ? ? ? ? ? 之前一直使用的這個(gè)平板,但是有個(gè)很嚴(yán)重的問(wèn)題就是性能實(shí)在太差了,每次都是CPU百分百,Mem 百分之50% 這個(gè)結(jié)果真的很意外, 但是又無(wú)可奈何,后面花時(shí)間做了一些優(yōu)化包括 進(jìn)程限制? 啟動(dòng)優(yōu)化? 內(nèi)存頁(yè)面優(yōu)化? 但結(jié)果都不盡人意,一啟動(dòng)程序就卡頓 ..........? 中間又

    2024年02月09日
    瀏覽(25)
  • 【Bose30又連不上電腦藍(lán)牙/電腦搜索不到藍(lán)牙設(shè)備】

    【Bose30又連不上電腦藍(lán)牙/電腦搜索不到藍(lán)牙設(shè)備】

    ?關(guān)于筆記本搜索不到藍(lán)牙設(shè)備可以參考知乎網(wǎng)友: 筆記本藍(lán)牙無(wú)法搜索到設(shè)備(玄學(xué)辦法同樣適用于解決Wifi問(wèn)題) - 知乎 (zhihu.com) 最近Bose30又連不上電腦,網(wǎng)絡(luò)上找各種方法,最常用的方法就是: ????????在使用 Win10 連接耳機(jī)時(shí),需要先連接手機(jī),打開(kāi) Bose Connect (手機(jī)

    2024年02月06日
    瀏覽(17)
  • Mysql學(xué)習(xí)筆記(更新至4.12 權(quán)限管理和備份)

    Mysql學(xué)習(xí)筆記(更新至4.12 權(quán)限管理和備份)

    數(shù)據(jù)庫(kù)xxx語(yǔ)言 CRUD 增刪改查 DDL 定義 DML 操作 DQL 查詢 DCL 控制 操作數(shù)據(jù)庫(kù)操作數(shù)據(jù)庫(kù)中的表操作數(shù)據(jù)庫(kù)中表的數(shù)據(jù) mysql不區(qū)分大小寫 ??! 創(chuàng)建數(shù)據(jù)庫(kù) 刪除數(shù)據(jù)庫(kù) 使用數(shù)據(jù)庫(kù) 查詢數(shù)據(jù)庫(kù) 數(shù)字 unsigned: 無(wú)符號(hào)的整數(shù) 聲明了該列不能填充負(fù)數(shù) zerofill: 0填充的 不足位數(shù)

    2023年04月12日
    瀏覽(24)
  • Android Ble藍(lán)牙App(一)掃描

    Android Ble藍(lán)牙App(一)掃描

    ??關(guān)于低功耗的藍(lán)牙介紹我已經(jīng)做過(guò)很多了,只不過(guò)很多人不是奔著學(xué)習(xí)的目的去的,拿著源碼就去運(yùn)行,后面又發(fā)現(xiàn)連接設(shè)備后馬上斷開(kāi),然后不會(huì)自己看問(wèn)題,這個(gè)現(xiàn)象就是快餐式的,你不了解里面的知識(shí)內(nèi)容,自然就不知道是怎么回事,重復(fù)的問(wèn)題我回答了好多次了

    2024年02月08日
    瀏覽(27)
  • Android Ble藍(lán)牙App(七)掃描過(guò)濾

    Android Ble藍(lán)牙App(七)掃描過(guò)濾

    ??在上一篇文章中了解了MTU的相關(guān)知識(shí)以及對(duì)于設(shè)備操作信息的展示,本篇文章中將增加掃描設(shè)備的過(guò)濾功能讓你更方便的掃描想要找的低功耗藍(lán)牙設(shè)備。 Ble藍(lán)牙App(一)掃描 Ble藍(lán)牙App(二)連接與發(fā)現(xiàn)服務(wù) Ble藍(lán)牙App(三)特性和屬性 Ble藍(lán)牙App(四)UI優(yōu)化和描述符 Bl

    2024年02月09日
    瀏覽(25)
  • 保姆級(jí)微信小程序?qū)铀{(lán)牙設(shè)備教程。微信小程序發(fā)送不同藍(lán)牙指令(定時(shí)發(fā)送,斷開(kāi)重連,判斷是否有藍(lán)牙權(quán)限等)

    本文是一個(gè)完整的對(duì)接設(shè)備,發(fā)送不同指令監(jiān)聽(tīng)不同返回的完整示例,可根據(jù)實(shí)際項(xiàng)目按需更改。 注: app.showModal 為在app.js中封裝的showModal方法, then(()={}) 代表用戶點(diǎn)擊 confirm ,可用 wx.showModal 代替。 公用方法 請(qǐng)求設(shè)備列表 1. 判斷是否有藍(lán)牙權(quán)限 2. 初始化藍(lán)牙 wx.openBluet

    2024年03月20日
    瀏覽(38)
  • Android連接藍(lán)牙設(shè)備問(wèn)題(android.permission.BLUETOOTH)

    ????????近期遇到一個(gè)問(wèn)題,之前發(fā)布的APP連接藍(lán)牙都是正常的,現(xiàn)在有人反映連不上了。經(jīng)過(guò)測(cè)試發(fā)現(xiàn):android 12 和 harmonyOS 3.0.0 都會(huì)有這個(gè)問(wèn)題,而之前的版本就不會(huì)有這個(gè)。 ????????經(jīng)過(guò)網(wǎng)上一番查找,原來(lái)是因?yàn)樽罱麲oogle發(fā)布的Android 12,新引入了 BLUETOOTH_SCAN、

    2024年01月16日
    瀏覽(23)
  • 未知USB設(shè)備(設(shè)備描述符請(qǐng)求失敗)伴隨筆記本藍(lán)牙消失

    本人使用的筆記本電腦已經(jīng)兩次遇到這種情況了,第一次遇到的時(shí)候是因?yàn)榘l(fā)現(xiàn)電腦開(kāi)機(jī)之后藍(lán)牙消失了。第二次也是一樣的結(jié)果,當(dāng)然第二次有經(jīng)驗(yàn)了,很快就解決了。 首先呢,藍(lán)牙消失的同時(shí),設(shè)備管理器中會(huì)出黃色感嘆號(hào)未知USB設(shè)備并且看不到藍(lán)牙設(shè)備,如果跟我的情

    2024年02月09日
    瀏覽(97)
  • Android Ble藍(lán)牙App(六)請(qǐng)求MTU與顯示設(shè)備信息

    Android Ble藍(lán)牙App(六)請(qǐng)求MTU與顯示設(shè)備信息

    ??在上一篇文章中已經(jīng)了解了數(shù)據(jù)操作的方式,而數(shù)據(jù)交互的字節(jié)長(zhǎng)度取決于我們手機(jī)與藍(lán)牙設(shè)備的最大支持長(zhǎng)度。 Ble藍(lán)牙App(一)掃描 Ble藍(lán)牙App(二)連接與發(fā)現(xiàn)服務(wù) Ble藍(lán)牙App(三)特性和屬性 Ble藍(lán)牙App(四)UI優(yōu)化和描述符 Ble藍(lán)牙App(五)數(shù)據(jù)操作 Ble藍(lán)牙App(六)

    2024年02月04日
    瀏覽(24)
  • 關(guān)于Android Studio 找不到設(shè)備的情況

    關(guān)于Android Studio 找不到設(shè)備的情況

    本人小白 學(xué)習(xí)階段碰到這個(gè)問(wèn)題 想著可能有人跟我有一樣的問(wèn)題 所以記錄一下 有用的話可以點(diǎn)贊收藏 1、確保Android Studio下載了Google USB Driver (Android Studio右上角圖標(biāo)可以點(diǎn)進(jìn)去,也可以從Setting進(jìn)去) ?2、電腦打開(kāi)“設(shè)備管理器” 如圖 找到你的設(shè)備 3、點(diǎn)擊自己的設(shè)備右鍵

    2024年02月06日
    瀏覽(18)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包