1、一、 性能改善
2、Doze超级省电模式
3、手机在关屏同时没有充电的情况,会进入打盹状态,这时候app的位置服务,访问网络,cpu background-running 等后台服务会被停止,不允许定时任务,忽略wake locks,停止wifi scanner。
4、会影响app的保活,尤其对那些需要接受消息类的app。Google 推荐使用GCM。
5、后台优化
6、广播:
7、静态注册CONNECTIVITY_ACTION 广播将失效,只有动态注册才行。Android 5.0上可以使用JobScheduler在指定的网络条件运行你的任务,还可以通过ConnectivityManager registerNetworkCallback()来监听网络状态。
8、ACTION_NEW_PICTURE,ACTION_NEW_VIDEO广播已经去除,当然应用可以通过ContentResolver来监听。Android N上面可以JobScheduler来监听
9、二、 NDK 试用改变
10、限制只能试用平台公共api,否则你的应用会crash,最好只使用NDK中包含的api,否则系统被定制了可能会找不到你要链接的so,其次使用第三方so的时候也要注意对方有木有试用非法的so.
11、如图:
12、三、 Screen Zoom
13、用户最低可以改变到屏幕宽度为320dp,所以app最好能适配sw320dp,当你的 compile target < android N 时,当用户改变屏幕显示大小时,会杀掉后台进程(你的app会被干掉哦)
14、四、 Language and Locale
15、支持多用户多语言环境,提供新的API: LocaleList.GetDefault(),可以获取所有用户的语言环境。
16、同时app多语言查找策略改变,当你的app中不在当前语言环境的resources时,会找最接近的语言代替,而不是直接使用默认语言代替。如:你的app的Resources中只包含 es,和zh_cn,当用户的环境是zh_tw时,会用zh_cn代替。并且还支持自定义语言目录。
17、五、 Multi-Window Support
18、Android N机器上默认就支持Multi-Window,同一个屏幕可以运行多个app窗口。有两种模式,split-screen mode和picture-in-picture mode。app开启和关闭这两个模式很方便,在AndroidManifest.xml配置一下即可。
19、android:resizeableActivity=["true" | "false"]
20、android:supportsPictureInPicture=["true" | "false"]
21、这种模式在平板电脑上面很合适。
22、六、Notifications
23、Android N提供一些新的关于Notifications的API。
24、RemoteInput.Builder:使得用户可以在通知栏直接回复,这个很适合社交类app和短信app,以及可以应用到用户反馈中。
25、NotificationCompat.Builder.setGroup():可以使同一个app通知放在同一个分组。
26、NotificationManager:能让你知道你目前发了多少条通知,怎样通知进行分组。
27、七、Data Saver
28、当用户开启流量节省后,会禁止app在后台使用收费网络流量数据。甚至在前台使用流量时也会发出警告。
29、ConnectivityManager.isActiveNetworkMetered(),
30、ConnectivityManager.isActiveNetworkMetered(),
31、查询是否开启流量节省模式,自己是否在用户白名单中(对自己例外)
32、ConnectivityManager.ACTION_RESTRICT_BACKGROUND_CHANGED
33、监听用户开启流量节省模式
34、八、Network Security Configuration
35、能让app定制网络安全设置:
36、Debug-only overrides(自定义信用的CA)。
37、Debug-only overrides(自定义能调试你app信用的CA)
38、Cleartext traffic opt-out(防止网络请求明文交互)
39、Certificate pinning(自定义只信用包含特定公钥CA)
【#Android N 是什么#】到此分享完毕,希望对大家有所帮助。
标签:
免责声明:本文由用户上传,如有侵权请联系删除!