安卓開發問題:安卓Ble出現動態鑒權失敗以及掃描設備一直進入不了回調函數的問題

問題1描述

1、安卓12需要動態鑒權

// 鑒權函數           
requestPermissions(permissionsList.toArray(strings), MyConstants.REQUEST_CODE_PERMISSIONS);

但是在鑒權回調函數中如Manifest.permission.BLUETOOTH_SCANManifest.permission.BLUETOOTH_CONNECT一直顯示失敗,即如下鑒權回調中,grantResults返回的值是-1

@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) 

問題1原因分析

因為Manifest.permission.BLUETOOTH_SCANManifest.permission.BLUETOOTH_CONNECT是在安卓12版本的系統及以上才有的,而以下版本是沒有的,如果在安卓12版本以下去動態鑒權這些權限,那肯定是會失敗

問題1部分解決方案

參看其他博客解決方案就是分開鑒權。但是存在搜索設備失敗問題,即問題2

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
//這里是安卓12的權限permissions.add(Manifest.permission.BLUETOOTH_SCAN);permissions.add(Manifest.permission.BLUETOOTH_ADVERTISE);permissions.add(Manifest.permission.BLUETOOTH_CONNECT);}else{//這是其他的permissions.add(Manifest.permission.ACCESS_COARSE_LOCATION);permissions.add(Manifest.permission.ACCESS_FINE_LOCATION);}

問題2解決

對于安卓12也需要添加定位相關權限,而其他不需要添加安卓12要求的權限

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
//這里是安卓12的權限permissions.add(Manifest.permission.BLUETOOTH_SCAN);permissions.add(Manifest.permission.BLUETOOTH_ADVERTISE);permissions.add(Manifest.permission.BLUETOOTH_CONNECT);}permissions.add(Manifest.permission.ACCESS_COARSE_LOCATION);permissions.add(Manifest.permission.ACCESS_FINE_LOCATION);

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/11314.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/11314.shtml
英文地址,請注明出處:http://en.pswp.cn/web/11314.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

力扣HOT100 - 70. 爬樓梯

解題思路&#xff1a; 動態規劃 注意 if 判斷和 for 循環 class Solution {public int climbStairs(int n) {if (n < 2) return n;int[] dp new int[n 1];dp[1] 1;dp[2] 2;for (int i 3; i < n; i) {dp[i] dp[i - 1] dp[i - 2];}return dp[n];} }

設計模式-10 - Memento Design Pattern

設計模式-10 - Memento Design Pattern 1.定義 備忘錄模式是一種設計模式&#xff0c;它允許在不破壞封裝性的情況下捕獲和恢復對象的內部狀態。 其結構&#xff1a; Originator&#xff1a;創建和管理備忘錄的對象。 Memento&#xff1a;存儲 Originator 狀態的備忘錄對象…

品牌設計理念和logo設計方法

一 品牌設計的目的 設計是為了傳播&#xff0c;讓傳播速度更快&#xff0c;傳播效率更高&#xff0c;減少宣傳成本 二 什么是好的品牌設計 好的設計是為了讓消費者更容易看懂、記住的設計&#xff0c; 從而輔助傳播&#xff0c; 即 看得懂、記得住。 1 看得懂 就是讓別人看懂…

樹莓派|采集視頻并實時顯示畫面

1、使用SSH遠程連接到樹莓派 2、新建存放代碼的目錄 mkdir /home/pi/my_code_directory 3、進入存放代碼的目錄 cd /home/pi/my_code_directory 4、新建py文件 nano cv2test.py 5、輸入代碼 import cv2# 打開攝像頭 cap cv2.VideoCapture(0)while True:# 讀取視頻幀ret…

BGP學習二:BGP通告原則,BGP反射器,BGP路徑屬性細致講解,新手小白無負擔

目錄 一.AS號 二.BGP路由生成 1.network 2.import-route引入 三.BGP通告原則 1.只發布最優且有效的路由 2.從EBGP獲取的路由&#xff0c;會發布給所有對等體 3.水平分割原則 4.IBGP學習BGP默認不發送給EBGP&#xff0c;但如果也從IGP學習到了這條路由&#xff0c;就發…

mysql 幻讀,臟讀和不可重復讀

MySQL的臟讀、幻讀和不可重復讀是數據庫事務處理中的三種常見問題&#xff0c;它們都涉及到數據的一致性和并發性。一&#xff0c;臟讀 臟讀是指一個事務讀取了另一個事務未提交的數據。這可能導致數據不一致的問題。 例如&#xff1a; 用戶user1的初始balance是100&#xff0…

java項目之智慧圖書管理系統設計與實現(springboot+vue+mysql)

風定落花生&#xff0c;歌聲逐流水&#xff0c;大家好我是風歌&#xff0c;混跡在java圈的辛苦碼農。今天要和大家聊的是一款基于springboot的智慧圖書管理系統設計與實現。項目源碼以及部署相關請聯系風歌&#xff0c;文末附上聯系信息 。 項目簡介&#xff1a; 智慧圖書管理…

SOCKET編程(5):IO復用

IO復用 多進程/線程并發模型&#xff0c;為每個sockets分配一個進程/線程 I/O&#xff08;多路&#xff09;復用&#xff0c;采用單個進/線程就可以管理多個socket I/O復用有3種方案&#xff1a; selectpollepoll select I/O多路復用詳解 27、fd_set與FD_SETSIZE詳解 詳解…

新聞資訊微信小程序開發后端+php【附源碼,文檔說明】

博主介紹&#xff1a;?IT徐師兄、7年大廠程序員經歷。全網粉絲15W、csdn博客專家、掘金/華為云//InfoQ等平臺優質作者、專注于Java技術領域和畢業項目實戰? &#x1f345;文末獲取源碼聯系&#x1f345; &#x1f447;&#x1f3fb; 精彩專欄推薦訂閱&#x1f447;&#x1f3…

管理科學SCI、SSCI雙檢索,自引率低,無預警風險,對國人相當友好!

一、期刊名稱 Journal of Organizational and End User Computing 二、期刊簡介概況 期刊類型&#xff1a;SSCI 學科領域&#xff1a;管理學 影響因子&#xff1a;6.5 中科院分區&#xff1a;2區 出版方式&#xff1a;開放出版 版面費&#xff1a;$3300 三、期刊征稿范圍…

探秘錢塘高中,筑夢未來之旅————杭州市錢塘高級中學

晨曦微露&#xff0c;書生瑯瑯&#xff0c;古韻今風交織在這方學府&#xff0c;滔滔的錢塘江畔&#xff0c;杭州市錢塘高級中學屹立于此。這所學校自1958年建校伊始&#xff0c;走過幾十年的光輝歲月&#xff0c;一直致力于提供優質的教育資源。 近年來&#xff0c;學校獲得多項…

Learning C# Programming with Unity 3D

作者&#xff1a;Alex Okita 源碼地址&#xff1a;GitHub - badkangaroo/UnityProjects: A repo for all of the projects found in the book. 全書 686 頁。

Java常見數據結構---八大結構

前言&#xff1a; 數據結構是計算機底層存儲、組織數據的方式。是指數據相互之間是以什么方式排列在一起的。 通常情況下&#xff0c;精心選擇的數據結構可以帶來更高的運行或者存儲效率 常見的八大數據結構&#xff1a; 棧&#xff1a; 思想&#xff1a; 棧是一種數據結構&…

大數據項目中的拉鏈表(hadoop,hive)

緩慢漸變維 拉鏈表 拉鏈表&#xff0c;可實現數據快照&#xff0c;可以將歷史和最新數據保存在一起 如何實現: 在原始數據增加兩個新字段 起始時間&#xff08;有效時間&#xff1a;什么時候導入的數據的時間&#xff09;&#xff0c;結束時間&#xff08;默認的結束時間為99…

運籌系列92:vrp算法包VROOM

1. 介紹 VROOM is an open-source optimization engine written in C20 that aim at providing good solutions to various real-life vehicle routing problems (VRP) within a small computing time. 可以解決如下問題&#xff1a; TSP (travelling salesman problem) CVRP …

九、 個人信息出境標準合同的簽署及備案流程是怎樣的?

為指導和幫助個人信息處理者規范有序備案個人信息出境標準合同&#xff0c;國家網信辦結合此前備案實踐經驗發布了《標準合同備案指南&#xff08;第二版&#xff09;》&#xff0c;并就個人信息出境標準合同備案的適用范圍、備案方式、備案流程和材料以及咨詢、舉報聯系方式等…

F5 BIG-IP Next Central Manager SQL注入漏洞(CVE-2024-26026、CVE-2024-21793)

0x01 產品簡介 BIG-IP Next Central Manager是BIG-IP Next的原生默認用戶界面,它可跨平臺管理BIG-IP Next實例。BIG-IP Next是F5 Networks公司推出的一款下一代BIG-IP軟件,提供了多云應用安全和應用交付服務。 0x02 漏洞概述 CVE-2024-26026:BIG-IP Next Central Manager…

產品推薦 | 基于AMD Virtex 7 FPGA VC709 的高速連接功能開發板

01 產品概述 Virtex? 7 FPGA VC709 連接功能套件是一款速率為 40Gb/s 的高速平臺&#xff0c;您可以通過評估和開發連接功能&#xff0c;迅速為包含所有必要軟硬件和 IP 核的高帶寬和高性能應用提供強大的支持。它包括一個含有 PCI Express Gen 3、Northwest Logic 公司推出的…

4.1 文本相似度(二)

目錄 1 文本相似度評估 2 代碼 2.1 load_dataset 方法 2.2 AutoTokenizer、AutoModelForSequenceClassification 1 文本相似度評估 對兩個文本拼接起來&#xff0c;然后作為一個樣本喂給模型&#xff0c;作為一個二分類的任務&#xff1b; 數據處理的方式以及訓練的基本流程…

c 指針基礎

/* 指針練習*/ #include <stdio.h> #include <stdlib.h> void printAll(int n1, int n2, int *p1, int *p2); int main(){ //賦值操作語法演示 int num1 1111; int num2 2222; int *prt1 &num1; int *prt2 &num2; printAll(num1, num2, prt1…