@qinyun
2017-10-26T13:46:48.000000Z
字数 3845
阅读 1619
未分类
在2017Google I/O开发者大会上,谷歌发布了Android Studio3.0预览版,昨天,谷歌推出了Android Studio 3.0的正式版和Android 8.1 Oreo开发者预览版,下面就让我们对新功能先睹为快吧。
按照谷歌的说法,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模拟器。
现在你可以通过这个链接
(https://developer.android.com/studio/index.html)下载适用于Windows,Mac和Linux的新版Android Studio 。如果你已经在使用Android Studio,您可以在导航菜单中获取最新版本(帮助=>检查Windows / Linux和Android Studio =>检查OS X上的更新)。
Android Studio 3.0包含了许多更新,包括:一套新的应用程序分析工具,用于快速诊断性能问题,支持Kotlin编程语言,以及新的向导工具,以加速您在最新的Android Oreo API上的开发。
Android Studio 3.0已经正式支持Kotlin,这样,你就可以无缝将Kotlin代码添加到你现有的Android应用代码中,并且可以去访问Android Studio中很棒的开发工具。
随着Jack 工具链的弃用和迁移到基于 javac 的工具链,你可以用 Java 8 在 Android Studio 中使用即时运行的功能。如果你想将你的项目更新以支持新的Java 8语言工具链,只需在“项目结构”对话框中将Source和Target的兼容级别更新为1.8。
Android Studio 3.0中的布局编辑器添加了很多新的增强功能:
(1)更新的组件树能更好地拖放和插入视图;
(2)新的错误面板;
(3)支持创建视图障碍和组,并增强链创建。
Android Studio 3.0将支持Android O,新的向导将创建一组启动器图标资源,并能在不同的设备上进行预览。
在Android Studio 3.0中,如果你想在Android的应用程序添加自定义字体,,则可以使用XML添加自定义字体和可下载字体。
Android Studio 3.0将允许你使用即时应用模块和功能模块来创建即时应用。
(https://developer.android.com/topic/instant-apps/index.html)
Android Studio 3.0允许你配置和调试APK,你不再需要从Android Studio 项目中去构建它们,只要你有APK的可调试版本,你就可以使用新的APK调试功能来分析、配置和调试APK。
更多Android Studio 3.0的功能可点击以下链接:
https://android-developers.googleblog.com/2017/10/android-studio-30.html
Android 8.1为开发者提供了一系列新功能和API,以及最新的优化、bug修复和安全修补程序。其中新的API主要有以下内容:
Android 8.1为Android Go(适用于内存为1GB以下的设备)提供了一个内存优化方案,添加了新的硬件特征常数
(https://developer.android.com/reference/android/content/pm/PackageManager.html#FEATURE_RAM_LOW),此后,你就可以将应用程序和APK拆分的分布定位到运行Android 8.1的普通或低版本的RAM设备上。
神经网络作为人工智能的重要组成部分,将人工智能引入安卓也是谷歌近几年的追求。
通过NDK添加神经网络API后(https://developer.android.com/ndk/guides/neuralnetworks/index.html),它为应用程序提供了用于机器学习的加速硬件,旨在通过调用机器学习库、框架和工具,让开发人员可以训练他们的模型并将其部署到Android设备上,这将在很大程度上提高设备的推理能力。
据了解,谷歌还将神经网络API神经为ML框架的基础层,如其即将推出的跨平台移动式ML框架TensorFlow Lite - Google和Caffe2等。
Android 8.1预览版为自动填充框架进行了改进,你可以将其纳入应用程序中。在使用密码管理器和其他自动填充服务的情况下,相比之前我们能更容易使用自动填充框架进行支持,而且添加了对“保存”对话框的更多自定义UI的支持。
Android 8.1预览版引入了一个新的SharedMemory类,这个新的API将允许应用程序分配共享内存,以便更快地访问通用数据。该类允许您创建,映射和管理由多个进程或应用程序使用的匿名共享内存。
Android 8.1预览版向管理器添加了两个新的硬件功能常量FEATURE_RAM_LOW和FEATURE_RAM_NORMAL。这些常数允许您将应用程序和APK分配的目标分配到普通或低RAM设备上。
这些常数使Play商店能够通过突出显示特别适合给定设备功能的应用来提升用户体验。
应用程序现在只能每秒钟发出一次通知警报,超过此频率,警报声音将会丢失。此更改不会影响其他的通知行为和通知消息,其他方面的通知信息仍按预期的方式发出。
在低RAM的Android设备上不支持NotificationListenerService和ConditionProviderService,当 ActivityManager.isLowRamDevice() 被调用时,返回真实值。
从API级别27开始,EditText.getText()方法返回一个Editable,之前它是返回一个CharSequence。更改之后,它向后兼容,因为Editable功能实现了CharSequence。
可编辑界面提供了宝贵的附加功能。例如,由于Editable还实现了Spannable接口,因此可以对EditText实例中的内容应用标记。
通过使用安全浏览API的WebView,您的应用程序可以检测WebView是否导航到已被Google分类为已知威胁的URL上。默认情况下,WebView会显示一个插页式广告,警告用户已知的威胁,并给予他们加载网址的选项,或返回到安全的上一页。
在Android 8.1开发人员预览中,您可以通过编程方式定义应用程序如何响应已知的威胁:
你可以控制你的应用程序是否报告浏览到已知的威胁。
你可以让自己的应用程序自动执行特定操作,例如每次浏览到已知威胁的URL时,回到安全状态。
Android 8.1预览版增加了对壁纸颜色管理的支持。此功能允许您从位图、绘制图或通过使用过的前三个最具视觉代表性的颜色中创建一个WallpaperColors对象。您还可以修改壁纸的前三个显眼颜色的细节。
MediaMetadataRetriever类有一个新的方法getScaledFrameAtTime(),它可以在给定的时间、位置附近找到一个帧,并返回与源帧具有相同宽高比的位图,但是可以缩放以适应给定宽度和高度的矩形,这对于从视频生成缩略图图像来说是很有用的。
我们建议使用这种方法,而不是getFrameAtTime(),因为getFrameAtTime()可能会浪费内存,因为它返回的位图将会与源视频具有相同分辨率。例如,来自4K视频的位图将是16MB,远远大于你需要的缩略图的大小 。
FingerprintManager类引入了以下错误代码:
FINGERPRINT_ERROR_LOCKOUT_PERMANENT - 用户使用指纹读取器解锁设备的操作次数太多。
FINGERPRINT_ERROR_VENDOR - 特定供应商的指纹读取器错误。
更多Android 8.1预览版的详细信息,可通过以下链接查看:
https://developer.android.com/preview/api-overview.html
因为12月份会向消费者推出Android 8.1,现在测试你的应用就显得很重要,因为这样可以在其正式发布的时候让你的设备无缝切换到Android 8.1。
如果你的设备符合Android测试版中注册条件,即可获得最新更新,然后从Google Play安装您的应用并进行测试。如果您没有Nexus设备,您可以设置一个Android 8.1模拟器进行测试。如果发现任何问题,可以立即修复它们,并在Google Play更新您的应用,而无需更改应用的平台定位。