欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~

背景介绍

谷歌2017 I/O开发者大会今年将于5月17-19日在美国加州举办。大会将跟往年一样发布最新的 Android 系统,今年为 Android 8.0。谷歌在今年3 月21日发布 Android 新系统开发者预览版时已给新系统取名为 Android O。自2008 年发布以来, Android 依靠 Google 的生态运作,全球市场份额在2016年底已超过85% 。而近几年依靠 Android 发展起来的智能手机厂商不断增加, Android 生态大家庭也正在不断壮大。

Android O 是 Google 发布的第14个新系统版本。 那备受开发者关注的 Android O 有哪些新特性,开发者需要关注哪些问题呢?腾讯云乐固团队结合相关文档对此进行了分析总结,我们一起来看看 Android O 的新特性及开发指南。

Android O 新特性一介绍以及开发指南

通知渠道 — Notification Channels

通知渠道是由应用自行定义的通知内容类别,借助渠道,开发者可以让用户对不同种类的通知进行精细控制,用户可以单独拦截或更改每个渠道的行为,而不是统一管理应用的所有通知。

开发指南

创建通知渠道的步骤:

  1. 创建 NotificationChannel 对象,并设置应用内唯一的通知 ID。
  2. 配置通知渠道的属性,比如提示声音等。
  3. 在 NotificationManager 中注册通知渠道对象。

Android O 新特性二介绍以及开发指南

画中画模式 — PIP

Android O 现已支持 Activity 的画中画模式。PIP 是一种多窗口显示模式,多用于视频播放,即你可以一边发微信一边看视频。

△ 画中画模式图示

开发指南

1> 关于生命周期

PIP 模式不会改变 Activity 的生命周期。在指定时间只有最近与用户交互过的 Activity 为活动状态。 该 Activity 将被视为顶级 Activity。 所有其他 Activity 虽然可见,但均处于暂停状态。当一个 Activity 处于 PIP 模式时,其实它是出在暂停状态,但其内容会继续展示。

2> API变更

在 Android O 中新增 PictureInPictureArgs 对象来指明你的 Activity 在 PIP 模式中的属性,比如长宽比等。

Android O 还新增了以下方法来支持 PIP。

  1. Activity.enterPictureInPictureMode(PictureInPictureArgs args):将Activity置于 PIP 模式之下。
  2. Activity.setPictureInPictureArgs():用于更新 Activity 在 PIP 模式下的设置。如果 Activity 正处于 PIP 模式之下,那么更改的属性将立即生效。

Android O 新特性三绍以及开发指南

自适应图标 — Adaptive Icons

Android 的屏幕适配一直以来都折磨着不少的开发者。为了帮助开发者更好的与设备 UI 集成,Android O 支持创建自适应图标,系统可以基于设备选择的蒙版将这些图标显示为不同形状。系统还将实现与图标的自动交互,并在启动器、快捷方式、设置、共享对话框以及概览屏幕中使用它们。

△ Android O 支持创建自适应图标图示

开发指南

1> 自适应图标支持多种形状

通过定义两张图层(前景与背景)你可以制定你的桌面图标外观,你必须提供没有形状和阴影的 PNG 格式图象作为图层。

△ 多形状桌面图标外观图示

2> 自适应图标由两张图层和一个形状来定义

在以前的 Android 版本中,图标大小定义为 48 x 48 dp。现在你必须按照以下的规范定义你的图层大小:

  1. 两张图层大小都必须为 108 x 108 dp。
  2. 图层中心 72 x 72 dp 范围为可视范围。
  3. 系统会保留四周外的 36dp 范围用于生成有趣的视觉效果(如视差和跳动)。

3> 创建你的自适应图标

首先你需要在 Application 标签中加入 Android:icon 属性,定义你的 icon 图标。其次如果你需要创建一个原型的 icon,你还需要加入 Android:roundIcon 属性。

接下来,你需要 res/mipmap-anydpi/ic_launcher.xml 文件中定义您的图层。在 选项中加入您的前景和背景图层。

Android O 新特性四介绍以及开发指南

固定快捷方式和小部件 — Pinning shortcuts

Pinning shortcuts 是一个比 APP shortcuts 更小的快捷方式,放置于桌面上,用于更快速的打开某一 APP 的某单一任务。Pinning shortcuts 在桌面上可呈现不同的图标显示。

△ 固定快捷方式和小部件图示

开发指南

  1. 首先使用 isRequestPinShortcutSupported() 方法校验手机是否支持启动这种快捷方式。
  2. 创建 ShortcutInfo 对象。
  3. 用 requestPinShortcut() 方法应用 Pinning shortcuts。你可以通过 PendingIntent 来通知你的 shortcuts 有没有创建成功。

Android O 其他特性介绍

除了以上几个新特性以外,Android O 还未增加了其他的功能。比如增加了 Autofill Framework,方便用户在不同 APP 之间填写信息。比如开放 android.permission.ANSWER_PHONE_CALLS,以后在自己的 APP 里也可以对来电做响应。

在性能优化上,Android O 还对隐式广播、后台服务和位置更新等进行了后台自动限制,以此来增加手机电池寿命。并对 Java 8 Language API 和 Runtime 进行了优化,使应用的运行速度更快,手机使用更流畅。

今年谷歌2017 I/O 开发者大会还会带来什么你期待的呢?我们也将持续关注。

总结

Android 每次的更新,虽然表面上没有非常惊艳的新功能,但在内部,Google 为 Android 的性能做了很多的优化,让 Android 更快更强更有内涵。

目前 Android 的市场占比已经超过85%,智能手机已经全面普及,对于广大手机厂商来说,适配 Google 的系统版本更新迭代是一个挑战。对于开发者来说,让自己的 APP 兼容新系统是首要任务。

腾讯作为中国安卓绿色联盟的创始企业,也不断在为 Android 生态做出贡献。腾讯云乐固团队也是紧跟 Google 的步伐,目前已全面兼容 Android O 。欢迎广大开发者体验试用。

体验地址:https://www.qcloud.com/product/ms

参考文档链接:
https://developer.android.com/preview/index.html

相关阅读

深度了解Android 7.0 ,你准备好了吗?
Android动态库压缩壳的实现
Android GC 那点事


此文已由作者授权腾讯云技术社区发布,转载请注明文章出处

原文链接:https://www.qcloud.com/community/article/875259

获取更多腾讯海量技术实践干货,欢迎大家前往腾讯云技术社区

腾讯云安全:开发者必看|Android 8.0 新特性及开发指南的更多相关文章

  1. 开发者必看|Android 8.0 新特性及开发指南

    背景介绍 谷歌2017 I/O开发者大会今年将于5月17-19日在美国加州举办.大会将跟往年一样发布最新的 Android 系统,今年为 Android 8.0.谷歌在今年3 月21日发布 Andro ...

  2. Android 8.0 新特性

    Android 8.0 (Android Oreo(奥利奥))新特性介绍 通知渠道 - Notification Channels 通知渠道是由应用自行定义的通知内容类别,借助渠道,开发者可以让用户对 ...

  3. android 7.0 新特性 和对开发者的影响

    android 7.0新特性 - jiabailong的专栏 - 博客频道 - CSDN.NEThttp://blog.csdn.net/jiabailong/article/details/5241 ...

  4. Android 6.0 新特性 整理 资料来自网络

    Android 6.0新特性 Runtime Permissions Doze and App Standby Apache HTTP Client Removal BoringSSL Access ...

  5. android 5.0新特性

    Android Lollipop 面向开发人员的主要功能 Material Design 设计 注重性能 通知 以大屏幕呈现 以文档为中心 连接性能再上一级 高性能图形 音频处理功能更强 摄像头和视频 ...

  6. Android 7.0新特性

    还望支持个人博客站:http://www.enjoytoday.cn 由于google目前不是无法直接在国内访问,故此,对于android 开发平台的7.0新特性做个保存.也可供大家查阅.原文转自an ...

  7. Android 5.0 新特性

    Material Design Material Design简介 Material Design是谷歌新的设计语言,谷歌希望寄由此来统一各种平台上的用户体验,Material Design的特点是干 ...

  8. 奥利奥好吃吗?Android 8.0新特性适配测试报告来啦!

    WeTest 导读 谷歌2017 I/O开发者大会上发布了Android 8.0的正式版, 其官方代号为Oreo(奥利奥).网上关于Android8.0新功能特性的介绍已铺天盖地,新功能特性会对程序应 ...

  9. Android 9.0新特性

    1.全面屏支持,Android P加入了对刘海屏的支持,谷歌称之为凹口屏幕(display with a cutout).借助最新的提供的DisplayCutout类,开发者可以找到非功能区域的位置和 ...

随机推荐

  1. bash之重定向

                                                                          标准输入 stdin:代码为0,使用< 或 <& ...

  2. Maven 使用笔记

    一:手动添加包进本地仓库 Maven 安装 JAR 包的命令是: mvn install:install-file -Dfile=jar包的位置 -DgroupId=[groupId] -Dartif ...

  3. java程序员入门:英语好不好对编程到底有没有影响

    我想当码农,听说钱钱拿的多! 哦.是很有钱!么样? 可是我不会! 那你想么样?去学撒! 可是,我英语差-- 有多差??? 很差-- 那????? 关于英语水平对编程的影响,我们一起来看看啦!希望可以解 ...

  4. BigInteger和BigDecimal的练习

    前言: BigInteger用于处理大数据的计算,它继承自java.math.BigInteger.用法相对来说比较简单,掌握几个基本运算即可. 初始化: BigInteger sum=new Big ...

  5. 第一章 初始java

    一.单词 public:公共的          static:静态的        void:空的          class:类       print:打印     line:排    pro ...

  6. python pytesser 的安装

      安装包: 需要安装的包主要有两个: PIL 和 pytesser . PIL模块的安装不多说 pytesser 模块的安装: 下载后得到 "pytesser_v0.0.1.zip&quo ...

  7. 转换器4:手写PHP转Python编译器,语法解析部分

    写完词法部分,又有很多杂事,周末终于有空来实现伟大的语法解析部分了. 撸完代码之后发现,程序太短了,不算上状态机,才186行(含注释),关键代码不到100行.运行调试过后,发现还行.居然可以解析One ...

  8. burpsuite+sqlmap跨登录验证SQL注入

    (我操作的系统是kali linux) 1.利用burpsuite代理设置拦截浏览器请求(具体操作步骤可参考:http://www.cnblogs.com/hito/p/4495432.html) 2 ...

  9. 【HAL库每天一例】freemodbus移植

    例程下载:资料包括程序.相关说明资料以及软件使用截图 百度云盘:https://pan.baidu.com/s/1slN8rIt 密码:u6m1 360云盘:https://yunpan.cn/OcP ...

  10. mac 下 wget 安装

    1.下载 wget 压缩包,wget 下载地址:ftp://ftp.gnu.org/gnu/wget/ 2.make && make install 3.如果提示 permission ...