【T112017-技术驱动未来分会场】What+is+New+in+Android+O_36页_11mb
报告摘要
Android O 新特性总结
核心内容
Android O 是 Google 推出的新版本系统,为开发者提供了多项改进和新功能,以提升应用性能、兼容性及用户体验。以下为文档中提到的核心内容、主要观点和关键信息的总结。
开发者的优先任务
兼容性
- 在新平台上测试现有应用程序。
- 根据需要进行修改。
- 发布更新(目标非 O)。
基于 O 的开发
- 使用新的功能和 API。
- 支持新的系统行为。
- 发布包含新 API 的更新(目标为 O)。
重要事项
目标
- 基于关注程度进行排序。
视觉稳定性
- 保持应用界面的稳定性。
通知渠道
- 设置通知类别,之后由用户控制。
通知标志
- 仅指用户尚未撤销或回应的通知,依然由用户控制。
浮动层
- 新的浮动层(TYPE_APPLICATION_OVERLAY)位于系统窗口之下,如锁屏。
- 用户可以轻松管理这些浮动层。
后台限制
- 内存 / 电池性能提升:后台服务在空闲时会被停止,绑定服务不受影响。
- 位置限制:
- 前台服务行为与 API 25 相同。
- 后台程序每小时只能接受几次位置更新。
- 传感器:
- 支持 VR 的直接传感器通道。
- 未校准的加速度计和校准算法。
- 低延迟的 Off Body Detector。
Android Support Library
- Min SDK 版本为 14,减少了 1400 个函数方法。
- 新的 SDK 版本 25.3 和 26.0。
- 新的问题追踪器 (issue tracker)。
- 新增功能:
- XML 字体。
- 可下载字体。
- Emoji 兼容库。
- 自动调整字体大小的 TextView。
- 动态动画。
- VectorDrawableCompat 和 AnimatedVectorDrawableCompat。
- 支持 Wear 和 Leanback。
- PreferenceDataStore。
- FrameMetricsAggregator。
- ActionBarDrawerToggle.setDrawerSlideAnimationEnabled()。
新的功能
72dp 外延 108dp (66dp 安全区)
- 提供了新的外延和安全区域定义,便于 UI 设计。
固定快捷键和小固件
- 弃用 INSTALL_SHUTDOWN 广播。
- 引入 ShortcutManager.requestPinShortcut() 和 AppWidgetManager.requestPinAppWidget()。
其他 UI 功能
- 画中画:不再仅限于 Android TV。
- 多显示器:支持多窗口,适用于多显示器环境。
- 颜色管理:支持宽色域显示器。
- AnimationSet:支持 setCurrentPlayTime(long) 和 reverse()。
自动填充框架
- 提供更好的性能、安全性和隐私性。
媒体改进
- getMetrics():获取编解码器、时长、比特率等信息。
- 播放:改进的缓冲控制和寻址功能。
- 录制:支持 MPEG-2 TS 流格式、任意数量的音频/视频轨道、元数据轨道。
- AAudio Native API:比 Open SLES 更容易使用,支持 Pro Audio。
WebView
- 多进程安全性:提升崩溃和低内存情况下的稳定性。
- Version API:提供版本控制。
- Google Safe Browsing API:增强安全性。
- XML 字体:支持从代码或 XML 中加载字体。
- 自动调整字体大小的 TextView:提升可读性。
辅助功能
- 视力障碍:
- 支持 Accessibility Volume、Fingerprint Gestures、多语言 TTS。
- Accessibility Shortcut。
- 阅读障碍:
- Select to Speak 功能。
- 开发者工具:
- Continuous Gestures API。
- Accessibility button in Navigation Bar。
- Accessibility Scanner。
- Accessibility test framework。
StrictMode
- 无缓冲的 I/O(ThreadPolicy)。
- 未标记的 sockets(VmPolicy)。
- 未设置权限的 Content URI(VmPolicy)。
媒体文件访问与缓存管理
- 可寻址文件描述符:适用于大型远程数据源。
- StorageManager:提供缓存配额查询和管理功能。
情境体验(Contextual Experience)
- Wi-Fi 感知(Neighbor Awareness Networking):
- 发现并直接连接相邻设备。
- 比 Wi-Fi P2P 更可靠,支持更高吞吐率。
- Nearby + Awareness(Google Play Services):
- 支持多种情境类型,如 Location、Place、Beacons、Time、Activity、Headphones、Weather。
Google Play Console 更新
- 新功能:
- Android Vitals:提供可采取行动的系统健康数据。
- App signing:提升应用签名安全性。
- Device catalog:设备目录。
- Release dashboards:发布仪表盘。
- Subscriptions dashboards:订阅仪表盘。
- 更新内容:
- Pre-launch reports。
- Statistics page。
- Acquisition reports。
- Reviews analysis。
Android Go
- 数据管理和节约:
- 支持 Chrome Data Saver 和 YouTube Go。
- 优化:
- Apk 小于 10MB。
- 针对电池和内存进行优化。
- 多语言支持:
- GBoard 的多语言支持。
- Build for billions。
Lifecycle Aware Components
- Lifecycle:跟踪组件生命周期状态。
- LiveData:感知 Lifecycle,自动管理订阅。
- ViewModels:管理 UI 数据,不访问 Views 或持有资源。
- Room:提供流畅的数据库访问,支持原始 SQL。
新语言支持
- Kotlin 官方支持:
- 与 Java 互通。
- 成熟,可用于生产环境。
- 开源。
- Java 8 更新:
- 支持 java.time、java.nio.file、java.lang.invoke。
参考信息
系统健康
- Android Vitals:提供系统健康数据,如 ANR 率、崩溃率、慢渲染、冻结帧、Wake Locks、过度唤醒等。
- 电池管理:
- Battery Saver 自动开启。
- 自适应亮度。
- 睡眠模式。
开发工具
- Kotlin 和 Java 8:官方支持。
- Adaptive Icons:新的图标系统。
- Android Things:物联网平台。
编译优化
- Instant App 支持。
- 编译速度提升。
- Google Maven Repository:使用
maven { url 'https://maven.google.com' }。
测试工具
- Play Store:支持 OpenGL ES 3.0。
- Bug Report:提供详细错误信息。
- Device File Explorer:用于文件系统调试。
- Android Wear:支持 Wear 设备。
优化工具
- CPU Profiler、Memory Profiler、Network Profiler。
- APK Analyzer Improvement:优化 APK 分析。
Android Gradle Builds
- 使用最新 Android Gradle Plugin。
- 避免旧版本 multidex。
- 禁用 multi-APK,包含最少资源。
- 禁用 PNG 压缩。
- 使用 Instant Run。
- 避免动态版本。
- 注意内存监测。
- 启用 Gradle 缓存。
- Android Gradle Plugin 3.0:支持多模块项目,使用 Gradle Profiler 处理性能问题。
ART 性能 / 内存改进
- DEX 文件加载优化:减少 1/3 内存使用。
- 新的垃圾回收器:并发压缩(减少长时间 GC 停顿),GC 读屏障。
- 堆压缩:前台进行堆压缩,减少堆大小,加快收集和分配速度。
安全性改进
硬件强化
- Verified Boot:防止回滚,加强解锁。
- 加密:FBE 增强,密钥弹出。
- 安全锁屏:支持防篡改硬件。
- 权限更新:
- 更新 overlay API。
- 移除大部分持久 ID 的访问。
- 更新 Instant Apps 权限模型。
- 对抗勒索软件:使用 SYSTEM_ALERT_WINDOW 权限。
- 隐私控制:移除对持久设备标识符的访问。
- 沙盒与隔离:通过 Project Treble 实现硬件隔离。
- SELinux 效果:提升系统安全。
内核强化
- Seccomp:减少内核攻击面。
应用安全性
- WebView 安全性:隔离渲染进程,支持 Safe Browsing。
- 设备和用户认证:
- Keystore key attestation。
- 支持 FIDO U2F 安全密钥。
总结
Android O 在兼容性、性能、安全性、UI 功能等方面提供了多项改进,为开发者提供了更强大的工具和 API,同时增强了用户体验和系统稳定性。主要改进包括后台限制、新的浮动层、自动填充框架、媒体和 WebView 的优化、辅助功能增强、ART 性能提升、以及安全机制的强化。这些变化要求开发者在开发和测试过程中关注新的 API 和系统行为,以确保应用的兼容性和高效运行。
展开完整摘要
试读结束,高清完整版pdf/doc/ppt,请点下载