| 权限组 | Manifest 权限名(dangerous) | 用途 |
|---|---|---|
| 相机 CAMERA | android.permission.CAMERA | 访问摄像头进行拍照、录像 |
| 存储 STORAGE | android.permission.READ_EXTERNAL_STORAGE android.permission.WRITE_EXTERNAL_STORAGE |
读写外部存储设备中的文件 |
| 定位 LOCATION | android.permission.ACCESS_FINE_LOCATION android.permission.ACCESS_COARSE_LOCATION |
获取精确定位 / 粗略位置 |
| 通讯录 CONTACTS | android.permission.READ_CONTACTS android.permission.WRITE_CONTACTS android.permission.GET_ACCOUNTS |
读写联系人、获取账户信息 |
| 电话 PHONE | android.permission.READ_PHONE_STATE android.permission.CALL_PHONE android.permission.READ_CALL_LOG android.permission.WRITE_CALL_LOG |
读取设备状态、拨打电话、读写通话记录 |
| 短信 SMS | android.permission.SEND_SMS android.permission.RECEIVE_SMS android.permission.READ_SMS |
发送、接收与读取短信 |
| 日历 CALENDAR | android.permission.READ_CALENDAR android.permission.WRITE_CALENDAR |
读写系统日历事件 |
| 麦克风 MICROPHONE | android.permission.RECORD_AUDIO | 录制音频,获取麦克风输入 |
| 身体传感器 BODY_SENSORS | android.permission.BODY_SENSORS | 访问心率计等身体传感器数据 |
| 活动记录 ACTIVITY_RECOGNITION | android.permission.ACTIVITY_RECOGNITION | 识别用户运动状态(走路、跑步等) |
| 状态 | 说明 |
|---|---|
| 声明 | 在 AndroidManifest.xml 中使用 <uses-permission android:name="..." /> 声明所需权限 |
| 正常权限 | 安装时自动授予,无需用户手动确认,如 INTERNET、NETWORK_STATE |
| 危险权限 | 涉及用户隐私与安全,安装时不会自动授予,需在运行时向用户动态申请 |
| 特殊权限 | 需在系统设置中进一步授权,如 SYSTEM_ALERT_WINDOW(悬浮窗)、MANAGE_EXTERNAL_STORAGE |
Android 权限分为普通权限、危险权限与特殊权限。危险权限会触及用户隐私,如相机、存储、定位、通讯录、电话、短信等,必须在 AndroidManifest.xml 中声明。
▪ 声明危险权限仅代表应用具备申请资格,系统在安装时不会自动授予;应用必须通过 ActivityCompat.requestPermissions 等方法在运行时向用户发起授权。
▪ 权限组(permission group)是对权限的逻辑分组,但授予和拒绝对话展示以具体权限为准,且同一组内权限可能分属不同隐私范畴,需逐一处理。
▪ 开发中还应对应处理用户拒绝、拒绝且不再询问等情况,并遵循最小权限原则,仅申请实现功能所必需的权限,以提升用户信任与应用审核通过率。