建立和傳送應用程式內訊息

瞭解如何使用Experience Platform Mobile SDK和Journey Optimizer為行動應用程式建立應用程式內訊息。

Journey Optimizer可讓您建立行銷活動,以傳送應用程式內訊息給目標對象。 Journey Optimizer中的行銷活動是用來透過各種管道,將一次性內容傳送給特定對象。 透過行銷活動,可同時執行動作(立即執行或根據指定排程執行)。 使用歷程時(請參閱Journey Optimizer推播通知課程),動作會依序執行。

架構 {modal="regular"}

在使用Journey Optimizer傳送應用程式內訊息之前,您必須確保有適當的設定和整合。 若要瞭解Journey Optimizer中的應用程式內傳訊資料流程,請參閱檔案

NOTE
本課程為選修課程,僅適用於想要傳送應用程式內訊息的Journey Optimizer使用者。

先決條件

  • 成功建立並執行應用程式,且已安裝並設定SDK。
  • 為Adobe Experience Platform設定應用程式。
  • 存取Journey Optimizer以及推送通知的足夠許可權。 此外,您需要足夠的許可權才能使用下列Journey Optimizer功能。
    • 管理行銷活動。
  • 實體iOS裝置或模擬器以進行測試。

學習目標

在本課程中,您將學習

  • 在Journey Optimizer中建立管道設定。
  • 安裝並設定Journey Optimizer標籤擴充功能。
  • 更新您的應用程式以註冊Journey Optimizer標籤擴充功能。
  • 驗證Assurance中的設定。
  • 在Journey Optimizer中定義您自己的促銷活動和應用程式內訊息體驗。
  • 從應用程式內傳送您自己的應用程式內訊息。

設定

TIP
如果您已將環境設定為Journey Optimizer推播訊息課程的一部分,則您可能已執行此設定區段中的某些步驟。

建立管道設定

若要開始,您必須建立通道設定,才能從Journey Optimizer傳送應用程式訊息通知。

  1. 在Journey Optimizer介面中,開啟​ 頻道 > 一般設定 > 頻道設定 ​功能表,然後選取​ 建立頻道設定

  2. 輸入設定的名稱和說明(選擇性)。 例如,LumaInAppMessagingChannel for in-app messaging

    note note
    NOTE
    名稱必須以字母(A-Z)開頭。 它只能包含英數字元。 您也可以使用底線 _、點 . 和連字號 - 字元。
  3. 若要將自訂或核心資料使用標籤指派給組態,您可以選取​ 管理存取權進一步瞭解物件層級存取控制(OLAC)

  4. 選取​ 應用程式內傳訊 ​頻道。

  5. 選取​ 行銷動作,以使用此設定來關聯同意原則與訊息。 所有與行銷動作相關的同意政策都會被用來尊重客戶的偏好設定。 進一步瞭解行銷動作。 例如:推送目標定位。

  6. 選取您要定義設定的平台。 此設定可讓您為每個平台指定目標應用程式,並確保跨多個平台的一致內容傳遞。

    note note
    NOTE
    對於iOS和Android平台,傳送完全以應用程式ID為基礎。 如果兩個應用程式共用相同的應用程式ID,則會將內容傳送給兩者,無論在​ 頻道設定 ​中選取的平台為何。
  7. 輸入您要支援之平台的應用程式ID。

    建立頻道設定 {modal="regular"}

  8. 選取​ 提交 ​以儲存您的變更。

更新資料流設定

為確保將從您的行動應用程式傳送至Edge Network的資料轉送至Journey Optimizer,請更新您的Experience Edge設定。

  1. 在資料收集UI中,選取​ 資料串流,然後選取您的資料串流,例如​ Luma Mobile App

  2. 選取 Experience Platform 的​ 更多,並從內容功能表選取 編輯 編輯

  3. 在​ 資料串流 > 資料夾 > Adobe Experience Platform ​畫面中,確定已選取​ Adobe Journey Optimizer。 如需詳細資訊,請參閱Adobe Experience Platform設定

  4. 若要儲存您的資料流組態,請選取​ 儲存

    AEP資料流組態 {modal="regular"}

安裝Journey Optimizer標籤擴充功能

若要讓應用程式與Journey Optimizer搭配使用,您必須更新標籤屬性。

  1. 導覽至​ 標籤 > 擴充功能 > 目錄
  2. 開啟您的屬性,例如​ Luma Mobile App Tutorial
  3. 選取​ 目錄
  4. 搜尋​ Adobe Journey Optimizer ​擴充功能。
  5. 安裝擴充功能。

當​ ​在您的應用程式中使用應用程式內訊息時,在​ 安裝擴充功能 ​或​ 設定擴充功能 ​中,您不需要設定任何專案。 如果您已按照教學課程中的推播通知課程進行,您會看到針對​ 開發 ​環境,已從​ 事件資料集 ​清單中選取​ AJO推播追蹤體驗事件資料集 ​資料集。

在應用程式中實作Journey Optimizer

如先前課程所述,安裝行動標籤擴充功能僅會提供設定。 接下來,您必須安裝並註冊傳訊SDK。 如果未清除這些步驟,請檢閱安裝SDK區段。

NOTE
如果您已完成安裝SDK區段,則表示已安裝SDK,您可以略過此步驟。
iOS
  1. 在Xcode中,請確定已將AEP訊息新增至套件相依性中的套件清單中。 請參閱Swift封裝管理員

  2. 導覽至Xcode專案導覽器中的​ Luma > Luma > AppDelegate

  3. 請確定AEPMessaging是匯入清單的一部分。

    import AEPMessaging

  4. 請確定Messaging.self是您註冊的擴充功能陣列的一部分。

    code language-swift
    let extensions = [
        AEPIdentity.Identity.self,
        Lifecycle.self,
        Signal.self,
        Edge.self,
        AEPEdgeIdentity.Identity.self,
        Consent.self,
        UserProfile.self,
        Places.self,
        Messaging.self,
        Optimize.self,
        Assurance.self
    ]
    
Android
  1. 在Android Studio中,確定aepsdk-messaging-android是​ Android ChevronDown > Gradle Scripts 中​ build.gradle.kts ​的相依性的一部分。 請參閱Gradle

  2. 在Android Studio專案導覽器中,導覽至​ Android ChevronDown app > kotlin+java > com.adobe.luma.tutorial.android > LumaApplication

  3. 請確定com.adobe.marketing.mobile.Messaging是匯入清單的一部分。

    import import com.adobe.marketing.mobile.Messaging

  4. 請確定Messaging.EXTENSION是您註冊的擴充功能陣列的一部分。

    code language-kotlin
    val extensions = listOf(
        Identity.EXTENSION,
        Lifecycle.EXTENSION,
        Signal.EXTENSION,
        Edge.EXTENSION,
        Consent.EXTENSION,
        UserProfile.EXTENSION,
        Places.EXTENSION,
        Messaging.EXTENSION,
        Optimize.EXTENSION,
        Assurance.EXTENSION
    )
    

使用Assurance驗證設定

  1. 檢閱設定指示區段,將您的模擬器或裝置連線到Assurance。

  2. 在Assurance UI中,選取​ 設定
    設定click {modal="regular"}

  3. 選取 應用程式內傳訊 旁的​ 加號 ​按鈕。

  4. 選取「儲存」。
    儲存 {modal="regular"}

  5. 從左側導覽中選取​ 應用程式內傳訊

  6. 選取​ 驗證 ​標籤。 確認您沒有收到任何錯誤。

    應用程式內驗證 {modal="regular"}

建立您自己的應用程式內訊息

若要建立您自己的應用程式內訊息,您必須在Journey Optimizer中定義行銷活動,以根據發生的事件觸發應用程式內訊息。 這些事件可以是:

  • 資料傳送至Adobe Experience Platform,
  • 核心追蹤事件,例如動作,或透過行動核心通用API的PII資料狀態或集合,
  • 應用程式生命週期事件,例如,啟動、安裝、升級、關閉或當機。
  • 地理位置事件,例如進入或退出地標。

在本教學課程中,您將會使用Mobile Core一般API和獨立於擴充功能的API (請參閱Mobile Core generic API),以方便使用者畫面、動作和PII資料的事件追蹤。 這些API產生的事件會發佈至SDK事件中樞,並可由擴充功能使用。 SDK事件中樞提供與所有Mobile Platform SDK擴充功能繫結的核心資料結構。 事件中心會維護已註冊的擴充功能和內部模組清單、已註冊的事件接聽程式清單,以及共用狀態資料庫。

SDK事件中心會發佈和接收來自已註冊擴充功能的事件資料,以簡化與Adobe和協力廠商解決方案的整合。 例如,安裝「最佳化」擴充功能後,事件中樞會透過Journey Optimizer — 決策管理優惠引擎處理所有請求和互動。

  1. 在Journey Optimizer UI中,從左側邊欄選取​ 促銷活動

  2. 選取​ 建立行銷活動

  3. 在​ 建立您的行銷活動 ​對話方塊中,選取 時鐘 已排程 — 行銷,並選取​ 確認

  4. 在​ 行銷活動 — YYYY-MM-DD HHSS UTC+XX:XX ​畫面中:

    1. 在​ 屬性 ​索引標籤中:

      1. 輸入行銷活動的名稱,例如,Luma Mobile In-App Campaign
      2. 選擇性地新增說明。
    2. 選取​ 動作 ​標籤。

      1. 在​ 顯示訊息if ​底下,選取 新增 新增動作。 從下拉式功能表中選取​ 應用程式內訊息

      2. 從​ 應用程式內訊息設定 ​下拉式功能表,選取您的設定。 例如,LumaInAppMessaging

      3. 選取 編輯 編輯觸發程式

      4. 在​ 應用程式內訊息觸發程式 ​對話方塊中:

        1. 選取​ 應用程式啟動,然後從下拉式選單中選取​ 追蹤動作

        2. 選取 AddCircle 新增條件

        3. 從下拉式功能表中選取​ 動作 ​和​ 等於

        4. 輸入in-app

        5. 選取 AddCircle 新增條件

        6. 從下拉式功能表中選取​ 內容資料,然後輸入showMessage

        7. 從下拉式功能表中選取​ 等於,然後輸入true

          編輯觸發程式 {modal="regular"}

        8. 選取​ 完成

    3. 回到主要行銷活動定義畫面,選取​ Content ​標籤。

      1. 啟用​ 進階格式

      2. 選取​ 模型 ​做為​ 傳訊配置。 在​ 切換配置 ​對話方塊中,選取​ 變更配置

      3. 在​ 內容 ​索引標籤中。

        1. 輸入https://luma.enablementadobe.com/content/dam/luma/en/logos/Luma_Logo.png媒體URL
        2. 輸入​ Header,例如Welcome to this Luma In-App Message,並輸入​ Body,例如Triggered by pushing that button in the app...

        應用程式內訊息內容 {modal="regular"}

      4. 選取​ 設定 ​標籤。

        1. 選取​ 訊息 ​中的​ 自訂大小
        2. 停用​ 適合內容
        3. 將​ 高度 ​設為​ 75%

        應用程式內訊息設定 {modal="regular"}

  5. 選取​ 檢閱以啟動。 若要選擇性地編輯​ ContentPropertiesActions ​或以上的任何組態,請選取 編輯

  6. 在​ 檢閱以啟動(行銷活動名稱 ​畫面中,選取​ 啟動

  7. 一段時間後,您會在​ 行銷活動 ​清單中看到狀態為​ 即時 ​的​ 行銷活動名稱
    行銷活動清單 {modal="regular"}

觸發應用程式內訊息

您已具備傳送應用程式內訊息的所有要素。 剩下的是如何在應用程式中觸發此應用程式內訊息。

iOS
  1. 前往Xcode專案導覽器中的​ Luma > Luma > Utils > MobileSDK。 尋找func sendTrackAction(action: String, data: [String: Any]?)函式,並新增下列程式碼,此程式碼會根據引數MobileCore.track呼叫action data函式。

    code language-swift
    // Send trackAction event
    MobileCore.track(action: action, data: data)
    
  2. 前往Xcode專案導覽器中的​ Luma > Luma > Views > General > ConfigView。 尋找應用程式內訊息按鈕的程式碼,並新增下列程式碼:

    code language-swift
    // Setting parameters and calling function to send in-app message
    Task {
        MobileSDK.shared.sendTrackAction(action: "in-app", data: ["showMessage": "true"])
    }
    
Android
  1. 在Android Studio導覽器中,前往​ Android ChevronDown > app > kotlin+java > com.adobe.luma.tutorial.android > models > MobileSDK。 尋找fun sendTrackAction(action: String, data: Map<String, String>?)函式,並新增下列程式碼,此程式碼會根據引數MobileCore.track呼叫action data函式。

    code language-kotlin
    // Send trackAction event
    MobileCore.track(action, data)
    
  2. 在Android Studio導覽器中,移至​ Android ChevronDown > app > kotlin+java > com.adobe.luma.tutorial.androi > views > ConfigView.kt。 尋找onInAppMessageClick處理常式按鈕的程式碼,並新增下列程式碼:

    code language-kotlin
    // Setting parameters and calling function to send in-app message
    MobileSDK.shared.sendTrackAction(
        "in-app",
        mapOf("showMessage" to "true")
    )
    

使用您的應用程式進行驗證

您可以從應用程式本身驗證應用程式內訊息。

iOS
  1. 使用 Play ,在模擬器中或在Xcode的實體裝置上重建並執行應用程式。

  2. 前往​ 設定 ​標籤。

  3. 點選​ 應用程式內訊息。 您會在應用程式中看到應用程式內訊息。

    {width="300"}

Android
  1. 使用 Play ,在模擬器中或在Android Studio的實體裝置上重建並執行應用程式。

  2. 前往​ 設定 ​標籤。

  3. 點選​ 應用程式內訊息。 您會在應用程式中看到應用程式內訊息。

    {width="300"}

驗證Assurance中的實作

您可以在Assurance UI中驗證應用程式內訊息。

  1. 檢閱設定指示區段,將您的模擬器或裝置連線到Assurance。

  2. 選取​ 應用程式內傳訊

  3. 選取​ 事件清單

  4. 選取​ 顯示訊息 ​專案。

  5. 檢查原始事件,特別是html,其中包含應用程式內訊息的完整版面配置和內容。

    Assurance應用程式內訊息 {modal="regular"}

後續步驟

您現在應該擁有所有相關和適用的所有工具,以便開始新增應用程式內訊息。 例如,根據您在應用程式中追蹤的特定互動來促銷產品。

SUCCESS
您已啟用應用程式以供應用程式內傳訊使用,並針對Experience Platform Mobile SDK使用Journey Optimizer和Journey Optimizer擴充功能新增應用程式內傳訊行銷活動。
感謝您花時間學習Adobe Experience Platform Mobile SDK。 如果您有任何疑問、想分享一般意見或有關於未來內容的建議,請在這篇Experience League社群討論貼文上分享。

下一個: 建立和顯示優惠方案

recommendation-more-help
9fed61f5-c338-47ad-8005-0b89a5f4af8b