睿诚科技协会

Android 7.0有哪些核心新技术值得关注?

用户体验层面(用户能直接感受到的新特性)

这些是普通用户升级到 Android 7.0 后能立刻注意到和使用的新功能。

Android 7.0有哪些核心新技术值得关注?-图1
(图片来源网络,侵删)

多窗口模式

这是 Android 7.0 最受瞩目的功能之一,它允许用户在同一屏幕上同时使用两个应用。

  • 分屏模式: 用户可以将屏幕一分为二(水平或垂直),并同时运行两个应用,一边看视频,一边聊天。
  • 画中画模式: 当用户从主屏幕按键切换到另一个应用时,视频播放器等支持的应用会以一个小窗口的形式悬浮在屏幕上,用户可以继续观看视频的同时操作其他应用。

通知快捷回复

用户可以直接在通知栏里快速回复消息,而无需打开对应的App,这极大地提升了沟通效率,系统会智能识别短信、Hangouts、Android Messages 等应用的通知,并提供一个输入框让用户快速回复。

更强大的通知栏

  • 通知快捷设置: 通知栏的快捷设置区域现在支持拖动图标进行重新排序,用户可以根据自己的使用习惯来组织。
  • 直接回复: 除了快捷回复,部分应用的通知还支持直接输入长文本进行回复。

数据节省器

这是一个系统级的功能,旨在帮助用户减少移动数据流量消耗,当开启后,系统会限制后台数据使用,并智能预加载网页图片,从而节省流量。

快速设置面板的改进

下拉两次通知栏后进入的快速设置面板,图标更大,分组更清晰,操作更直观。

Android 7.0有哪些核心新技术值得关注?-图2
(图片来源网络,侵删)

VR 模式

Android 7.0 引入了专门的 VR 模式,通过优化系统渲染性能、降低延迟,为虚拟现实体验提供了更好的基础,这为后续 Daydream 平台的推出铺平了道路。


开发者技术层面(面向开发者的新API和底层改进)

这些是 Android 开发者最关心的部分,它们让应用更高效、更安全、功能更强大。

Java 8 语言功能支持

这是 Android 开发史上的一个里程碑,Android 7.0 Nougat 首次通过 Jack 编译工具链,为开发者支持了部分 Java 8 语言特性,让代码更简洁、更现代化。

  • Lambda 表达式: 简化匿名内部类的写法,尤其在事件监听和集合操作中。
  • Stream API: 提供强大的函数式操作来处理集合数据。
  • 方法引用: 让 Lambda 表达式的写法更简洁。
  • 默认/静态接口方法: 允许在接口中定义有实现的方法。

注意: 后续的 Android 工具链已全面转向使用 Java 8,并通过 desugar 库在旧版本 Android 上兼容这些特性。

Android 7.0有哪些核心新技术值得关注?-图3
(图片来源网络,侵删)

多窗口模式 API

为了支持多窗口功能,Android 7.0 提供了一系列 API,让开发者能更好地适配自己的应用。

  • Activity.isInMultiWindowMode(): 检测当前 Activity 是否处于多窗口模式。
  • Activity.onMultiWindowModeChanged(): 当模式切换时回调。
  • Activity.onConfigurationChanged(): 当屏幕尺寸因多窗口改变时回调。
  • android:resizeableActivity: 在 AndroidManifest.xml 中声明 Activity 是否支持多窗口。

开发者需要确保自己的 UI 能够适应不同的窗口尺寸,否则系统可能会对应用进行兼容性缩放。

通知渠道

虽然通知渠道在 Android 8.0 中才变得强制,但其基础是在 Android 7.0 中奠定的,它允许开发者将应用的通知进行分类管理(如“社交”、“更新”、“促销”等),用户可以在系统设置中精细地控制每个渠道的通知行为(如是否显示、是否震动等)。

后台执行限制

为了提升电池续航和系统流畅度,Android 7.0 对后台应用的行为进行了更严格的限制。

  • 广播限制: 隐式广播(不指定具体接收者的广播)的接收受到很大限制,开发者应尽量使用显式广播或使用 JobScheduler 来替代。
  • 启动服务的限制: 在后台应用(没有可见 Activity 的应用)中尝试启动一个 Service,会直接抛出 IllegalStateException,这旨在防止后台应用滥用 Service 来运行后台任务。
  • 推荐使用 JobSchedulerWorkManager: 对于后台任务,官方强烈推荐使用 JobScheduler (API 21+),它可以根据网络状态、充电状态等条件智能地执行任务。

Vulkan™ 图形 API

这是继 OpenGL ES 之后的下一代高性能、跨平台的 3D 图形和计算 API,相比 OpenGL ES,Vulkan 提供了更低的 CPU 开销、更少的驱动程序开销,以及更直接的 GPU 控制,能够充分利用多核 CPU 的性能,特别适合复杂的游戏和高性能图形应用。

直接启动

这是一个重要的安全特性,在 Android 7.0 之前,设备重启后,应用需要解锁设备后才能访问其内部存储的文件,Android 7.0 引入了“直接启动”模式,允许应用在设备解锁前访问特定的、标记为“不加密”的文件,这对于某些必须开机即运行的应用(如闹钟、短信)非常有用。

  • API: FLAG_DIRECT_BOOT_AWAREContext.createDeviceProtectedStorageContext()

应用快捷方式

类似 iOS 3D Touch,Android 7.0 引入了应用快捷方式功能,用户长按应用图标,会弹出几个常用功能的快捷入口,点击后可以直接进入应用的特定功能,无需层层点击。

  • 实现方式: 通过 ShortcutManager 创建和管理的 XML 资源文件。

增强的安全特性

  • 私有文件权限: 从 Android 7.0 开始,应用默认无法访问其他应用的私有文件(getFilesDir()),如果需要共享文件,必须使用 FileProvider
  • 严格模式下的网络: 在主线程上执行网络操作会抛出 NetworkOnMainThreadException,这个限制在 Android 7.0 中变得更加严格,旨在防止 ANR(应用无响应)。

APK 扩展文件

Android 7.0 引入了更灵活的 APK 扩展文件机制,允许开发者将核心功能打包到 APK 中,而将大型资源文件(如游戏的高清资源包)作为独立的 .obb 文件分发,这可以解决 Google Play 100MB 的 APK 大小限制问题。


Android 7.0 Nougat 是一个承前启后的重要版本,它不仅在用户体验上带来了革命性的多窗口模式,更在底层为开发者提供了强大的现代化工具,如Java 8 支持Vulkan 图形API和更严格的后台管理机制,这些技术改进共同推动了 Android 生态系统向更高效、更安全、更高性能的方向发展,为后续版本的演进奠定了坚实的基础。

分享:
扫描分享到社交APP
上一篇
下一篇