用户知道为什么要相机;即使拒绝,也能用相册里的照片完成打卡,之后还能去设置打开。
手机 App · 开发与测试
设备权限Device Permissions
相机、定位、相册这类权限要在用到的那一刻申请,并在系统弹窗里写清用途。系统弹窗基本只有一次机会,被拒后主流程要有替代路径和「去设置」入口。
在手机上走一遍拍照打卡
点手机里的「拍照打卡」,在系统弹窗里选「不允许」,再点一次。然后关掉「被拒后提供退路」或把用途说明改成空着,对照差别。
知识点:问的时机、写的理由、被拒的退路
手机上已经演过,这里只给命名。
- 用到时再问:在用户点「拍照」的那一刻申请,先用一屏说明用途,同意率更高。
- 用途说明:写在配置里、显示在系统弹窗上;iOS 缺了会闪退,写得含糊审核可能驳回。
- 系统弹窗基本只有一次机会:iOS 记住选择后不再弹出,只能由用户去设置里改;安卓 11 起同一权限拒绝两次也不再弹,官方建议直接降级,不要反复劝用户去设置。
- 被拒是正常分支:主流程要有替代路径,比如从相册选图、手动输入地址。
- 国内合规:工信部要求在对应功能启动时才申请、并同步告知目的;用户同意隐私政策前不收集信息,被拒后不能频繁弹窗索要。
什么时候用、怎么用
AI 写的代码里一旦出现相机、定位、相册、通讯录、麦克风,就按这张卡验收。
- 信号:App 一启动就弹多个权限;弹窗文字是英文默认值或只写「需要访问」。
- 要求 AI:列出 App 申请的全部权限、各自在哪一步申请、用途说明原文、被拒后的替代路径。
- 照片尽量用系统照片选择器:iOS 和安卓的照片选择器都只交出用户选中的那几张,不用申请相册权限。
- 验收:在真机上把每个权限都拒绝一遍,主流程仍能完成;去设置打开后能恢复。
正反例:同一个拍照打卡
功能一样,差别只在申请时机和被拒后的处理。
用户还没看到功能就被连续索取权限,顺手全拒;之后打卡页一直转圈,国内检测还会判违规。
快速自测
用户拒绝了定位权限,过几天又点「附近跑友」。App 应该怎么做?
继续查证
术语的技术定义和行为以这些一手或权威资料为准。
下一步学
和本知识点经常一起出现的概念。