去年我们在 I/O 上发布了 Awareness API,这是一个简单但强大的 API,它让开发者可以使用位置、天气、时间和用户活动等信号来构建与情境相关的应用体验。
Awareness API 提供两种在您的应用中使用情境信号的方式,可通过 Google Play 服务获取。Snapshot API 让您的应用可以请求有关用户当前情境的信息,而 Fence API 让您的应用可以响应用户情境变化并在情境符合某组特定条件时作出反应。例如,“每当用户行走和插入耳机时通知我”。
目前,您可以在 Awareness API 上指定一个时界,但只能使用时间的绝对/标准表示形式。根据开发者反馈,我们意识到此 API 在构建时界方面的灵活性不足以支持人们在思考和谈论时间时所使用的更高级的抽象表达。“本周”、“下一个假期”、“日落之后”都是很常见、很口语化的时间表达方式。这就是我们从今天开始向这些 API 添加语义时间支持的原因。
例如,如果您正在构建一个健身应用并需要一种方式在每天早晨提示用户开始其例行活动,或者如果您正在构建一个需要在黄昏后开启夜间模式的阅读应用;您将需要查询一个 3p API 以获取用户位置的日出/日落信息,然后使用这些标准时间值编写一个 Awareness 时界。借助我们的最新更新,您可以使用我们的 TIME_INSTANT_SUNRISE 和 TIME_INSTANT_SUNSET 常量,并让平台为您管理所有复杂任务。
下面我们来看一个示例。假设您正在构建一个健身应用,其在周二和周四的日出时间提示用户开始他们的晨练。您可以使用以下代码行设置此触发。
// A sun-state-based fence that is TRUE only on Tuesday and Thursday during Sunrise
AwarenessFence.and(
TimeFence.aroundTimeInstant(TimeFence.TIME_INSTANT_SUNRISE,
-10 * ONE_MINUTE_MILLIS, 5 * ONE_MINUTE_MILLIS),
AwarenessFence.or(
TimeFence.inIntervalOfDay(TimeFence.DAY_OF_WEEK_TUESDAY,
0, ONE_DAY_MILLIS),
TimeFence.inIntervalOfDay(TimeFence.DAY_OF_WEEK_THURSDAY,
0, ONE_DAY_MILLIS)));
我们推出的一个颇受欢迎的语义时间功能是公共假期。该功能内的每个国家和区域都有其不同的假期。假设您构建的是一个本地远足和探险应用,想要向用户显示他们在恰逢周五或周一的假期里可以享受的活动。您可以使用“Days”(天数)和“Holiday”(假期)标志的组合来为世界各地的所有用户识别此状态。只需 3 行代码您就可以执行此操作,并使其适用于世界上的任何地方。
// A local-time fence that is TRUE only on public holidays in the
// device locale that fall on Fridays or Mondays.
AwarenessFence.and(
TimeFence.inTimeInterval(TimeFence.TIME_INTERVAL_HOLIDAY),
AwarenessFence.or(
TimeFence.inIntervalOfDay(TimeFence.DAY_OF_WEEK_FRIDAY,
9 * ONE_HOUR_MILLIS, 11 * ONE_HOUR_MILLIS),
TimeFence.inIntervalOfDay(TimeFence.DAY_OF_WEEK_MONDAY,
9 * ONE_HOUR_MILLIS, 11 * ONE_HOUR_MILLIS)));
在这两个示例中,Awareness 基于设备语言区域设置执行将时间和假期进行本地化的繁重任务。
我们期待见到您将使用这个强大的 API 解决哪些问题。请加入我们的邮寄名单以获取有关此 API 和 Google 的其他 Context API 的更新。
原文来自:谷歌开发者中文博客
声明:所有来源为“聚合数据”的内容信息,未经本网许可,不得转载!如对内容有异议或投诉,请与我们联系。邮箱:marketing@think-land.com
通过出发地、目的地、出发日期等信息查询航班信息。
通过站到站查询火车班次时刻表等信息,同时已集成至聚合MCP Server。火车票订票MCP不仅能赋予你的Agent火车时刻查询,还能支持在线订票能力。
通过车辆vin码查询车辆的过户次数等相关信息
验证银行卡、身份证、姓名、手机号是否一致并返回账户类型
查询个人是否存在高风险行为