uni-app 安卓手机判断是否开启相机相册权限

// 安卓相机权限

androidCameraPermiss(index){

plus.android.requestPermissions(['android.permission.CAMERA'],(e) => {

if (e.deniedAlways.length > 0) {

this.androidAuthCamera = false

// 弹出提示框解释为何需要权限,引导用户打开设置页面开启

uni.showModal({

title: '提示',

content: '请打开手机相机相册功能(点击确定后在权限中授权相机相册功能)',

// showCancel: false, // 不显示取消按钮

success(res) {

if (res.confirm) {

var Intent = plus.android.importClass("android.content.Intent");

var Settings = plus.android.importClass(

"android.provider.Settings");

var Uri = plus.android.importClass("android.net.Uri");

var mainActivity = plus.android.runtimeMainActivity();

var intent = new Intent();

intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);

var uri = Uri.fromParts("package", mainActivity.getPackageName(),

null);

intent.setData(uri);

mainActivity.startActivity(intent);

}

}

});

} else if (e.deniedPresent.length > 0) { //权限被临时拒绝

this.androidAuthCamera = false

// 弹出提示框解释为何需要权限,可再次调用plus.android.requestPermissions申请权限

uni.showModal({

title: '提示',

content: '请打开手机相机功能(点击确定后在权限中授权相机功能)',

// showCancel: false, // 不显示取消按钮

success(res) {

if (res.confirm) {

var Intent = plus.android.importClass("android.content.Intent");

var Settings = plus.android.importClass(

"android.provider.Settings");

var Uri = plus.android.importClass("android.net.Uri");

var mainActivity = plus.android.runtimeMainActivity();

var intent = new Intent();

intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);

var uri = Uri.fromParts("package", mainActivity.getPackageName(),

null);

intent.setData(uri);

mainActivity.startActivity(intent);

}

}

});

} else {

plus.android.requestPermissions(['android.permission.READ_EXTERNAL_STORAGE'], (e) => {

if (e.deniedAlways.length > 0) { //权限被永久拒绝

// 弹出提示框解释为何需要权限,引导用户打开设置页面开启

uni.showModal({

title: '提示',

content: '请打开相册存储功能(点击确定后在权限中授权相册存储功能)',

// showCancel: false, // 不显示取消按钮

success(res) {

if (res.confirm) {

var Intent = plus.android.importClass(

"android.content.Intent");

var Settings = plus.android.importClass(

"android.provider.Settings");

var Uri = plus.android.importClass("android.net.Uri");

var mainActivity = plus.android.runtimeMainActivity();

var intent = new Intent();

intent.setAction(Settings

.ACTION_APPLICATION_DETAILS_SETTINGS);

var uri = Uri.fromParts("package", mainActivity

.getPackageName(),

null);

intent.setData(uri);

mainActivity.startActivity(intent);

}

}

});

} else if (e.deniedPresent.length > 0) { //权限被临时拒绝

this.androidAuthCamera = false

// 弹出提示框解释为何需要权限,可再次调用plus.android.requestPermissions申请权限

uni.showModal({

title: '提示',

content: '请打开相册存储功能(点击确定后在权限中授权相册存储功能)',

// showCancel: false, // 不显示取消按钮

success(res) {

if (res.confirm) {

var Intent = plus.android.importClass(

"android.content.Intent");

var Settings = plus.android.importClass(

"android.provider.Settings");

var Uri = plus.android.importClass("android.net.Uri");

var mainActivity = plus.android.runtimeMainActivity();

var intent = new Intent();

intent.setAction(Settings

.ACTION_APPLICATION_DETAILS_SETTINGS);

var uri = Uri.fromParts("package", mainActivity

.getPackageName(),

null);

intent.setData(uri);

mainActivity.startActivity(intent);

}

}

});

} else {

this.androidAuthCamera = true

// 选择照片 uni.chooseImage()

this.chooseImage(index)

}

})

}

})

},

相关推荐
Jiaberrr2 小时前
uniapp 安卓 APP 后台持续运行(保活)的尝试办法
android·前端·javascript·uni-app·app·保活
不老刘2 小时前
uniapp+vue3实现CK通信协议(基于jjc-tcpTools)
前端·javascript·uni-app
疯狂的沙粒4 小时前
uni-app 如何实现选择和上传非图像、视频文件?
前端·javascript·uni-app
^Rocky4 小时前
uniapp 集成腾讯云 IM 富媒体消息(地理位置/文件)
uni-app·腾讯云·媒体
$程4 小时前
Uniapp 二维码生成与解析完整教程
前端·uni-app
tryCbest4 小时前
UniApp系列
uni-app·web
iOS阿玮6 小时前
社交的本质是价值交换,请不要浪费别人的时间。
uni-app·app·apple
monika_yu6 小时前
uniapp 开发ios, xcode 提交app store connect 和 testflight内测
uni-app
大阳光男孩8 小时前
Vue3 + UniApp 蓝牙连接与数据发送(稳定版)
uni-app
八月林城1 天前
echarts在uniapp中使用安卓真机运行时无法显示的问题
android·uni-app·echarts