怎样需要在申请打开可收集个人信息的相册、摄像头权限时,同步告知用户其目的。
现在工信局管控越来越严
该问题请在专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。
在 uniapp 中实现获取照片、摄像头及录音权限时弹窗告知目的,需结合权限监听与合规提示。根据工信部要求及华为等应用商店审核规则,推荐以下方案:
使用官方插件:
安装 uni-registerRequestPermissionTips 插件。该插件在原生层处理权限申请提示,自动弹窗说明目的(如“需访问相册用于上传头像”),避免前端弹窗层级过低问题。
manifest.json 的 app-plus -> distribute -> android 节点下添加 permissionTips 字段,指定各权限的提示文案(如 "CAMERA": "用于拍摄头像")。 手动监听权限申请(备用方案):
在 app.uvue 中使用 uni.createRequestPermissionListener 监听权限事件。当检测到 CAMERA(摄像头)、READ_EXTERNAL_STORAGE(相册)或 RECORD_AUDIO(录音)权限申请时,通过 uni.showModal 弹窗说明目的,再调用权限申请 API。
const listener = uni.createRequestPermissionListener({
onConfirm: (permissions) => {
if (permissions.includes('CAMERA') || permissions.includes('READ_EXTERNAL_STORAGE')) {
uni.showModal({
content: '需访问相册/摄像头用于上传图片,请授权',
success: (res) => res.confirm && uni.authorize({ scope: 'scope.camera' })
});
}
}
});
关键点:
info.plist 中配置 NSPhotoLibraryUsageDescription 等字段说明用途。 RECORD_AUDIO 监听。 插件市场已验证方案,适配最新版 HBuilderX 4.87。务必在调用
uni.chooseImage/uni.chooseVideo前确保用户知情同意,避免审核驳回。
c***@sina.cn (作者) - 互享
https://www.cac.gov.cn/2019-12/27/c_1578986455686625.htm App违法违规收集使用个人信息行为认定方法
wap2app 不好弄