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)

}

})

}

})

},

相关推荐
AI多Agent协作实战派4 小时前
AI多Agent协作系统实战(二十三):Agent读HEARTBEAT.md不读AGENTS.md——openclaw的文件加载之谜
前端·数据库·人工智能·uni-app
m0_547486668 小时前
《Vue.js + uni-app全栈开发从入门到实践 》全套PPT课件2026版
vue.js·uni-app
三声三视1 天前
uni-app 鸿蒙端传参变成 [object Object]?顺着源码追到 ArkTS router 底层才搞明白
人工智能·ai·uni-app·aigc·ai编程·harmonyos
小徐_23331 天前
Open Wot 1.0.5 发布:让 AI 接入 wot-ui,只需要两条命令
前端·uni-app·ai编程
AI多Agent协作实战派1 天前
AI多Agent协作系统实战(二十二):从6列到12列——任务监控报告的进化之路
java·人工智能·uni-app·bug
小杨小杨、努力变强!2 天前
VS Code运行HBuilder X中的uni-app项目
vscode·uni-app·uni-app run
码兄科技2 天前
实战:基于Spring Boot + UniApp的地理信息小程序开发
spring boot·后端·uni-app
2501_916007472 天前
iOS和macOS应用程序性能分析和优化工具使用综合指南
android·macos·ios·小程序·uni-app·iphone·webview
2501_916007473 天前
深入理解HTTPS对称与非对称加密机制及Charles抓包实践
网络协议·http·ios·小程序·https·uni-app·iphone
小徐_23333 天前
AI 写 wot-ui 总在猜 API?我们把 Skills、MCP 和 CLI 都配好了
前端·uni-app·ai编程