关于权限组

1,979 阅读1分钟

权限分类 以下是危险权限,必须动态管理的(其他未列出的权限时属于正常权限,用户无法取消授权)

group:android.permission-group.CONTACTS
  permission:android.permission.WRITE_CONTACTS
  permission:android.permission.GET_ACCOUNTS
  permission:android.permission.READ_CONTACTS

group:android.permission-group.PHONE
  permission:android.permission.READ_CALL_LOG
  permission:android.permission.READ_PHONE_STATE
  permission:android.permission.CALL_PHONE
  permission:android.permission.WRITE_CALL_LOG
  permission:android.permission.USE_SIP
  permission:android.permission.PROCESS_OUTGOING_CALLS
  permission:com.android.voicemail.permission.ADD_VOICEMAIL

group:android.permission-group.CALENDAR
  permission:android.permission.READ_CALENDAR
  permission:android.permission.WRITE_CALENDAR

group:android.permission-group.CAMERA
  permission:android.permission.CAMERA

group:android.permission-group.SENSORS
  permission:android.permission.BODY_SENSORS

group:android.permission-group.LOCATION
  permission:android.permission.ACCESS_FINE_LOCATION
  permission:android.permission.ACCESS_COARSE_LOCATION

group:android.permission-group.STORAGE
  permission:android.permission.READ_EXTERNAL_STORAGE
  permission:android.permission.WRITE_EXTERNAL_STORAGE

group:android.permission-group.MICROPHONE
  permission:android.permission.RECORD_AUDIO

group:android.permission-group.SMS
  permission:android.permission.READ_SMS
  permission:android.permission.RECEIVE_WAP_PUSH
  permission:android.permission.RECEIVE_MMS
  permission:android.permission.RECEIVE_SMS
  permission:android.permission.SEND_SMS
  permission:android.permission.READ_CELL_BROADCASTS

同一个Group中,只要有一个Permission被授权,就认为该Group内的其他Permission也被授权。

申请 permission:android.permission.GET_ACCOUNTS,即获取通讯录权限;

<!-- Allows access to the list of accounts in the Accounts Service.
1594
1595    <p class="note"><strong>Note:</strong> Beginning with Android 6.0 (API level
1596    23), if an app shares the signature of the authenticator that manages an
1597    account, it does not need <code>"GET_ACCOUNTS"</code> permission to read
1598    information about that account. On Android 5.1 and lower, all apps need
1599    <code>"GET_ACCOUNTS"</code> permission to read information about any
1600    account.</p>
1601
1602    <p>Protection level: dangerous
1603    -->
1604    <permission android:name="android.permission.GET_ACCOUNTS"
1605        android:permissionGroup="android.permission-group.CONTACTS"
1606        android:protectionLevel="dangerous"
1607        android:description="@string/permdesc_getAccounts"
1608        android:label="@string/permlab_getAccounts" />
1609    <uses-permission android:name="android.permission.GET_ACCOUNTS"/>

androidxref.com/9.0.0_r3/xr…