(学习Mooc的笔记)
转载请标明出处:http://blog.youkuaiyun.com/yuqing_1102/article/details/54943934
一、主要更新模块:
1.电源管理
新增两种状态:
(1)App Standby(应用待机):
检测:当设备不充电,且在这段时间内用户没有直接或间接的启动该应用,则应用进入待机状态
退出:当应用被激活,或者设备充电时,系统会将应用移出此状态
该状态为了尽可能减少后台应用对系统性能的消耗,注意应用会很容易被回收。
(2)Doze
检测:当设备不充电,且当设备静止且灭屏一段时间,则进入Doze状态
周期:平台尝试让系统处于休眠状态,先进入短的休眠状态,然后周期性检测,如果仍然没有用户操作,然后再进入长的休眠状态,直到进入饱和的休眠状态。
这样也是为了节省电量。
2.App link
全称:应用程序链接
技术点:就是我们的隐式启动intent
目的:鼓励应用程序间的关联而不是单一的应用同浏览器的交互
3.指纹识别
6.0以前不同手机的指纹识别差异巨大,6.0以后由android提供API,硬件厂商只需提供相应的硬件支持即可,统一管理。
4.应用权限管理(最重要)
(1)5.0以前只需要在Manifest.xml中注册声明即可,在安装的时候会一次性申请成功。
5.0以后用户可以在安装的时候关闭某些权限
6.0及以后,对于一些用户隐私权限总是会在第一次提示用户是否授予权限(和iPhone类似)
(2)运行时权限的优势
1)新的权限机制更好的保护用户的隐私
2)给了程序向用户说明权限的作用
3)可以防止一些恶意程序盗取用户或手机信息,增强了android系统的安全性
(3)运行时权限的分类
1)Normal Permission:正常权限
比如android.permission.INTERNET 、ACCESS_WIFI_STATE,不需要单独申请,只要在manifest.xml注册了,就获得了该权限。
2)Dangerous Permission & Dangerous Permission Group
Dangerous Permission Group:权限组,假设你的app早已被用户授权了某一组的某个危险权限,那么系统也立即授权了同一组的其他所有权限。
二、新权限机制
1.新增API
1)ContextCompat.checkSelfPermission检测应用是否拥有某个权限
2)ActivityCompat.requestPermissions()申请权限
3)onRequestPermissionsResult()异步申请结果回调
4)ActivityCompat.shouldShowRequestPermissions]Rationale用户拒绝权限后给用户解释权限的作用
2.使用流程
1)在manifest中添加需要的权限(不可省,适配6.0以下的设备)
2)检查权限(只检查危险权限,官网检查,命令行检查都可)
3)申请权限
4)处理权限申请回调