Android消息提示和权限分类

来源:互联网 发布:棋院围棋软件 编辑:程序博客网 时间:2024/06/05 07:26

一、消息提示

1、Toast
依赖系统Notification,在系统设置中关闭通知后,不再显示Toast。

2、Window addView 自己维护队列
使用 TYPE_TOAST, 在原生系统下不需要额外申请权限,但在MIUI8下报无权限,必须添加SYSTEM_ALERT_WINDOWS权限。(根据文档SYSTEM_ALERT_WINDOWS属于特殊权限,需要弹窗用户允许才可以,但实际测试下来并没有遇到弹窗的情况,比较奇怪)

3、Snackbar
依赖ViewGroup,应用退到后台后 无法提示

二、权限分类

由上边提到的SYSTEM_ALERT_WINDOWS ,我们总结一下6.0 的运行时权限分类

1、正常权限

正常权限具有如下的几个特点

对用户隐私没有较大影响或者不会打来安全问题。
安装后就赋予这些权限,不需要显示提醒用户,用户也不能取消这些权限。

正常权限列表
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
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
上述的权限基本设计的是关于网络,蓝牙,时区,快捷方式等方面,只要在Manifest指定了这些权限,就会被授予,并且不能撤销。

2、特殊权限

SYSTEM_ALERT_WINDOW,设置悬浮窗,进行一些黑科技
WRITE_SETTINGS 修改系统设置
这两个权限是需要用户授权的。
关于上面两个特殊权限的授权,做法是使用startActivityForResult启动授权界面来完成。

3、危险权限

危险权限实际上才是运行时权限主要处理的对象,这些权限可能引起隐私问题或者影响其他程序运行。Android中的危险权限可以归为以下几个分组:

CALENDAR
CAMERA
CONTACTS
LOCATION
MICROPHONE
PHONE
SENSORS
SMS
STORAGE

4、特殊权限

例如:
READ_LOGS 第三方厂商用的

0 0
原创粉丝点击