logo
当前位置:首 页 > 移动开发 >android > 查看文章
在 2017Google I/O 开发者大会上,谷歌发布了 Android Studio3.0 预览版,昨天,谷歌推出了 Android Studio 3.0 的正式版和 Android 8.1 Oreo 开发者预览版,下面就让我们对新功能先睹为快吧。

不止 Android 8.1 Oreo 开发者预览版,Google 还正式发布了 Android Studio 3.0 ,为其 IDE 引入了一系列新功能。早在今年 5 月份举办的 I/O 2017 开发者大会上,Google 就承诺过带来对 Kotlin 语言的支持。作为一款有表现力的简洁语言,它可以与现有的 Android 语言和运行时互操作。根据 App 的需求,开发者可以或多或少地使用。

Android Studio 3.0 专注于加速 Android 应用开发,包含大量更新内容,主要分为三个功能块,包括:

  • 一套用于快速诊断性能问题的新的应用程序分析工具;
  • 支持 Kotlin 编程语言;
  • 用于加速在最新的 Android Oreo API 上开发的新工具。
Android Studio 3.0

Android Studio 3.0 包含了许多更新,包括:一套新的应用程序分析工具,用于快速诊断性能问题,支持 Kotlin 编程语言,以及新的向导工具,以加速您在最新的 Android Oreo API 上的开发。

 支持 Kotlin 编程语言

Android Studio 3.0 已经正式支持 Kotlin,这样,你就可以无缝将 Kotlin 代码添加到你现有的 Android 应用代码中,并且可以去访问 Android Studio 中很棒的开发工具。

  • Kotlin 编程语言支持 —— 正如谷歌在 Google I / O 2017 所宣布的那样,Kotlin 编程语言已被官方支持用于 Android 开发。此版本的 Android Studio 是第一个支持 Kotlin 语言的里程碑式版本。许多深受欢迎的功能(如代码自动补全和语法高亮显示)在本版本中都可以正常工作,后续将继续改进编辑器功能。你可以选择使用“Code → Convert Java File to Kotlin File”中的内置转换工具将 Kotlin 添加到项目中 ,或使用“ New Project Wizard 新建项目向导”创建启用 Kotlin 的项目。

 支持 Java 8 语言功能
Java 8 特性支持改进 —— 该版本继续改进对 Java 8 语言特性的支持,新增了 migration to a javac 工具链,在项目中使用 Java 8 语言功能更加容易。

随着 Jack 工具链的弃用和迁移到基于 javac 的工具链,你可以用 Java 8 在 Android Studio 中使用即时运行的功能。如果你想将你的项目更新以支持新的 Java 8 语言工具链,只需在“项目结构”对话框中将 Source 和 Target 的兼容级别更新为 1.8。

  • Layout Editor 改进 —— 更好的拖放插入和新的报错通知。
  • Adaptive Icon Wizard
  • XML Fonts & Downloadable Fonts  ——如果是针对 Android Oreo 开发的 Android 应用则现在可以使用 Android Studio 3.0 添加自定义字体和可下载字体。
  • Android Things Support —— 在“新建项目”和“新建模块”向导中包含一组新的模板,以支持 Android Things 平台。
  • IntelliJ Platform Update —— 内置 IntelliJ 2017.1 版本。
 改进布局编辑器

Android Studio 3.0 中的布局编辑器添加了很多新的增强功能:

(1)更新的组件树能更好地拖放和插入视图;

(2)新的错误面板;

(3)支持创建视图障碍和组,并增强链创建。

 支持自适应图标向导

Android Studio 3.0 将支持 Android O,新的向导将创建一组启动器图标资源,并能在不同的设备上进行预览。

 支持 XML 字体预览

在 Android Studio 3.0 中,如果你想在 Android 的应用程序添加自定义字体,,则可以使用 XML 添加自定义字体和可下载字体。

 构建,支持 Instant App

Android Studio 3.0 将允许你使用即时应用模块和功能模块来创建即时应用。此前Google曾发布过Instant Apps SDK,详情请跳转Google发布Android Instant Apps SDK 1.1进行阅读。

  • 支持构建即时应用( Instant App)

  • 构建速度改进
  • Google 的 Maven 仓库变更
 APK 调试

Android Studio 3.0 允许你配置和调试 APK,你不再需要从 Android Studio 项目中去构建它们,只要你有 APK 的可调试版本,你就可以使用新的 APK 调试功能来分析、配置和调试 APK。

优化

  • CPU Profiler
  • Memory Profiler
  • Network Profiler
  • APK Analyzer 改进

测试和调试

  • Emulator Google Play System Images

  • Emulator OpenGL ES 3.0 Support
  • Emulator Proxy Support
  • App Bug Reporter
  • Android Wear Rotatory
  • Android Emulator Quick Boot (Canary)
  • APK Debugging
  • Layout Inspector
  • Device File Explorer

更多 Android Studio 3.0 的功能可点击以下链接:

https://android-developers.googleblog.com/2017/10/android-studio-30.html

Android 8.1 预览版功能

Android 8.1 为开发者提供了一系列新功能和 API,以及全平台最新优化、漏洞修复和安全补丁,同时还添加了一些新功能和新开发者 API (API level 27) 。其中新的 API 主要有以下内容:

 Android Go 内存优化

Android 8.1 为 Android Go(适用于内存为 1GB 以下的设备)提供了一个内存优化方案,添加了新的硬件特征常数,此后,你就可以将应用程序和 APK 拆分的分布定位到运行 Android 8.1 的普通或低版本的 RAM 设备上。

链接:

https://developer.android.com/reference/android/content/pm/PackageManager.html#FEATURE_RAM_LOW

 神经网络 API

神经网络 API:作为向 Android 引入机器学习计划的一部分,Google 通过 NDK 加入神经网络 API。它使得在设备上实现硬件加速的推理(inference)操作。并设计了神经网络 API 用于机器学习框架的一个功能层, 如 TensorFlow Lite —— 谷歌将要推出的移动设备跨平台机器学习框架,以及其他 API, 例如 Caffe2 。

神经网络作为人工智能的重要组成部分,将人工智能引入安卓也是谷歌近几年的追求。

通过 NDK 添加神经网络 API 后,它为应用程序提供了用于机器学习的加速硬件,旨在通过调用机器学习库、框架和工具,让开发人员可以训练他们的模型并将其部署到 Android 设备上,这将在很大程度上提高设备的推理能力。

据了解,谷歌还将神经网络 API 神经为 ML 框架的基础层,如其即将推出的跨平台移动式 ML 框架 TensorFlow Lite – Google 和 Caffe2 等。

 更新自动填充框架

Autofill 框架升级:开发者预览版一直努力扩展 Autofill 框架,改善密钥管理和其他 Autofill 服务的使用体验。在此次升级中,可以处理一些来自开发者的请求,并且添加了一些功能和 API。例如,增加了 Autofill 服务在管理保存(Save)对话框方面的灵活度:支持定制化对话框,管理对话框内文字,可以通过验证程序决定是否显示文字。同时,Service 还可以通过 setAutofillOptions 简化信用卡到期日的设定。

Android 8.1 预览版为自动填充框架进行了改进,你可以将其纳入应用程序中。在使用密码管理器和其他自动填充服务的情况下,相比之前我们能更容易使用自动填充框架进行支持,而且添加了对“保存”对话框的更多自定义 UI 的支持。

共享内存 API

共享内存 API:这款新 API 能够让 App 分配共享内存,更快速读取到共享数据。App 可以通过此 API 创建并且映射匿名共享内容,同时对此进行保护控制。这个 API 在支持自定义序列化 (parcelable) 的同时对 AIDL (Android Interface Definition Language) 友好,还开放了一些实用的功能如移除写入权限等。

Android 8.1 预览版引入了一个新的SharedMemory类,这个新的 API 将允许应用程序分配共享内存,以便更快地访问通用数据。该类允许您创建,映射和管理由多个进程或应用程序使用的匿名共享内存。

 提升低内存设备的性能

Android Go 内存优化和支持 —— Android 8.1 包含的一系列针对 Android Go(1GB 或更少的运行内存) 设置的内存优化:增加了两个 FEATURE_RAM_LOW  和FEATURE_RAM_NORMAL 硬件特性常量,帮助开发者可以针对普通配置或者低内存的 Android 8.1 以上设备分发应用时有效拆分 APK。

Android 8.1 预览版向管理器添加了两个新的硬件功能常量FEATURE_RAM_LOW和FEATURE_RAM_NORMAL。这些常数允许您将应用程序和 APK 分配的目标分配到普通或低内存设备上。

这些常数使 Play 商店能够通过突出显示特别适合给定设备功能的应用来提升用户体验。

通知

应用通知:每个应用程序的通知铃声被限制为每秒一个,超过该频率的通知将不会出现在通知队列中并且丢失。

应用程序现在只能每秒钟发出一次通知警报,超过此频率,警报声音将会丢失。此更改不会影响其他的通知行为和通知消息,其他方面的通知信息仍按预期的方式发出。

在低内存的 Android 设备上不支持NotificationListenerService和ConditionProviderService,当 ActivityManager.isLowRamDevice() 被调用时,返回1。

 EditText 更新

从 API 级别 27 开始,EditText.getText()方法返回一个Editable,之前它是返回一个CharSequence。更改之后,它向后兼容,因为Editable功能实现了CharSequence。

可编辑界面提供了宝贵的附加功能。例如,由于 Editable 还实现了 Spannable 接口,因此可以对 EditText 实例中的内容应用标记。

 程式安全浏览操作

通过使用安全浏览 API 的 WebView,您的应用程序可以检测 WebView 是否导航到已被 Google 分类为已知威胁的 URL 上。默认情况下,WebView 会显示一个插页式广告,警告用户已知的威胁,并给予他们加载网址的选项,或返回到安全的上一页。

在 Android 8.1 预览版中,您可以通过编程方式定义应用程序如何响应已知的威胁:

  • 你可以控制你的应用程序是否报告浏览到已知的威胁。
  • 你可以让自己的应用程序自动执行特定操作,例如每次浏览到已知威胁的 URL 时,回到安全状态。
 WallpaperColors API

Android 8.1 预览版增加了对壁纸颜色管理的支持。此功能允许您从位图、绘制图或通过使用过的前三个最具视觉代表性的颜色中创建一个 WallpaperColors 对象。您还可以修改壁纸的前三个显眼颜色的细节。

 视频缩略图提取器

MediaMetadataRetriever类有一个新的方法getScaledFrameAtTime(),它可以在给定的时间、位置附近找到一个帧,并返回与源帧具有相同宽高比的位图,但是可以缩放以适应给定宽度和高度的矩形,这对于从视频生成缩略图图像来说是很有用的。

我们建议使用这种方法,而不是getFrameAtTime(),因为getFrameAtTime()可能很费内存,因为它返回的位图将会与源视频具有相同分辨率。例如,来自 4K 视频的位图将是 16MB,远远大于你需要的缩略图的大小 。

 指纹更新

FingerprintManager 类引入了以下错误代码:

  • FINGERPRINT_ERROR_LOCKOUT_PERMANENT – 用户使用指纹读取器解锁设备的操作次数太多。
  • FINGERPRINT_ERROR_VENDOR – 特定供应商的指纹读取器错误。

曾仅用 55 秒发布会的 Android 8.0 Oreo 在时隔两个月后,Google 于今天在其官方网站上正式发布了 Android 8.1 首个开发者预览版,此次升级涵盖了针对多个功能的提升优化,其中包含对 Android Go (设备运行内存小于等于 1 GB)和加速设备上对机器学习的全新神经网络 API(Neural Networks API)。也基于 Oreo 用户与开发者的反馈做出了对应的局部优化。正式版 Android 8.1 预计会在 12 月发布。

而本次 Android 8.1 预览版的发布,对于其他手机来说,或许只是个小改版升级,但对于 Pixel 2 系列手机来说,则是至关重要的。在升级 Android 8.1 之后,Pixel 2/XL 手机中的那枚被“雪藏”的 Pixel Visual Core 将被激活,届时将会带来更加出色的拍照体验等。大家都知道,由于新算法的加持,Pixel 2 手机即使依然采用的单摄方案,但是在 DxOMark 手机拍照排行榜上,这款手机可是击败众多双摄手机登顶的。

相关链接

  • Android 8.1 开发者预览版详细内容:https://developer.android.google.cn/preview/api-overview.html
  • Android 8.1 开发者预览版下载地址:https://developer.android.com/preview/download.html
  • Android Studio 3.0 详细内容:https://android-developers.googleblog.com/2017/10/android-studio-30.html

更多 Android 8.1 预览版的详细信息,可通过以下链接查看:

https://developer.android.com/preview/api-overview.html

 关于下载

按照谷歌的说法,Android 8.1 的正式版将在今年 12 月份推出,已经注册谷歌账号的开发者,就可以在 Pixel 或 Nexus 设备上下载 Android 8.1 Oreo 开发者预览版,目前支持 Android 8.1 预览版的有:Pixel 2、Pixel 2 XL 设备,以及 Pixel,Pixel XL,Pixel C,Nexus 5X,Nexus 6P 和 Android 模拟器。

现在你可以通过以下链接下载适用于 Windows,Mac 和 Linux 的新版 Android Studio 。如果你已经在使用 Android Studio,你可以在导航菜单中获取最新版本(帮助 =>检查 Windows / Linux 和 Android Studio =>检查 OS X 上的更新)。

链接:

https://developer.android.com/studio/index.html

说说梦想,谈谈感悟 ,聊聊技术,有啥要说的来github留言吧 https://github.com/cjx2328

—— 陈 建鑫

陈建鑫
footer logo
未经许可请勿自行使用、转载、修改、复制、发行、出售、发表或以其它方式利用本网站之内容。站长联系:cjx2328#126.com(修改#为@)
Copyright ©ziao Studio All Rights Reserved. E-mail:cjx2328#126.com(#号改成@) 沪ICP备14052271号-3