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

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