分享

谷歌发布全新Awareness API,支持应用更加智能化

 jnstyle 2017-07-15

今年I/O大会上谷歌向开发者介绍了全新版Awareness API,其作用是Android App根据用户设备环境使用作出更加智能化的反馈,让设备比用户更了解自己。日前,谷歌正式发布了Awareness API,所有开发者可通过最新版本的Google Play Service下载使用。

图片描述

Awareness API可检测到7种不同类型的情景环境,包括位置、地点、信号灯、当地时间、活动状态、耳机是否插入、天气状况,App可以更好地理解用户当前状态,并使用这些信息来提供优化或定制体验。

Awareness API类型

目前Awareness API被分为两大类:

  • Snapshot API 让应用程序轻松请求有关用户当前环境状态的信息。例如,“给我一个用户当前位置或当前天气状况”。

  • Fence API
    应用匹配一个特定条件下请求用户当前行为。类似于Geofencing API,一旦意识到地理围栏定位技术被应用,它不管应用是否在运行都会回调应用程序,具有更好的灵活性。例如,检测到用户跑步并带上耳机时,音乐应用将会自动推荐适合跑步的应用。

独立地从表面上看,Awareness API以一种新的方法结合最优环境信号,不仅可以提供更加准确和精辟的上下文线索,而且节省电池消耗和缩减带宽等系统资源。

Android上使用Awareness API开发

  • 设置Google Play Services: Awareness API是Google Play Services一部分,App开发项目中必须包含Google Play Services。通过SDK Manager下载并安装Google Play Services,然后添加库到项目中。

  • 添加API key:添加API key到应用程序中,代码如下:


  ...
  

如果获取位置快照,声明如下:


如果获取信号快照或使用信号围栏,声明如下:


  • AndroidMainifest.xml中声明Android权限: App是使用的每一个API都必须声明权限。所需的权限取决于应用程序所使用的API方法和Fence类型。

  • 连接Awareness API:必须先创建一个Google Play Services API客户端。调用onCreate()方法,使用GoogleApiClient.Builder创建 Google API Client实例。使用生成器添加Awareness API,如下所示:

android.content.Context context;
GoogleApiClient client = new GoogleApiClient.Builder(context)
        .addApi(Awareness.API)
        .build();
client.connect();

案例

使用Awareness API的两个案例:

  • Trulia
    一个住宅房地产网站,使用Fence API可显示空房。当天气不错且用户接近房子并感兴趣的条件下,Trulia网站会推送通知提醒用户周围有空房子。这种定制通知可帮助用户在最佳时机看房。

图片描述

  • SuperPlayer Music
    使用Snapshot API和Fence API可播放适合当时心情的音乐。无论你是否已完成了跑步还是刚开始运动、踏上了漫长的旅途或刚去健身房,这个应用助手可以进行情景判断并推荐合适的播放列表。

图片描述

总结

Awareness API一方面让用户的生活更加智能化;但另外一方面,对用户的隐私也带来了一定的威胁。

第一时间掌握最新移动开发相关信息和技术,请关注mobilehub公众微信号(ID: mobilehub)。


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多