前言

“无AI,不未来”,绝对不是一句豪情壮语,AI早已进入到了我们生活当中。去年Google发布的Android Pie系统在AI功能方面就做了重大革新,本文就对Google在新系统中引入的AI功能进行一些整理。

一、高通的SNPE SDK支持

SNPE SDK即 Snapdragon Neural Processing Engine SDK,它是美国高通公司出品的神经网络处理引擎(SNPE),可运行于搭载了高通Zeroth机器智能平台的820芯片处理器,开发者可以在SNPE上搭建自己的深度学习网络模型。它像是一个通用的神经运算平台,能够兼容Google TensorFlowLite、Oaffe2、CNTK、MxNet等多个神经元架构,这意味着开发者无需进行太多更改,直接就能将代码和算法套用到装配有高通骁龙845移动平台的设备中。

由于AI功能需要进行大量的算法计算,所以这需要更强大的CPU支撑。高通近年来发布的骁龙845等芯片就提供了强大的性能,通过植入SNPE SDK,为手机提供了良好的AI功能平台,这为AI在智能手机上的运用提供了极大的支持。

 

二、自适应电池用量(Adaptive Battery)

Android系统没有iOS省电,其背后原因就是APP后台管理机制的问题,各种自启和关联唤醒好不讨厌(特别是国内APP的“全家桶”生态环境)。

这一次,Android P引入了自适应电池“Adaptive Battery”功能,不仅可以预测用户接下来几个小时内将使用的应用程序,而且还包括在当天用户何时会使用哪些应用程序,从而实现智能监控用户的耗电情况,自动关闭无用的后台应用,并根据用户使用习惯调整屏幕亮度,达到省电目的。据介绍,这项功能可以使CPU的负担降低30%。

不过,这一特性是否能对全家桶现象有效?还待日后证明。如果不成,还得要黑域或绿色守护等APP出手。

 

三、自适应亮度 (Adaptive Brightness)

这个功能可以算是自动亮度的进阶版:自动亮度存在屏幕过亮或偏暗的可能,手动调节也难以精准控制。而自适应亮度功能则可通过长时间学习用户对亮度的偏好习惯来调节亮度,可充分考虑用户对环境和当前应用对亮度明暗的需求情况。

但是,这一功能也需要更灵敏光线传感器以及屏幕背光模组的支持,比如有些手机屏幕最暗可以调节到1流明,并以x流明为单位进行微调。而有些手机最暗亮度只能降到10流明,想再暗也降不下去了。

 

四、智能预测(App Actions)

根据机器人学习,基于用户日常习惯来预测用户下一步要进行的操作。比如你每天晚上8点都会去晨跑,手机启动器在晚上8点前就会在启动器弹出气泡预测,提醒你是否要打开跑步计步的应用程序。再比如,当你插入耳机时,启动器也会弹出用户最常用的音乐播放器按钮,以及最近添加曲目的信息。

 

五、轻量级交互(Slices)

这算是智能预测用户操作的延续,也是谷歌将人工智能应用于手机的一种方式。谷歌在Google Search搜索栏中直接提供已安装程序轻量级交互操作,界面上设有应用程序某些功能的快捷操作,因此用户无需打开应用程序就能操作完整应用程序中指定的某项功能,更快速、更便捷。

比如,当你在搜索栏输入“复仇者联盟3”,如果你手机上已安装了美团等软件,那么在搜索栏中就会弹出直接通过美团预定购买复仇者联盟3电影票的选项,省去了打开APP、搜索影片和影院的繁琐步骤。

六、MLKit API接口

独乐乐不如众乐乐,谷歌为开发者们提供了即时使用的AI模板,第三方APP也能利用谷歌的AI提速或改善体验,从而让支持AI加速的CPU有进一步展示自我的舞台。前面提到的App Actions和Slices就依赖于这种专用的 API,需要开发者自行去适配和调整,至于能和Android P紧密到什么地步,就得看开发者愿意付出的时间和精力了。

七、仪表盘(Dashboard)

Android P新增了一个名为仪表盘的功能,可以统计和汇总用户日常的行为记录,比如清楚地看到自己在手机上花费多少时间做了些什么,包括每个APP运行的时间和次数,还会告诉你已经解锁了多少次手机,以及收到了多少条通知等等。这一功能谷歌也开放给了开发者,第三方APP也能通过它和用户进行进一步的交互,如你当你看视频时间已经很久了,视频APP就能在恰当的时间弹出提醒你休息的窗口。

八、Google应用中的AI

从新版Android P的功能特性中,我们可以看到很多和AI相关的技术。除了操作系统,谷歌助手(Google Assitant)和谷歌软件(谷歌地图、谷歌新闻、谷歌摄像头)也都融入了AI加持,进一步印证了无AI,不未来的发展趋势。

结语

本文主要整理了系统方面新引入的AI功能,而且掌握的资料有限,所以可能还有很多其它的AI功能笔者没有找到相关资料。如果读者有这方面的资料,请共享给我,万分感谢!

参考资料

本文的内容主要整理自如下两篇文章,在这里对这两篇文章的作者表示感谢!

高通骁龙845全解析:AI is Changing Everything

十年安卓一朝AI 谷歌Android 9.0最大特色在这里!

【AI】Android Pie中引入的AI功能的更多相关文章

  1. 如何在Android应用中引入外部网页

    在某些情况下,我们需要在Android应用中引入外部网页,这里记录一下如何操作(其实很简单^.^). 先介绍一下开发环境: 开发工具:Android Studio 1.5 SDK API版本:17 操 ...

  2. [转载]android工程中引入另一个工程中的资源

    原文地址:android工程中引入另一个工程中的资源作者:87fayuan 在项目中可能遇到这样的问题:项目过大,于是细分为N个子模块来做,每个模块都是不同的工程.涉及到activity传数据时,可以 ...

  3. 在Android项目中引入MuPdf

    由于公司手机App要加入一个附件查看功能,需要查看PDF文件,在网上找了许多第三方工具,最后选择了MuPDF. 更多第三方工具可以查看大神总结的:http://www.cnblogs.com/poke ...

  4. Android Studio 中引入Library

    启动AndroidStudio后,打开你需要接收Library的项目.比如有两个项目,项目A,和Library项目B,那么打开项目A.图中所示为项目的结构图,点击右上角的File菜单. 2 在下拉菜单 ...

  5. Android 10开发者预览版功能介绍

    Android P的开发者预览版最亮眼的功能莫过于支持“刘海屏”等屏幕显示.同样在适配可折叠设备方面,Android Q的第一个开发者预览版也很“接地气”,谷歌早在去年11月就发布了对可折叠设备的支持 ...

  6. 【中国象棋人机对战】引入了AI算法,学习低代码和高代码如何混编并互相调用

    以低代码和高代码(原生JS代码)混编的方式引入了AI算法,学习如何使用表达式调用原生代码的.整个过程在众触低代码应用平台进行,适合高阶学员. AI智能级别演示 AI算法分三个等级,体现出来的智能水平不 ...

  7. Swing杂记——Swing中引入Android的NinePatch技术,让Swing拥有Android的外观定制能力

    [摘要] 本文诣在展示如何在Swing中引入 NinePatch技术(早期有文章里中文译作九格图,暂且这么叫吧^_^,但此术非传统移动手机上的功能布局——九格图哦). [准备篇] Q:何为 NineP ...

  8. 【转】NDK编译可执行文件在Android L中运行显示error: only position independent executables (PIE) are supported.失败问题解决办法。

    原文网址:http://blog.csdn.net/hxdanya/article/details/39371759 由于使用了NDK编译的可执行文件在应用中调用,在4.4及之前的版本上一直没出问题. ...

  9. Illustrator软件中eps和ai格式的区别

    转自Illustrator软件中eps和ai格式的区别 AI是ILL特有的格式,EPS格式是在排版领域经常使用的格式.AI中的位图图像是用链接的方式存储,EPS格式则将位图图像包含于文件中.对于含有相 ...

随机推荐

  1. 【Linux】使用crontab,让linux定时执行shell脚本

    阅读目录 1. cron服务[Ubuntu环境] 2. crontab用法 3. vim编辑crontab文件 4.Cron各项描述 5.例子解释 Linux中,周期执行的任务一般由cron这个守护进 ...

  2. 【Linux】Linux中常用操作命令(转)

    Linux简介及Ubuntu安装 Linux,免费开源,多用户多任务系统.基于Linux有多个版本的衍生.RedHat.Ubuntu.Debian 安装VMware或VirtualBox虚拟机.具体安 ...

  3. Qt程序发行Linux版,软件打包知识(patchelf 工具修改依赖库,确认 qmake -v 是自己使用的Qt版本,否则用export PATH进行修改)good

    patchelf 工具可以修改已编译运行程序的依赖库位置和指定库链接器 patchelf --set-rpath patchelf --set-interpreter 通过这个工具 https://g ...

  4. 编解码TIFF图像

    解码: // Open a Stream and decode a TIFF image Stream imageStreamSource = new FileStream("tulipfa ...

  5. 使用xargs同步文本中单词出现个数

    #!/bin/bash # 分析一个文本文件中单词出现的频率. # 使用 'xargs' 将文本行分解为单词. # 检查命令行上输入的文件. ARGS= E_BADARGS= E_NOFILE= if ...

  6. wlan和wifi的区别是什么?

    首先我们简单介绍下WLAN无线上网,其全称是:Wireless Local Area Networks,中文解释为:无线局域网络,是一种利用射频(Radio Frequency RF)技术进行据传输的 ...

  7. Newtonsoft.Json高级用法之枚举中文转义

    最近看博客园中 焰尾迭的两篇关于"Newtonsoft.Json高级用法"的文章受到了很多人的评论,一度登入到头条推荐. 今天我就不再重复焰尾迭博文中的一些提过的Newtonsof ...

  8. Struts2 学习笔记(概述)

    Struts2 学习笔记 2015年3月7日11:02:55 MVC思想 Strust2的MVC对应关系如下: 在MVC三个模块当中,struts2对应关系如下: Model: 负责封装应用的状态,并 ...

  9. java关键字-final

    final特点: 1:这个关键字是一个修饰符,可以修饰类,方法,变量. 2:被final修饰的类是一个最终类,不可以被继承. 3:被final修饰的方法是一个最终方法,不可以被覆盖. 4:被final ...

  10. abp(net core)+easyui+efcore仓储系统——定义仓储并实现 (四)

    abp(net core)+easyui+efcore仓储系统目录 abp(net core)+easyui+efcore仓储系统——ABP总体介绍(一) abp(net core)+easyui+e ...