列出所有已定义权限的经典答案是使用pm list permissions
命令。但是,在Android 5.1和Android 6.0的当前预览版中,该命令不会列出所有内容。
例如,在运行Android 5.1的Nexus 4上,我得到如下输出:
$ adb shell pm list permissions| fgrep WRITE_
permission:com.intsig.camscanner.WRITE_CAMSCANNER
permission:android.permission.WRITE_GSERVICES
permission:com.google.android.providers.gsf.permission.WRITE_GSERVICES
permission:com.android.voicemail.permission.READ_WRITE_ALL_VOICEMAIL
permission:com.android.launcher3.permission.WRITE_SETTINGS
permission:com.google.android.providers.settings.permission.WRITE_GSETTINGS
permission:com.android.chrome.permission.READ_WRITE_BOOKMARK_FOLDERS
WRITE_EXTERNAL_STORAGE
没有出现在那里。然而,自Android 1.6以来,这种许可已经存在。类似命令显示pm list permissions
缺少READ_EXTERNAL_STORAGE
,READ_CONTACTS
,WRITE_CONTACTS
,INTERNET
以及其他许多其他内容。
因此,如果pm list permissions
没有为我们提供设备上已定义权限的完整列表,是否有另一种方法来获取该数据?
理论上,可能有一种方法可以从PackageManager
获取它,但我没有看到getAllPermissions()
方法,getAllPermissionGroups()
会遗漏任何不在的权限基团。
我目前查询的原因是我想知道在Android 6.0上定义了哪些权限及其保护级别,我们还没有Android 6.0源代码AFAIK。有一些权限,例如CHANGE_WIFI_STATE
,BLUETOOTH
,BLUETOOTH_ADMIN
,NFC
以及历史上dangerous
的其他权限。它们仍然在Android SDK中,但它们未列在与新的Android 6.0运行时权限系统相关联的权限中。所以,我试图确定它们是否已被降级为normal
或其他什么。虽然我可以在逐个许可的基础上通过PackageManager
执行此操作,但我希望尝试为所有权限收集protectionLevel
值。
答案 0 :(得分:6)
要使用adb获取所有权限的列表,您需要添加<p>
标志。如果您查看source code,则会将-g
添加到组列表中。正如您所指出的,null
不包括未分组的权限。添加PackageManager#getAllPermissionGroups(int)
作为组名将获得这些未分组的权限。
通过添加null
作为权限组名称,我们可以使用null
获取所有权限。我在运行Android 6.0当前预览版的Nexus 9上运行了以下代码。
PackageManager
public static void printPermissionInfo(Context context) throws Exception {
PackageManager pm = context.getPackageManager();
List<PermissionGroupInfo> groupList = pm.getAllPermissionGroups(0);
groupList.add(null); // ungrouped permissions
Method protectionToString = PermissionInfo.class.getDeclaredMethod("protectionToString",
int.class);
for (PermissionGroupInfo group : groupList) {
try {
String name = group == null ? null : group.name;
List<PermissionInfo> permissionInfos = pm.queryPermissionsByGroup(name, 0);
for (PermissionInfo permissionInfo : permissionInfos) {
String protection = (String) protectionToString.invoke(permissionInfo,
permissionInfo.protectionLevel);
System.out.println(permissionInfo.name + " " + protection);
}
} catch (PackageManager.NameNotFoundException ignored) {
}
}
}
在简要地看一下结果之后,看起来有些保护级别已经改变了。例如,com.google.android.gms.permission.CAR_VENDOR_EXTENSION dangerous
com.google.android.gms.permission.CAR_MILEAGE dangerous
com.google.android.gms.permission.CAR_FUEL dangerous
android.permission.WRITE_CONTACTS dangerous
android.permission.GET_ACCOUNTS dangerous
android.permission.READ_CONTACTS dangerous
android.permission.READ_CALL_LOG dangerous
android.permission.READ_PHONE_STATE dangerous
android.permission.ACCESS_IMS_CALL_SERVICE signature|privileged
android.permission.CALL_PHONE dangerous
android.permission.WRITE_CALL_LOG dangerous
android.permission.USE_SIP dangerous
android.permission.PROCESS_OUTGOING_CALLS dangerous
com.android.voicemail.permission.ADD_VOICEMAIL dangerous
android.permission.READ_CALENDAR dangerous
android.permission.WRITE_CALENDAR dangerous
android.permission.CAMERA dangerous
android.permission.BODY_SENSORS dangerous
android.permission.USE_FINGERPRINT normal
android.permission.ACCESS_FINE_LOCATION dangerous
com.google.android.gms.permission.CAR_SPEED dangerous
android.permission.ACCESS_COARSE_LOCATION dangerous
android.permission.READ_EXTERNAL_STORAGE dangerous
android.permission.WRITE_EXTERNAL_STORAGE dangerous
android.permission.RECORD_AUDIO dangerous
android.permission.READ_SMS dangerous
android.permission.RECEIVE_WAP_PUSH dangerous
android.permission.RECEIVE_MMS dangerous
android.permission.RECEIVE_SMS dangerous
android.permission.SEND_SMS dangerous
android.permission.READ_CELL_BROADCASTS dangerous
android.permission.REAL_GET_TASKS signature|privileged
android.permission.ACCESS_CACHE_FILESYSTEM signature|privileged
android.permission.REMOTE_AUDIO_PLAYBACK signature
com.google.android.apps.photos.permission.C2D_MESSAGE signature
android.permission.INTENT_FILTER_VERIFICATION_AGENT signature|privileged
android.permission.BIND_INCALL_SERVICE signature|privileged
com.google.android.gms.trustagent.framework.model.DATA_CHANGE_NOTIFICATION signature
android.permission.WRITE_SETTINGS signature|appop|pre23|preinstalled
android.permission.CONTROL_KEYGUARD signature
com.google.android.apps.magazines.permission.C2D_MESSAGE signature
com.google.android.calendar.permission.C2D_MESSAGE signature
android.permission.CONFIGURE_WIFI_DISPLAY signature
android.permission.ACCESS_WIMAX_STATE normal
android.permission.SET_INPUT_CALIBRATION signature
android.permission.RECOVERY signature|privileged
android.permission.TEMPORARY_ENABLE_ACCESSIBILITY signature
com.google.android.talk.permission.C2D_MESSAGE signature
android.permission.SET_PROCESS_LIMIT signature|privileged|development
com.google.android.googlequicksearchbox.permission.C2D_MESSAGE signature
android.permission.FRAME_STATS signature
com.google.android.apps.genie.geniewidget.permission.C2D_MESSAGE signature
android.permission.BRICK signature
com.google.android.gallery3d.permission.GALLERY_PROVIDER signature
android.permission.RESTART_PACKAGES normal
android.permission.BIND_KEYGUARD_APPWIDGET signature|privileged
android.permission.BIND_DEVICE_ADMIN signature
android.permission.MODIFY_AUDIO_SETTINGS normal
android.permission.ACCESS_CHECKIN_PROPERTIES signature|privileged
android.permission.KILL_UID signature|installer
android.permission.SIGNAL_PERSISTENT_PROCESSES signature|privileged|development
android.permission.BIND_PRINT_SERVICE signature
android.permission.ACCESS_NOTIFICATION_POLICY normal
android.permission.MODIFY_AUDIO_ROUTING signature|privileged
android.permission.RECEIVE_BLUETOOTH_MAP signature|privileged
android.permission.ACCESS_MOCK_LOCATION signature
com.google.android.apps.enterprise.dmagent.permission.NotificationBroadcastReceiverPermission signature|privileged
android.permission.GET_APP_OPS_STATS signature|privileged|development
android.permission.RECEIVE_DATA_ACTIVITY_CHANGE signature|privileged
android.permission.GET_PACKAGE_IMPORTANCE signature|privileged
com.google.android.youtube.permission.C2D_MESSAGE signature
android.permission.READ_WIFI_CREDENTIAL signature|privileged
android.permission.BIND_DREAM_SERVICE signature
android.permission.WRITE_GSERVICES signature|privileged
com.android.printspooler.permission.ACCESS_ALL_PRINT_JOBS signature
android.permission.INSTALL_LOCATION_PROVIDER signature|privileged
com.google.android.voicesearch.AUDIO_FILE_ACCESS signature
android.permission.CONTROL_WIFI_DISPLAY signature
android.permission.SYSTEM_ALERT_WINDOW signature|appop|pre23|preinstalled
android.permission.BIND_CARRIER_SERVICES signature|privileged
com.google.android.gsf.subscribedfeeds.permission.C2D_MESSAGE signature
android.permission.BROADCAST_PHONE_ACCOUNT_REGISTRATION signature|privileged
android.permission.START_TASKS_FROM_RECENTS signature|privileged
com.google.android.apps.enterprise.dmagent.permission.AutoRegisterPermission signature|privileged
android.permission.CONTROL_LOCATION_UPDATES signature|privileged
com.google.android.gms.permission.BIND_NETWORK_TASK_SERVICE signature
android.permission.GET_TOP_ACTIVITY_INFO signature
android.permission.CLEAR_APP_USER_DATA signature|installer
android.permission.PROVIDE_TRUST_AGENT signature|privileged
android.permission.BROADCAST_CALLLOG_INFO signature|privileged
com.google.android.gms.chromesync.permission.CONTENT_PROVIDER_ACCESS signature
android.permission.INSTALL_PACKAGES signature|privileged
android.permission.SEND_RESPOND_VIA_MESSAGE signature|privileged
com.android.permission.WHITELIST_BLUETOOTH_DEVICE signature
android.permission.ACCESS_FM_RADIO signature|privileged
android.permission.MANAGE_VOICE_KEYPHRASES signature|privileged
android.permission.SHUTDOWN signature|privileged
android.permission.CHANGE_COMPONENT_ENABLED_STATE signature|privileged
com.google.android.gms.permission.CHECKIN_NOW signature
android.permission.BIND_TV_INPUT signature|privileged
android.permission.NFC normal
android.permission.MODIFY_PARENTAL_CONTROLS signature|privileged
android.permission.INTERNAL_SYSTEM_WINDOW signature
android.permission.PROCESS_PHONE_ACCOUNT_REGISTRATION signature|privileged
android.permission.RETRIEVE_WINDOW_TOKEN signature
android.permission.BIND_WALLPAPER signature|privileged
android.permission.START_ANY_ACTIVITY signature
android.permission.CAMERA_SEND_SYSTEM_EVENTS signature|privileged
com.google.android.apps.now.OPT_IN_WIZARD signature|privileged
android.permission.SEND_DOWNLOAD_COMPLETED_INTENTS signature
com.google.android.googlequicksearchbox.permission.FINISH_GEL_ACTIVITY signature
android.permission.BROADCAST_SMS signature
android.permission.CALL_PRIVILEGED signature|privileged
android.permission.BIND_INTENT_FILTER_VERIFIER signature
android.permission.MANAGE_APP_TOKENS signature
android.permission.CHANGE_NETWORK_STATE signature|appop|pre23|preinstalled
android.permission.CAPTURE_TV_INPUT signature|privileged
com.google.android.apps.fitness.permission.C2D_MESSAGE signature
android.permission.MASTER_CLEAR signature|privileged
android.permission.PERSISTENT_ACTIVITY normal
android.permission.BIND_TELECOM_CONNECTION_SERVICE signature|privileged
android.permission.WRITE_SYNC_SETTINGS normal
com.google.android.providers.gsf.permission.WRITE_GSERVICES signature|privileged
android.permission.SET_DEBUG_APP signature|privileged|development
com.google.android.apps.wallet.permission.WALLET_INTERNAL signature
android.permission.ACCESS_CONTENT_PROVIDERS_EXTERNALLY signature
com.google.android.apps.walletnfcrel.permission.C2D_MESSAGE signature
android.permission.RECEIVE_BOOT_COMPLETED normal
com.google.android.apps.cloudprint.permission.C2D_MESSAGE signature
android.permission.LOOP_RADIO signature|privileged
android.permission.GLOBAL_SEARCH_CONTROL signature
com.google.android.gms.auth.permission.POST_SIGN_IN_ACCOUNT signature
android.permission.PEERS_MAC_ADDRESS signature
android.permission.DEVICE_POWER signature
com.google.android.providers.settings.permission.READ_GSETTINGS signature
com.google.android.gms.cloudsave.BIND_EVENT_BROADCAST signature|privileged
com.android.vending.permission.C2D_MESSAGE signature
android.permission.SET_TIME_ZONE normal
android.permission.REMOVE_TASKS signature
com.google.android.googlequicksearchbox.permission.PAUSE_HOTWORD signature|privileged
android.permission.EXPAND_STATUS_BAR normal
com.android.launcher.permission.UNINSTALL_SHORTCUT normal
android.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS signature
android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS normal
android.permission.READ_PROFILE normal
android.permission.BIND_VOICE_INTERACTION signature
com.google.android.marvin.feedback.permission.TALKBACK signature
android.permission.BLUETOOTH normal
android.permission.BROADCAST_WAP_PUSH signature
android.permission.CHANGE_WIFI_MULTICAST_STATE normal
com.google.android.onetimeinitializer.permission.ONE_TIME_INITIALIZED signature
android.permission.DVB_DEVICE signature|privileged
android.permission.PERFORM_SIM_ACTIVATION signature|privileged
com.android.alarm.permission.SET_ALARM normal
android.permission.CAPTURE_AUDIO_HOTWORD signature|privileged
android.permission.WRITE_MEDIA_STORAGE signature|privileged
com.android.voicemail.permission.READ_VOICEMAIL signature|privileged
android.permission.SET_ANIMATION_SCALE signature|privileged|development
com.google.android.gms.permission.AD_ID_NOTIFICATION normal
com.android.vending.setup.PLAY_SETUP_SERVICE signature|privileged
android.permission.GET_TASKS normal
android.permission.BROADCAST_NETWORK_PRIVILEGED signature|privileged
android.permission.ACCESS_SURFACE_FLINGER signature
com.google.android.googleapps.permission.ACCESS_GOOGLE_PASSWORD signature
android.permission.INTERNET normal
android.permission.TV_INPUT_HARDWARE signature|privileged
com.android.vending.INTENT_VENDING_ONLY signature
android.permission.TRANSMIT_IR normal
com.google.android.gms.permission.C2D_MESSAGE signature
android.permission.RETRIEVE_WINDOW_CONTENT signature|privileged
android.permission.REORDER_TASKS normal
com.android.chrome.permission.CHILD_SERVICE signature
com.google.android.videos.permission.C2D_MESSAGE signature
android.permission.BLUETOOTH_ADMIN normal
android.permission.CONTROL_VPN signature|privileged
android.permission.UPDATE_DEVICE_STATS signature|privileged
android.permission.BLUETOOTH_STACK signature
android.permission.BLUETOOTH_MAP signature
android.permission.READ_PRECISE_PHONE_STATE signature|privileged
android.permission.MANAGE_FINGERPRINT signature|privileged
com.google.android.partnersetup.permission.UPDATE_CLIENT_ID signature|privileged
android.permission.NET_ADMIN signature
com.google.android.gms.permission.GAMES_DEBUG_SETTINGS signature
android.permission.CARRIER_FILTER_SMS signature|privileged
android.permission.PERFORM_CDMA_PROVISIONING signature|privileged
com.google.android.gms.trustagent.permission.TRUSTAGENT_STATE signature
android.permission.BIND_CONNECTION_SERVICE signature|privileged
android.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS signature|installer|verifier
android.permission.WRITE_SOCIAL_STREAM normal
android.permission.LAUNCH_TRUST_AGENT_SETTINGS signature|privileged
android.permission.REGISTER_CALL_PROVIDER signature|privileged
android.permission.GET_PACKAGE_SIZE normal
android.permission.BIND_VPN_SERVICE signature
android.permission.TRUST_LISTENER signature
android.permission.ACCOUNT_MANAGER signature
android.permission.MANAGE_USB signature|privileged
android.permission.ACCESS_ALL_DOWNLOADS signature
android.permission.INTERACT_ACROSS_USERS_FULL signature|installer
android.permission.BIND_APPWIDGET signature|privileged
android.permission.STOP_APP_SWITCHES signature|privileged
android.permission.BATTERY_STATS signature|privileged|development
com.google.android.gms.permission.INTERNAL_BROADCAST signature
android.permission.PACKAGE_USAGE_STATS signature|privileged|development|appop
android.permission.WRITE_PROFILE normal
android.permission.MOUNT_UNMOUNT_FILESYSTEMS signature|privileged
android.permission.GET_ACCOUNTS_PRIVILEGED signature|privileged
android.permission.WRITE_SECURE_SETTINGS signature|privileged|development
com.android.vending.TOS_ACKED signature|privileged
android.permission.SERIAL_PORT signature|privileged
android.permission.BIND_NOTIFICATION_LISTENER_SERVICE signature
android.permission.CAPTURE_AUDIO_OUTPUT signature|privileged
android.permission.BIND_MIDI_DEVICE_SERVICE signature
android.permission.MOVE_PACKAGE signature|privileged
android.permission.SET_ACTIVITY_WATCHER signature
android.permission.STATUS_BAR_SERVICE signature
android.permission.READ_SEARCH_INDEXABLES signature|privileged
android.permission.NFC_HANDOVER_STATUS signature|privileged
android.permission.SCORE_NETWORKS signature|privileged
android.permission.DIAGNOSTIC signature
android.permission.ACCESS_LOCATION_EXTRA_COMMANDS normal
android.permission.RECEIVE_WIFI_CREDENTIAL_CHANGE signature|privileged
android.permission.READ_PRIVILEGED_PHONE_STATE signature|privileged
android.permission.ACCESS_DOWNLOAD_MANAGER signature|privileged
android.permission.BROADCAST_STICKY normal
android.permission.ASEC_ACCESS signature
android.permission.BIND_REMOTE_DISPLAY signature
android.permission.BLUETOOTH_PRIVILEGED signature|privileged
com.google.android.gms.permission.CAR signature
android.permission.SET_ALWAYS_FINISH signature|privileged|development
android.permission.HARDWARE_TEST signature
com.google.android.videos.permission.INVALIDATE_AUTH_TOKENS signature
android.permission.ASEC_CREATE signature
com.google.android.apps.enterprise.dmagent.permission.AutoSyncPermission signature|privileged
com.google.android.apps.enterprise.dmagent.permission.InvokeDMServicePermission signature
android.intent.category.MASTER_CLEAR.permission.C2D_MESSAGE signature
android.permission.ACCESS_KEYGUARD_SECURE_STORAGE signature
com.google.android.launcher.permission.CONTENT_REDIRECT signature
android.permission.BIND_JOB_SERVICE signature
android.permission.CONFIRM_FULL_BACKUP signature
android.permission.CAPTURE_SECURE_VIDEO_OUTPUT signature|privileged
android.permission.SET_TIME signature|privileged
android.permission.WRITE_APN_SETTINGS signature|privileged
com.google.android.providers.settings.permission.WRITE_GSETTINGS signature
android.permission.CHANGE_WIFI_STATE normal
com.google.android.apps.gcs.RECEIVE_GCS_STATE signature|privileged
android.permission.BIND_PACKAGE_VERIFIER signature
android.permission.READ_INSTALL_SESSIONS normal
android.permission.BIND_ROUTE_PROVIDER signature
android.permission.RECEIVE_STK_COMMANDS signature|privileged
android.permission.BIND_CARRIER_MESSAGING_SERVICE signature|privileged
android.permission.ACCESS_BLUETOOTH_SHARE signature
android.permission.PACKAGE_VERIFICATION_AGENT signature|privileged
com.google.android.apps.maps.permission.PREFETCH signature
android.permission.SET_ORIENTATION signature
android.permission.REVOKE_RUNTIME_PERMISSIONS signature|installer|verifier
android.permission.MANAGE_USERS signature|privileged
com.android.vending.billing.BILLING_ACCOUNT_SERVICE signature|privileged
com.google.android.gm.email.permission.ACCESS_PROVIDER signature
android.permission.SET_PREFERRED_APPLICATIONS signature
android.permission.FLASHLIGHT normal
android.permission.DELETE_CACHE_FILES signature|privileged
com.google.android.hangouts.START_HANGOUT signature
android.permission.SET_WALLPAPER_COMPONENT signature|privileged
android.permission.ACCESS_NETWORK_STATE normal
android.permission.BIND_CONDITION_PROVIDER_SERVICE signature
android.permission.ACCESS_MTP signature|privileged
android.permission.DISABLE_KEYGUARD normal
android.permission.BACKUP signature|privileged
android.permission.PROCESS_CALLLOG_INFO signature|privileged
android.permission.CHANGE_CONFIGURATION signature|privileged|development
android.permission.USER_ACTIVITY signature|privileged
android.permission.LOCAL_MAC_ADDRESS signature|privileged
android.permission.READ_LOGS signature|privileged|development
com.google.android.apps.maps.permission.C2D_MESSAGE signature
android.permission.COPY_PROTECTED_DATA signature
android.permission.ASEC_DESTROY signature
android.permission.INTERACT_ACROSS_USERS signature|privileged|development
android.permission.SET_WALLPAPER normal
android.permission.ASEC_RENAME signature
android.permission.SET_KEYBOARD_LAYOUT signature
android.permission.UPDATE_CONFIG signature|privileged
android.permission.ACCESS_NETWORK_CONDITIONS signature|privileged
android.permission.READ_DREAM_STATE signature|privileged
android.permission.QUERY_DO_NOT_ASK_CREDENTIALS_ON_BOOT signature
com.google.googlenav.friend.permission.OPT_IN signature
com.google.android.launcher.permission.RECEIVE_FIRST_LOAD_BROADCAST signature|privileged
android.permission.UPDATE_LOCK signature|privileged
android.permission.READ_NETWORK_USAGE_HISTORY signature|privileged
android.permission.ACCESS_DRM_CERTIFICATES signature|privileged
com.google.android.gsf.permission.C2D_MESSAGE signature
com.google.android.googlequicksearchbox.permission.FLUSH_LOGS signature
android.permission.READ_INPUT_STATE signature
android.permission.KILL_BACKGROUND_PROCESSES normal
android.permission.ACCESS_VOICE_INTERACTION_SERVICE signature
android.permission.BIND_PRINT_SPOOLER_SERVICE signature
android.permission.BIND_DIRECTORY_SEARCH signature|privileged
android.permission.WRITE_USER_DICTIONARY normal
android.permission.REGISTER_SIM_SUBSCRIPTION signature|privileged
android.permission.READ_SYNC_STATS normal
android.permission.WRITE_DREAM_STATE signature|privileged
android.permission.FREEZE_SCREEN signature
android.permission.DOWNLOAD_CACHE_NON_PURGEABLE signature|privileged
android.permission.REBOOT signature|privileged
android.permission.DISPATCH_NFC_MESSAGE signature|privileged
com.google.android.gms.auth.permission.FACE_UNLOCK signature
android.permission.MOUNT_FORMAT_FILESYSTEMS signature|privileged
android.permission.OEM_UNLOCK_STATE signature
android.permission.REGISTER_CONNECTION_MANAGER signature|privileged
android.permission.MANAGE_DEVICE_ADMINS signature|privileged
android.permission.CLEAR_APP_CACHE signature|privileged
android.permission.CHANGE_APP_IDLE_STATE signature
com.google.android.gms.auth.permission.GOOGLE_ACCOUNT_CHANGE signature
com.google.android.gms.trustagent.framework.model.DATA_ACCESS signature
android.permission.BIND_TRUST_AGENT signature
android.permission.MANAGE_DOCUMENTS signature
android.permission.ACCESS_PDB_STATE signature
android.permission.MANAGE_NETWORK_POLICY signature
android.permission.BIND_REMOTEVIEWS signature|privileged
android.permission.ASEC_MOUNT_UNMOUNT signature
android.permission.GRANT_RUNTIME_PERMISSIONS signature|installer
android.permission.SET_POINTER_SPEED signature
android.permission.CHANGE_BACKGROUND_DATA_SETTING signature
com.android.systemui.permission.SELF signature
com.android.chrome.TOS_ACKED signature|privileged
android.permission.GLOBAL_SEARCH signature|privileged
android.permission.NET_TUNNELING signature
android.permission.CONNECTIVITY_INTERNAL signature|privileged
android.permission.FACTORY_TEST signature
android.permission.SET_WALLPAPER_HINTS normal
android.permission.MANAGE_MEDIA_PROJECTION signature
android.permission.READ_SYNC_SETTINGS normal
com.google.android.apps.now.CURRENT_ACCOUNT_ACCESS signature
com.google.android.partnersetup.permission.ACCESS_PROVIDER signature
com.android.chrome.permission.C2D_MESSAGE signature
android.permission.BROADCAST_PACKAGE_REMOVED signature
com.google.android.music.store.permission.C2D_MESSAGE signature
android.permission.OVERRIDE_WIFI_CONFIG signature|privileged
com.android.gallery3d.filtershow.permission.READ signature
android.permission.FORCE_STOP_PACKAGES signature|privileged
android.permission.MANAGE_CA_CERTIFICATES signature|privileged
android.permission.CAPTURE_VIDEO_OUTPUT signature|privileged
android.permission.ACCESS_NOTIFICATIONS signature|privileged
android.permission.VIBRATE normal
com.android.certinstaller.INSTALL_AS_USER signature
com.google.android.gsf.permission.CONNECTION signature
com.google.android.apps.plus.permission.MAPS_RECEIVE signature
android.permission.BIND_ACCESSIBILITY_SERVICE signature
android.server.checkin.CHECKIN.permission.C2D_MESSAGE signature
android.permission.MANAGE_ACTIVITY_STACKS signature|privileged
android.permission.SEND_CALL_LOG_CHANGE signature|privileged
android.permission.HDMI_CEC signature|privileged
android.permission.BIND_INPUT_METHOD signature
android.permission.INVOKE_CARRIER_SETUP signature|privileged
android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST signature|privileged
android.permission.REMOVE_DRM_CERTIFICATES signature|privileged
com.google.android.googleapps.permission.GOOGLE_MAIL_SWITCH signature
android.permission.READ_USER_DICTIONARY normal
android.permission.FILTER_EVENTS signature
android.permission.RECEIVE_EMERGENCY_BROADCAST signature|privileged
com.google.android.finsky.permission.GEARHEAD_SERVICE signature|privileged
android.permission.MODIFY_NETWORK_ACCOUNTING signature|privileged
android.permission.CRYPT_KEEPER signature|privileged
android.permission.BIND_NFC_SERVICE signature
android.permission.START_PRINT_SERVICE_CONFIG_ACTIVITY signature
com.android.voicemail.permission.WRITE_VOICEMAIL signature|privileged
android.permission.GET_DETAILED_TASKS signature
android.permission.NOTIFY_PENDING_SYSTEM_UPDATE signature|privileged
android.permission.ALLOW_ANY_CODEC_FOR_PLAYBACK signature|privileged
android.permission.MODIFY_APPWIDGET_BIND_PERMISSIONS signature|privileged
android.permission.ACCESS_WIFI_STATE normal
com.google.android.apps.enterprise.dmagent.permission.C2D_MESSAGE signature
android.permission.FORCE_BACK signature
com.android.chrome.permission.READ_WRITE_BOOKMARK_FOLDERS signature|privileged
com.google.android.launcher.permission.RECEIVE_LAUNCH_BROADCASTS signature
android.permission.CHANGE_WIMAX_STATE normal
android.permission.CAMERA_DISABLE_TRANSMIT_LED signature|privileged
android.permission.REQUEST_INSTALL_PACKAGES normal
android.permission.CONTROL_INCALL_EXPERIENCE signature|privileged
android.permission.MODIFY_PHONE_STATE signature|privileged
com.google.android.gm.email.permission.UPDATE_AUTH_NOTIFICATION signature
com.google.android.googlequicksearchbox.LAUNCH_FROM_DSP_HOTWORD signature|privileged
com.android.launcher.permission.INSTALL_SHORTCUT normal
android.permission.BIND_TEXT_SERVICE signature
android.permission.STATUS_BAR signature|privileged
android.permission.READ_FRAME_BUFFER signature|privileged
com.google.android.gms.DRIVE signature
android.permission.DUMP signature|privileged|development
android.permission.LOCATION_HARDWARE signature|privileged
com.google.android.apps.plus.permission.C2D_MESSAGE signature
com.google.android.marvin.talkback.permission.LABELING signature
com.google.android.googlequicksearchbox.LAUNCH_WITH_RECORDED_AUDIO signature|privileged
android.permission.READ_SOCIAL_STREAM normal
android.permission.WAKE_LOCK normal
android.permission.INJECT_EVENTS signature
android.permission.ACCESS_DOWNLOAD_MANAGER_ADVANCED signature|privileged
android.permission.BIND_CHOOSER_TARGET_SERVICE signature
android.permission.UPDATE_APP_OPS_STATS signature|privileged|installer
com.android.gallery3d.filtershow.permission.WRITE signature
android.permission.ACCESS_INPUT_FLINGER signature
android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS signature|privileged
com.android.vending.billing.ADD_CREDIT_CARD signature|privileged
android.permission.SET_SCREEN_COMPATIBILITY signature
com.android.vending.billing.IN_APP_NOTIFY.permission.C2D_MESSAGE signature
android.permission.MEDIA_CONTENT_CONTROL signature|privileged
android.permission.DELETE_PACKAGES signature|privileged
com.google.android.calendar.permission.READ_OOBE signature
现在是“正常”。