27
2017
09

Android O 新特性

Android后台执行限制(Backgroud Execution Limites)
1.1大多数隐式接收的广播不再会被调用。
有部分广播被豁免,显示意图广播没有影响。
1.2后台Services只会运行很短时间,可见的Activity和前台Service。
1.3非前台运行的APP将禁止调用startService()和PendingIntent()方法,否则会IllegalStateException。前台Service不变。
1.4New API,NotificationManager.startServiceInForeground(); 用于直接开启前台服务,携带Notification和ID。
1.5及时你应用并不针对Android O也会有如下几个变化:
1),当你的应用进入缓存阶段,那就是说,没有启动的安卓组件,WakeLock 将会被释放。
2),位置更新也会发生变化。需要后台更新地点的应用,只能每小时有几次有限的更新。前台服务没有影响。
Android ID在Settings.Secure 里的变化
在Android O中,它会为不同的应用返回不同的ID,意味着,定制了每个用户,每个应用的范围。
通知渠道 — Notification Channels
通知渠道是由应用自行定义的通知内容类别,借助渠道,开发者可以让用户对不同种类的通知进行精细控制,用户可以单独拦截或更改每个渠道的行为,而不是统一管理应用的所有通知。
创建通知渠道的步骤:
1).创建 NotificationChannel 对象,并设置应用内唯一的通知 ID。
2).配置通知渠道的属性,比如提示声音等。
3).在NotificationManager 中注册通知渠道对象。
自动填写框架 Autofill Framework
自动填写应用有责任存储和保护用户数据,比如地址、信用卡号、密码等。
画中画 Picture in Picture
1). 关于生命周期
PIP 模式不会改变 Activity 的生命周期。在指定时间只有最近与用户交互过的 Activity 为活动状态。 该 Activity 将被视为顶级 Activity。 所有其他 Activity 虽然可见,但均处于暂停状态。当一个 Activity 处于 PIP 模式时,其实它是出在暂停状态,但其内容会继续展示。
2).API变更
在 Android O 中新增 PictureInPictureArgs 对象来指明你的 Activity 在 PIP 模式中的属性,比如长宽比等。
Android O 还新增了以下方法来支持 PIP。
Activity.enterPictureInPictureMode(PictureInPictureArgs args):将Activity置于 PIP 模式之下。
Activity.setPictureInPictureArgs():用于更新 Activity 在 PIP 模式下的设置。如果 Activity 正处于 PIP 模式之下,那么更改的属性将立即生效。
Font Resources
使用
这里写图片描述
代码实现:Typeface font=mResources.getFont(R.font.samplefont)。
其他特性请参考Google官方文档!

上一篇:RC复位电路中二极管的作用 下一篇:报错:cannot create __weak reference in file using manual reference counting