uniapp 之APP各类权限

验证相机权限,安卓亲测有效

 

plus.android.requestPermissions(['android.permission.CAMERA'], function(e){  
                if(e.deniedAlways.length>0){    //权限被永久拒绝  
                    // 弹出提示框解释为何需要权限,引导用户打开设置页面开启  
                    console.log('权限被永久拒绝'+e.deniedAlways.toString());  
                }  
                if(e.deniedPresent.length>0){   //权限被临时拒绝  
                    // 弹出提示框解释为何需要权限,可再次调用plus.android.requestPermissions申请权限  
                    console.log('权限被临时拒绝'+e.deniedPresent.toString());  
                }  
                if(e.granted.length>0){ //权限被允许  
                    console.log('权限被允许'+e.granted.toString());  
                }  
            }, function(e){  
                     console.log('Request Permissions error:'+JSON.stringify(e));  
            }); 

 

打开位置设置界面,安卓亲测有效

    uni.showModal({
        title: '提示',
        content: '请打开定位服务',
        success: ({
            confirm,
            cancel
        }) => {

            if (confirm) {
                // android平台
                if (uni.getSystemInfoSync().platform == 'android') {
                    var Intent = plus.android.importClass('android.content.Intent');
                    var Settings = plus.android.importClass('android.provider.Settings');
                    var intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
                    var main = plus.android.runtimeMainActivity();
                    main.startActivity(intent); // 打开系统设置GPS服务页面
                }

                // ios平台
                if (uni.getSystemInfoSync().platform == 'ios') {
                    var UIApplication = plus.ios.import("UIApplication");
                    var application2 = UIApplication.sharedApplication();
                    var NSURL2 = plus.ios.import("NSURL");
                    var setting2 = NSURL2.URLWithString("App-Prefs:root=Privacy&path=LOCATION");
                    application2.openURL(setting2);
                    plus.ios.deleteObject(setting2);
                    plus.ios.deleteObject(NSURL2);
                    plus.ios.deleteObject(application2);
                }
            }

            // 用户取消前往开启定位服务
            if (cancel) {
                // do sth...
            }
        }
    });

 

参考链接:

  安卓permission列表:https://blog.csdn.net/s13383754499/article/details/84281151

  安卓跳转系统设置各界面:https://www.cnblogs.com/rchao/p/13666560.html

  ios跳转个系统界面:https://www.cnblogs.com/lurenq/p/6189580.html (待验证)

  定位权限:https://www.eoway.cn/article/1599470532.html

  通知权限:https://www.cnblogs.com/Stalker24/p/12510672.html

  安卓权限列表:https://www.cnblogs.com/chenjianbao/p/13589100.html

  plus各模块:https://ask.dcloud.net.cn/article/121

  验证安卓的权限情况,亲测有效:https://ask.dcloud.net.cn/article/38467

  uniapp参考插件:https://ext.dcloud.net.cn/plugin?id=594

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章