Return to Video

onHandleIntent Helper - Solution

  • 0:01 - 0:03
    可以看到我将获得 Geofence 列表
  • 0:03 - 0:05
    并且将其称为 triggeringGeoFences
  • 0:05 - 0:09
    我通过在 geofenceEvent 上调用 getTriggeringGeoFences 方法
  • 0:09 - 0:11
    来得到它
  • 0:11 - 0:14
    无论有多少 Geofence 被触发 不管是一个还是多个
  • 0:14 - 0:17
    它们将返回至此 Geofence 列表
  • 0:18 - 0:22
    现在是 getGeoFenceTransitionDetails 帮助函数
  • 0:22 - 0:24
    我们把所有这些变为一个字符串
  • 0:24 - 0:27
    输入 string geofenceTransitionDetails =
  • 0:27 - 0:31
    getGeofenceTransitionDetails我在这里传递
  • 0:31 - 0:36
    在 geofenceTransition 传递 在 triggeringGeofences 传递
  • 0:36 - 0:38
    我们看一下这个函数
  • 0:38 - 0:40
    这是 getGeofenceTransitionDetails
  • 0:40 - 0:44
    可以发现它采用 Context 并采用 geofenceTransition
  • 0:44 - 0:45
    这只是一个整数
  • 0:45 - 0:49
    它采用一个 Geofence 列表 就是 triggeringGeofences
  • 0:49 - 0:52
    所以首先我要为我的实际过渡获得
  • 0:52 - 0:53
    过渡字符串
  • 0:53 - 0:57
    我正准备调用 string geofenceTransitionString
  • 0:57 - 1:00
    然后我将逐个查看 Geofence
  • 1:00 - 1:02
    并从中得到一个字符串
  • 1:02 - 1:06
    加载该字符串到数组列表 然后在数组列表上使用 TextUtils.join
  • 1:06 - 1:10
    将所有这些字符串连接在一起并将它们串联起来
  • 1:10 - 1:13
    有许多方法可以完成这一步
  • 1:13 - 1:15
    但是最终你可能选择这个
  • 1:15 - 1:18
    geofence.getRequestId
  • 1:18 - 1:21
    此方法可提供触发事件的 Geofence 的 ID
  • 1:21 - 1:24
    由你来决定在这种情况下如何处理该 ID
  • 1:24 - 1:28
    就像我说的 我正在将它们串联在一起
  • 1:28 - 1:31
    因此如果有许多不同的 Geofence 被触发
  • 1:31 - 1:34
    我将把它们的 ID 全部列在这一个通知内 就是说
  • 1:34 - 1:37
    例如 Lawrence 已经进入山景
  • 1:37 - 1:39
    Lawrence 已进入 Udacity Studios
  • 1:39 - 1:41
    Lawrence 已进入 Studio X
  • 1:41 - 1:44
    这类事情全都放在一个通知内
  • 1:44 - 1:46
    而不是放在多个通知内
  • 1:46 - 1:49
    结果 我只返回 geofenceTransitionString 和
  • 1:49 - 1:51
    产生的 ID 列表
  • 1:51 - 1:55
    将是进入 + 列表 或退出 + 列表
  • 1:55 - 1:56
    等等
  • 1:56 - 1:58
    所以本帮助函数为你实现了所有这些功能
Tytuł:
onHandleIntent Helper - Solution
Opis:

more » « less
Video Language:
English
Team:
Udacity
Projekt:
UD876-1 - Google Play Services - Location & Contex

Chinese, Simplified subtitles

Revisions Compare revisions