Android6.0可使设备续航时间提升30%
在Android6.0以前 权限管理是通过三方APP来实现管理,在Android6.0中该功能成为系统级
当手机静止不动一段时间后,会进入Doze电量管理模式,当=屏幕处于关闭状态时,平均续航时间可提高30%
Android6.0系统默认为targetSdkVersion小于23的应用授予程序所申请的权限,如果targetSdkVersion小于23在6.0系统中是不会有问题的。
当在权限管理界面取消该App对应的权限,App运行时发现该权限为授予还是会进行弹框确认是否授权。
权限管理分为两类一种是不涉及用于隐私的权限,用户不能取消该类权限的授权;另外一种是涉及用于隐私的权限,需要进行用户弹框授权,同一权限组的一个权限被授权,该组内的其他权限也会自动被授权。
将targetSdkVersion设置为23及23以上。
需要权限的地方需要进行权限的检测和申请权限的逻辑,权限允许和拒绝的回调通过onRequestPermissionResult告知开发者,当用户不在询问时,回调结果为最后一次用户的选择即拒绝。
权限监测通过ActivityCompat.checkSelfPermission传入对应的权限如果返回值为PackageManager.PERMISSION_GEANTED则代表该权限已被授予,
当用户选择不在询问时onRequestPermissionResult权限回调结果中通过ActivityCompat.shouldShowRequestRationale方法传入对应的权限如果返回false则代表用户选择的是不在询问
Android 6.0 版移除了对 Apache HTTP 客户端的支持。如果您的应用使用该客户端,并以 Android 2.3(API 级别 9)或更高版本为目标平台,改用 HttpURLConnection 类。此 API 效率更高,因为它可以通过透明压缩和响应缓存减少网络使用,并可最大限度降低耗电量。
移除了 Notification.setLatestEventInfo() 方法。请改用 Notification.Builder 类来构建通知。
不再支持通过 AudioManager 类直接设置音量或将特定音频流静音。setStreamSolo() 方法已弃用,您应该改为调用 requestAudioFocus() 方法。类似地,setStreamMute() 方法也已弃用,请改为调用 adjustStreamVolume() 方法并传入方向值 ADJUST_MUTE 或 ADJUST_UNMUTE。
Android 密钥库提供程序不再支持 DSA。但仍支持 ECDSA。
允许系统在用户没有继续操作app的情况下,决定哪一个app是处于空闲状态。系统会通过监听用户在一段时间内,是否没有再操作app,来判定某一个app是否是处于空闲状态。当设备处于非充电状态,系统将会断开网络连接,并中断所有app的数据同步和工作(相当于认为设备是空闲的)。