Show Menu
主題×

應用程式內傳訊

您可以傳遞由任何分析資料或事件觸發的應用程式內訊息。實施後,訊息會動態傳遞至應用程式,且不需要更新程式碼。

新版 Adobe Experience Cloud SDK

在尋找 Adobe Experience Platform Mobile SDK 的相關資訊和文件嗎? 按一下 這裡 以取得最新文件。
我們於 2018 年 9 月發行了全新的 SDK 主要版本。這些新的 Adobe Experience Platform Mobile SDK 可透過 Experience Platform Launch 設定。
如果您使用 Adobe Experience Platform Mobile SDK 搭配 Adobe Launch,您​ 必須 ​同時安裝 Adobe Analytics Mobile Services 擴充功能,方可使用應用程式內訊息和推播通知之類的 Adobe Mobile Services 功能。如需詳細資訊,請參閱 Adobe Analytics - Mobile Services 。如需如何將推送訊息及應用程式內訊息與 Experience Cloud SDK 搭配使用的詳細資訊,請參閱 設定推送傳訊 設定應用程式內傳訊
若要使用應用程式內傳訊,您​ 必須 ​有 SDK 4.2 版或更新版本。
您可以在 Adobe Mobile Services 中建立訊息,並定義訊息顯示時機的規則。如需詳細資訊,請參閱 建立應用程式內訊息 。若要顯示應用程式內訊息,必須更新 SDK。即使您尚未定義任何訊息,也可以完成這些步驟。在您定義訊息後,訊息會動態傳遞至您的應用程式,且顯示時不含應用程式商店更新。

啟用應用程式內傳訊

  1. 新增資料庫至您的專案與實施生命週期。
    如需詳細資訊,請參閱 核心實施與生命週期 中的​ 新增 SDK 和設定檔案至您的 IntelliJ IDEA 或 Eclipse 專案
  2. 更新 AndroidManifest.xml 檔案以宣告全螢幕活動並啟用訊息通知處理常式:
    <activity  
    android:name="com.adobe.mobile.MessageFullScreenActivity"  
    android:theme="@android:style/Theme.Translucent.NoTitleBar" /> 
    <receiver android:name="com.adobe.mobile.MessageNotificationHandler" />
    
    
    如果您選取了一個模式配置,請為訊息選取以下其中一種主題:
    • Theme.Translucent.NoTitleBar.Fullscreen
    • Theme.Translucent.NoTitleBar
    • Theme.Translucent 例如:
    <activity 
    android:name="com.adobe.mobile.MessageFullScreenActivity" 
    android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" 
    android:windowSoftInputMode="adjustUnspecified|stateHidden" /> 
    <receiver android:name="com.adobe.mobile.MessageNotificationHandler" />
    
    
  3. 匯入資料庫:
    import com.adobe.mobile.*;
    
    
  4. 在每個 collectLifecycleData 呼叫中,傳遞 this 以提供參考給目前的活動:
    @Override 
    public void onResume() { 
        Config.collectLifecycleData(this); 
    }
    
    
  5. 確認 ADBMobileConfig.json 檔案包含應用程式內傳訊必需的設定。
    messages remotes 為必要項目。
    若要在啟動時動態更新應用程式內訊息,必須有 remotes 物件且已正確設定:
    “messages”: [ 
        { 
            “messageId”: “de45c43c-37bf-441f-8cbd-cc3ba3469ebe”, 
            “template”: “fullscreen”, 
            “showOffline”: false, 
            “showRule”: “always”, 
            “endDate”: 2524730400, 
            “startDate”: 0, 
            “audiences”: [], 
            “triggers”: [], 
            “payload”: { // contents change depending on template 
                “html”: “<html>html code goes here</html>” 
            }, 
        }, 
        … 
    ] 
    “remotes” : { 
        “analytics.poi”: “https://assets.adobedtm.com/…/yourfile.json”, 
        “messages”: “https://assets.adobedtm.com/…/yourfile.json” 
    }
    
    
    如果未設定此物件,請從 Adobe Mobile Services 下載更新的 ADBMobileConfig.json 檔案。如需詳細資訊,請參閱 開始之前

追蹤應用程式內訊息

Android Mobile SDK 可為您的應用程式內訊息追蹤以下量度:
  • 如果是全螢幕和警示樣式的應用程式內訊息:
    • 曝光次數 : 使用者觸發應用程式內訊息時。
    • 點進次數 : 使用者按下​ 點進 ​時。
    • 取消 : 使用者按下​ 取消 ​時。
  • 如果是自訂的全螢幕應用程式內訊息,訊息中的 HTML 內容必須包含正確的程式碼,才能通知 SDK 追蹤以下的按鈕:
    • 點進 (重新導向) 追蹤範例:
      adbinapp://confirm/?url=https://www.yoursite.com
    • 取消 (關閉) 追蹤範例:
      adbinapp://cancel

本機後援影像

建立全螢幕訊息時,您可以選擇指定後援影像。如果您的訊息無法從 Web 擷取其要使用的影像,SDK 會嘗試從應用程式資產資料夾載入相同名稱的影像。這讓您即使在使用者離線,或無法連線至預先決定的影像時,也可以用原本的形式來顯示訊息。
在 Adobe Mobile Services 中設定訊息時,系統會指定後援影像的資產名稱,您必須確保指定的資源可用。

設定通知圖示

以下方法可讓您設定顯示在通知區域的大/小型圖示,以及當通知出現在通知匣時會顯示的大型圖示。
  • Config.setSmallIconResourceId(int resourceId)
    設定用於 SDK 所建立之通知的小型圖示。此圖示在使用者於通知中心查看完整通知時會出現在狀態列,且是所顯示影像的次要影像。
    • 以下是此方法的語法:
      public static void setSmallIconResourceId(final int resourceId); 
      
      
    • 以下是此方法的範例程式碼:
      Config.setSmallIconResourceId(R.drawable.appIcon);
      
      
  • Config.setLargeIconResourceId(int resourceId)
    設定用於 SDK 所建立之通知的大型圖示。此圖示是使用者在通知中心查看完整通知時所顯示的主要影像。
    • 以下是此方法的語法:
      public static void setLargeIconResourceId(final int resourceId); 
      
      
    • 以下是此方法的範例程式碼:
      Config.setLargeIconResourceId(R.drawable.appIcon);