Android6.0特性

    xiaoxiao2021-03-25  129

    Android6.0新特性

    本博客为某在线教学网站课程笔记

    电源管理

    ● App Standby(应用待机)

    检测:当设备不充电时,且在这时间用户没有直接或者间接的启动该应用。

    退出:应用被激活时,或者设备充电时,系统将应用移除此状态。

    所以在android6.0后台的应用很容易被回收

    ● Doze(状态)

    检测:当设备不充电时,且当设备静止且灭屏一段时间。

    周期:平台尝试让系统处于休眠状态,周期性的进入在一个维持窗口回复正常工作,然后进入一个更长状态的。

    希望应用之间的联系,弱化与APP与浏览器的交互,强化APP之间的连接。

    简单地说没就是,A APP提供一个跳转的规则,B APP按照这个规则跳转到A App,如果用户没有安装APP那么就会提供一个下载安装地址,这大大提高的用户体验。

    比如我们在微博中看到微信的推广广告,我们点击广告,如果此时用户安装了微信则直接跳转到微信,如果没有安装则提供一个安装链接。

    指纹识别

    6.0之前,各大手机厂商自己定制指纹识别API。

    6.0开始提供相应的API

    应用权限管理

    运行时权限,就是当使用到某个权限时会弹出提示框询问用户时候授予权限。

    查看危险性权限

    adb shell pm list permissions -d -g

    封装Android6.0 Permission

    在BaseActivity中添加

    /** * 为子类提供一个权限检查方法 * @param permissions * @return */ public boolean hasPermission(String... permissions){ for (String permission:permissions){ if (ContextCompat.checkSelfPermission(this,permission)!= PackageManager.PERMISSION_GRANTED){ return false; } } return true; } /** * 为子类提供权限请求方法 * @param code * @param permissions */ public void requestPermission(int code,String... permissions) { ActivityCompat.requestPermissions(this, permissions, code); } @Override public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { switch (requestCode){ case 100: doSdcardPermission(); break; } } /** * 默认的写SD权限处理 */ private void doSdcardPermission() { }

    在继承BaseActivity的Activity中需要请求SD权限的地方写

    if (hasPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE)){ //do }else { requestPermission(100,Manifest.permission.WRITE_EXTERNAL_STORAGE); } 并且重写baseActivity中处理权限结果的方法 @override private void doSdcardPermission() { //实现 }
    转载请注明原文地址: https://ju.6miu.com/read-9390.html

    最新回复(0)