測試地點服務的建議

許多客戶和組織將定義全球範圍內的POI,因此,有一種方法來模擬和測試Places Service如何與您的應用程式互動非常重要。 這些資訊可協助您瞭解如何測試和驗證根據已定義的POI和使用者目前位置正確觸發的Places Service登入與退出點。

由於環境變數可能是位置訊號和準確度的因素,因此我們建議您先使用開發人員工具和模擬位置項目,在本機建立基準結果。 其目標是驗證所有位置事件皆正確運作。 在正確驗證位置事件後,可測試解決方案整合(例如Analytics、Target和Campaign)。 為協助您的測試活動,您應在個別開發環境中設定Slack Webhook,並加上回傳並載入GPX檔案。

重要

此計畫假設已在 Places Service UI中建立POI ,且已安裝並正確設定Places擴充功能和Places Monitor擴充功能的最新版本。 如需詳細資訊,請參 閱「放置擴充功能和「放置監視器擴充功能」。

步驟 : 說明 預期結果
1 確認已為Android輸入正確的資訊清單金鑰,以授與追蹤位置的存取權。 如需詳細資訊,請參 閱新增資訊清單權限 已確認
1a 確認iOS中已設定位置更新。 此外,請確定您在iOS中已設定適當的plist金鑰,以要求使用者追蹤位置的權限。 如需詳細資訊,請 參閱在背景啟用位置更新。 已確認
2 確認為iOS設定了哪個監控模式。 連續模式允許更高的準確性和持久性,同時也允許更大的耗電量。 如需詳細資訊,請參 閱監視模式(僅限iOS)。 重大變更或持續
3 如果使用多個POI程式庫,請確認已在Experience Platform Launch的Places擴充功能中選取了適當的程式庫。 已確認
4 確認最新版的Mobile Core和Places/Places Monitor擴充功能已透過Gradle或CocoaPods與應用程式搭售。 已確認——如需最近更新的詳細資訊,請參閱版 本說明。
5 確認已為測試配置了正確的環境。 啟動環境ID應符合您的啟動開發環境。 已確認
6 為您要測試的每個POI建立GPX檔案。 GPX檔案可用於本機開發環境,以模擬位置項目。 如需有關建立和使用GPX檔案的詳細資訊,請參閱:
行動應用程式中iOS模擬器的GPX
檔案[已關閉] https://mapstogpx.com/mobiledev.
phpLOCATION測試
GPX檔案會建立並載入應用程式專案中。
7 不需執行其他動作,您應能夠從Android Studio或XCode啟動應用程式,並檢視適當的警報以要求追蹤位置的存取權。 按一下「 永遠允許 」權限。

我們建議您使用連接至電腦的實際裝置,而非使用裝置模擬器。
在通過IDE載入的應用程式上應顯示位置請求提示
8 接受「位置」權限後。 Places SDK將擷取裝置的目前位置,而Places Monitor擴充功能將開始從目前位置監視最近20個POI 請參見表下的日誌示例。
9 在XCode或Android Studio中的不同位置之間切換時,應針對特定POI產生登入事件。 進入POI時,應使用以下日誌。 請參見表下的日誌示例。
10 在您看到Places Monitor找到附近的POI後,您應該通過發送位置ping來測試。 在Launch中,建立新規則,使用Places擴充功能根據地理圍欄項目觸發。 然後使用Mobile Core來傳送回傳,以建立新動作。 建立Slack Webhook應用程式可協助您查看位置登入和退出點。 如需有關建立Slack Webhook應用程式的詳細資訊,請參閱「使 用傳入的Webhook傳送訊息」。
10a 在Launch中,請確定您已新增「地標」擴充功能的資料元素,包括:
當前POI名當前POI
latCurrent POI
latLast Extived退出當前POI
latLongPoi





latLast Lat退出Oract Lat退出OratLatExtimestamp
10b 使用「事件=地點」→「輸入POI」建立新規則
10c 建立動作=行動核心→回傳
10d 使用Slack應用程式的Webhook URL,例如https://hooks.slack.com/services/TKN5FKS68/BNFP7SVD…
10e 員額內容類似: {text: User is in POI - {%%Last Entered POI Name%%} in {%%Last Entered POI City%%} additional information: Radius:{%%Last Entered POI Radius%%} Timestamp: {%%timestamp%%}}.
請確定您使用此處建立的特定資料元素。
10f 請確定您在Launch中發佈所有新資料元素和規則變更。 (您應在Launch介面的右上方選取工作開發程式庫。)
11 在開發人員IDE中切換GPX位置,以再次啟動並測試您的應用程式。 您現在在開發環境中選擇不同位置時,應會看到Slack通知,顯示每個POI的登入點。
快速摘
​要點此測試的所有內容都可在本機執行,而不需前往特定的POI位置。 驗證測試有助於確保您的應用程式已正確設定,且已收到正確的位置權限。

此驗證也可讓您確信已定義的POI可以正確使用Places Monitor擴充功能。 在此步驟後,我們將開始測試Campaign中的訊息,以檢視是否根據POI登入和退出顯示正確的訊息。
使用Places服務測試Adobe Campaign Standard應用程式內訊息。
12 在主「促銷活動」控制面板上,設定新的「應用程式內訊息」(類型= broadcast)
12a 在觸發器中,選 擇置入事件類型——輸入作為觸發器
12b Places Custom metadata 擇作為其他篩選器——使用POI類型=上次輸入的POI。
我們使 Last Entered 用POI類型,因為在大多數情況 Last Entered 下,會與相同 Current POI

Current POI​只能用於POI地域圍欄重疊的情況。 在這種情況下,這些POI必須是「排名」,Current POI​然後在使用者目前可能在的2或3個地理圍欄中,顯示排名最前的POI。
12c 選取自訂中繼資料金鑰,協助您縮小將會收到訊息的POI。
12d 在頻率和持續時間上,請只保留一或兩天,如此,如果您不喜歡標準,則可在較短的時間內使觸發器過期。
12e 對於「永遠/一次」或「直到點進」,請選取「永 」,以便您可以跨多個位置進行測試。 當您模擬符合適當中繼資料條件的位置變更時,應用程式內訊息會一律顯示。
12f 對於顯示,請選擇「本機通知」以外的選項。 這樣,在前景中使用應用程式進行測試時,就更容易看到。)
12g 準備/確認並部署應用程式內訊息。
13 在您的開發環境中,為確保已下載新的促銷活動規則,請結束並再次啟動應用程式。 請勿忘記,新的促銷活動規則檔案必須重新完整啟動應用程式,才能下載至裝置。
14 在您的開發應用程式中,使用先前建立的GPX檔案來切換位置。 您應該會根據先前設定的准則,看到應用程式內訊息出現。
15 在下次測試中,我們基本上會複製與以前相同的步驟,但這次我們將測試LOCAL NOTIFICATION。 預期結果是,每次符合符合標準時,就會顯示本機通知。
16 設定新的應用程式內訊息(類型= broadcast)。
16a 在觸發器中,選擇 Places event type - Entry as the trigger
16b 選取「置入自訂中繼資料」作為其他篩選條件——使 POI type 用= Last Entered POI
16c 選取自訂中繼資料金鑰,協助您縮小將會收到訊息的POI。
16d 對於頻率和持續時間,請只保留一或兩天,如此,如果您不喜歡標準,則可在較短的時間內使觸發器過期。
16e 對於「永遠/一次」或「直到點進」 ALWAYS
16f 對於顯示類型,選擇 Local Notification
16g 準備/確認並部署應用程式內訊息。
17 在開發人員環境中,連接您的裝置並按 Play 建置版本。 在您建立該位置運作後,請在應用程式背景設定,並繼續在Xcode或Android Studio中切換位置。 您仍應看到指示位置變更的主控台讀出畫面,而且您也應看到顯示的本機通知,視觸發器中設定的標準而定。 (可能會有1-2秒的延遲。) 預期結果是,每次符合符合符合標準時,就會顯示本機通知。
摘要 :在
此階段,我們應該看到本地環境中的POI條目。 我們也應該會根據POI工作,看到Campaign傳送的訊息。 如果出現故障,請檢查Slack通知是否未發出。 如果沒有Slack消息,請檢查應用程式控制台,因為可能沒有記錄新位置條目。 如果結果成功,我們可以相當確定應用程式是否正常運作,以及Places Service和Campaign傳訊服務是否也正常運作。
現場測試 :在
位置測試時,應該不會有太大改變。 保持鬆弛回傳活動有助於瞭解設備是否進入和退出該位置。
18 在裝置上進行測試,先停用wifi和行動電話,然後在POI區啟用一次。 如果發生故障,請記住是否在Slack中獲得地理圍欄條目和通知。 Slack通知的時間戳記是什麼?
19 只要啟用蜂窩功能,並關閉wifi,即可進行測試。
20 開啟行動電話和wifi時進行測試。
SUMMARY POINT
場測試應與開發測試緊密相配。 請記住,在決定使用者位置時,有一些環境因素可發揮作用,例如POI地理圍欄逗留時間、儲存格訊號的可用性,以及附近wifi接入點的強度。

日誌示例

步驟8: 在位置更新期間需要iOS和Android記錄檔

iOS

[AdobeExperienceSDK DEBUG <com.adobe.placesMonitor>]: Authorization status changed: Always
[AdobeExperienceSDK DEBUG <Places>]: Requesting 20 nearby POIs for device location (<lat>, <longitude>)
[AdobeExperienceSDK DEBUG <Places>]: Response from Places Query Service contained <n> nearby POIs
[AdobeExperienceSDK DEBUG <com.adobe.placesMonitor>]: Received a new list of POIs from Places: (
<ACPPlacePoi: 0x600002b75a40> Name: <poi name>; ID:<poi id>; Center: (<lat>, <long>); Radius: <radius>
..
..)   

Android

PlacesMonitor - All location settings are satisfied to monitor location
PlacesMonitor - PlacesMonitorInternal : New location obtained: <latitude> <longitude> Attempting to get the near by pois
PlacesExtension - Dispatching nearby places event with n POIs
PlacesMonitor - Attempting to Monitor POI with id <poi id> name <poi name> latitude <lat> longitude <longitude>
PlacesMonitor - Attempting to Monitor POI with id <poi id> name <poi name> latitude <lat> longitude <longitude>
PlacesMonitor - Attempting to Monitor POI with id <poi id> name <poi name> latitude <lat> longitude <longitude>
...
...
PlacesMonitor - Successfully added n fences for monitoring

步驟9: 事件期間需要iOS和Android記錄檔

iOS

[AdobeExperienceSDK TRACE <Places>]: Dispatching Places region entry event for place ID <poiId>

Android

PlacesExtension -  Dispatching Places Region Event for <poi name> with eventType entry

本頁內容

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now