Google在自己的Android官方Blog上发布了继Marshmallow(M)系统后又一代android N系统(好奇宝宝们可以猜测一下N是哪一款甜品(:з」∠))。Anyway大致根据官博翻译了一下N系统的一些新特性,大家可以看着玩玩。
附官博地址:
http://android-developers.blogspot.com/2016/03/first-preview-of-android-n-developer.html
水平有限,我就按照自己的理解来大致描述一下博客的内容了,有疏漏错误指出敬请指正!
本次的的N Preview比往年发布的时间都要早,官方说法是可以更早更快的来获取开发者们的反馈,并且能更早的着手推出正式版N系统(和iOS争市场份额?)。在Blog中列举了一些N API的重要特性:
- 多任务窗口-分屏模式
在N当中,工程的Manifest配置文件当中加入了新的属性
android:resizableActivity=true
当该属性设置为true时,在Android手机或者平板上就可以像PC一样在同一个屏幕上同时显示多个App界面,如下图。(Multi-Window)
当然可以设置屏幕显示的最小尺寸,如果用户在拖动的时候小于 这个尺寸了就无法再缩小了。在生命周期方面,可以参考,应用从横屏(landscape)切到竖屏(Portrait)模式的生命周期。Activity本身可以自动适应生命周期的变化,允许系统调用onStop()方法,并重新创建新的尺寸的Activity。同时,Activity也支持画中画模式(picture-in-picture),什么是画中画呢?简单来说就是类似于视频悬浮窗的效果,可以参考网易新闻里面新闻视频播放的效果,虽说好多应用已经做出来了,但这次Google是把它加进了官方系统里了,以后做类似的效果应该会更加容易。加画中画效果,可以设置属性:
android:supportsPictureInPicture=true
- 直接回复通知信息
关于这一点挺简单的,用过iOS的人都知道,在锁屏界面上只要来了短信就可以在锁屏界面上直接回复,不需要进入短信界面。在N中,调用RemoteInput API可以方便快速地让用户回复推送过来的消息通知。(Direct reply notifications) - 通知捆绑
在N中,可以调用Notification.Builder.setGroup()
方法将来自同一个App的一组消息压缩成一条通知,同时可以通过两个手指的TouchEvent或者点击一个扩展的按钮将这组消息重新拆分成单条消息。(Bundled Notifications) - 更加高效
在M系统中,用户可以在不使用手机时开启Doze模式来节省电量,在N中则更近一步,屏幕只要休眠黑屏了就会出发Doze模式。当然这需要在自家的App中调用代码去实现Doze。在内存方面也做了优化,这里安利一个类JobScheduler,类似于一个任务时刻表,根据时间去安排一项项程序任务,在网络传输方面的开发很有用。(JobScheduler) - 增加了Java 8的支持
这实在是用Java编程的开发者们的福音,如用Java 8的lambdas,可以大大减少模版式的代码。另外像静态方法、流、功能接口等同样在N的开发中可以使用。
最后贴一下,在工程中设置N Preview的流程:
https://developer.android.com/intl/zh-cn/preview/setup-sdk.html?utm_campaign=android_launch_n_030916&utm_source=anddev&utm_medium=blog
感兴趣的童鞋可以玩起来了!