Android权限:我怎样才能知道哪些是比正常危险?

Android定义了第三方应用可以请求的一组权限。 权限按敏感度分类; 大多数权限是“正常”或“危险”。 普通权限会自动授予,不会提示用户; 危险的权限会在安装应用程序时呈现给用户,并且要求用户同意授予这些权限。

问题:对于我所考虑的任何特定的Android许可,我如何判断它是正常许可还是危险许可? 是否有危险的权限列表和普通权限列表?

(我知道第三方应用程序可以声明自己的权限,我只是询问标准权限,我知道可能无法获得100%的完整列表,我只寻求尽力而为;总比没有好。)

对于一个相关但不同的问题,另请参见我在哪里可以获得Android权限列表(但是,这是一个不同的问题;它不在正常与危险的区别,我不一定需要完整的列表)。


普通权限会自动授予,而不会提示用户

AFAIK,这里的文档是错误的。

危险的权限会在安装应用程序时呈现给用户,并且要求用户同意授予这些权限

AFAIK,所有权限都有这种行为。

这可能变成的是,总是显示危险的权限,而正常的权限是那些在危险级别足够的情况下可能“低于对象”的权限。

对于我想要的任何特定的Android许可,我如何判断它是正常许可还是危险许可? 是否有危险的权限列表和普通权限列表?

你可以看看源代码。


为了更简单,以下是从官方文档中获取的普通权限列表:

从API级别23开始,以下权限分类为PROTECTION_NORMAL:

ACCESS_LOCATION_EXTRA_COMMANDS
ACCESS_NETWORK_STATE
ACCESS_NOTIFICATION_POLICY
ACCESS_WIFI_STATE
BLUETOOTH
BLUETOOTH_ADMIN
BROADCAST_STICKY
CHANGE_NETWORK_STATE
CHANGE_WIFI_MULTICAST_STATE
CHANGE_WIFI_STATE
DISABLE_KEYGUARD
EXPAND_STATUS_BAR
FLASHLIGHT
GET_PACKAGE_SIZE
INTERNET
KILL_BACKGROUND_PROCESSES
MODIFY_AUDIO_SETTINGS
NFC
READ_SYNC_SETTINGS
READ_SYNC_STATS
RECEIVE_BOOT_COMPLETED
REORDER_TASKS
REQUEST_INSTALL_PACKAGES
SET_TIME_ZONE
SET_WALLPAPER
SET_WALLPAPER_HINTS
TRANSMIT_IR
USE_FINGERPRINT
VIBRATE
WAKE_LOCK
WRITE_SYNC_SETTINGS
SET_ALARM
INSTALL_SHORTCUT
UNINSTALL_SHORTCUT

这里是危险的权限和权限组列表:

CALENDAR : READ_CALENDAR, WRITE_CALENDAR
CAMERA : CAMERA
CONTACTS : READ_CONTACTS, WRITE_CONTACTS, GET_ACCOUNTS
LOCATION : ACCESS_FINE_LOCATION, ACCESS_COARSE_LOCATION
MICROPHONE : RECORD_AUDIO
PHONE : READ_PHONE_STATE, CALL_PHONE, READ_CALL_LOG, WRITE_CALL_LOG, ADD_VOICEMAIL, USE_SIP, PROCESS_OUTGOING_CALLS
SENSORS : BODY_SENSORS    
SMS     : SEND_SMS, RECEIVE_SMS, READ_SMS, RECEIVE_WAP_PUSH, RECEIVE_MMS
STORAGE : READ_EXTERNAL_STORAGE, WRITE_EXTERNAL_STORAGE

我发现这篇博文列出了保护级别的“默认”权限。 我想,这是你要找的那种清单。

尽管如此,该名单可能在此期间已经改变,因为该职位是10个月大。 它提供了示例代码来自行重新编译列表。

链接地址: http://www.djcxy.com/p/14955.html

上一篇: Android permissions: How can I learn which are dangerous vs normal?

下一篇: What is the difference between match