1 下载插件App权限判断和提示 使用步骤很清楚
重复弹窗的页面
<script>
import permision from "@/js_sdk/wa-permission/permission.js"
onLoad: {
//检测使用设备
// #ifdef APP-PLUS
let platform = uni.getSystemInfoSync().platform
if (platform == 'ios') {
//调起定位的函数 ,就是因为这个函数使用了uni.getLocation API 所以会弹出两次权限
this.onGetArea()
}
if (platform == 'android') {
//"android.permission.ACCESS_FINE_LOCATION"是定位的权限id ,之前忘传 一直走的-1,被永久拒绝权限
this.requestAndroidPermission('android.permission.ACCESS_FINE_LOCATION')
//这个是插件内的另一种获得判断的方法 没有测试正确性
// let openAddress = permision.checkSystemEnableLocation()
// if (openAddress) {
// this.onGetArea()
// }
}
// #endif
},
methods: {
//检测授权情况 处理对应业务逻辑 ,
async requestAndroidPermission(permisionID) {
const result = await permision.requestAndroidPermission(permisionID)
if (result == 1) {
this.onGetArea()
console.log('已授权,可以调起')
} else if (result == 0) {
console.log('未获得授权,询问; 根据业务逻辑看是否需要提醒用户去设置开启权限')
} else {
console.log('被永久拒绝权限; 根据业务逻辑看是否需要提醒用户去设置开启权限')
}
// uni.setStorageSync('strStatus')
},
}
<script>
总结: 这个插件可以检测用户是否授权某种权限 只需要传入权限id 好用