1 下載插件App權(quán)限判斷和提示 使用步驟很清楚
重復(fù)彈窗的頁(yè)面
<script>
import permision from "@/js_sdk/wa-permission/permission.js"
onLoad: {
//檢測(cè)使用設(shè)備
// #ifdef APP-PLUS
let platform = uni.getSystemInfoSync().platform
if (platform == 'ios') {
//調(diào)起定位的函數(shù) ,就是因?yàn)檫@個(gè)函數(shù)使用了uni.getLocation API 所以會(huì)彈出兩次權(quán)限
this.onGetArea()
}
if (platform == 'android') {
//"android.permission.ACCESS_FINE_LOCATION"是定位的權(quán)限id ,之前忘傳 一直走的-1,被永久拒絕權(quán)限
this.requestAndroidPermission('android.permission.ACCESS_FINE_LOCATION')
//這個(gè)是插件內(nèi)的另一種獲得判斷的方法 沒有測(cè)試正確性
// let openAddress = permision.checkSystemEnableLocation()
// if (openAddress) {
// this.onGetArea()
// }
}
// #endif
},
methods: {
//檢測(cè)授權(quán)情況 處理對(duì)應(yīng)業(yè)務(wù)邏輯 ,
async requestAndroidPermission(permisionID) {
const result = await permision.requestAndroidPermission(permisionID)
if (result == 1) {
this.onGetArea()
console.log('已授權(quán),可以調(diào)起')
} else if (result == 0) {
console.log('未獲得授權(quán),詢問; 根據(jù)業(yè)務(wù)邏輯看是否需要提醒用戶去設(shè)置開啟權(quán)限')
} else {
console.log('被永久拒絕權(quán)限; 根據(jù)業(yè)務(wù)邏輯看是否需要提醒用戶去設(shè)置開啟權(quán)限')
}
// uni.setStorageSync('strStatus')
},
}
<script>
總結(jié): 這個(gè)插件可以檢測(cè)用戶是否授權(quán)某種權(quán)限 只需要傳入權(quán)限id 好用