Firebase 應用程式內訊息傳遞提供了一組有用的預先配置行為和訊息類型,具有預設的外觀和風格,但在某些情況下,您可能想要擴展行為和訊息內容。應用程式內訊息傳遞可讓您為訊息新增操作並自訂訊息的外觀和風格。
在您的訊息中新增操作
透過操作,您可以使用應用程式內訊息將使用者引導至網站或應用程式中的特定螢幕。
實作深度連結處理程序
Firebase 應用程式內訊息傳遞使用連結處理程序來處理操作。 SDK 能夠使用多個處理程序,因此如果您的應用程式已經有一個處理程序,Firebase 應用程式內訊息傳遞可以使用該處理程序,而無需任何進一步設定。如果您還沒有處理程序,則可以使用 Firebase 動態連結。要了解更多信息,請閱讀在 iOS 上建立動態連結。
使用 Firebase 控制台將操作新增至您的訊息中
一旦您的應用程式有了連結處理程序,您就可以準備好使用操作來編寫行銷活動了。開啟 Firebase 控制台的Messaging ,然後啟動新的行銷活動或編輯現有的行銷活動。在該活動中,提供卡片、按鈕文字和按鈕操作、圖像操作或橫幅操作,其中操作是相關的深層連結。
操作的格式取決於您選擇的訊息佈局。模態框取得具有可自訂按鈕文字內容、文字顏色和背景顏色的操作按鈕。另一方面,圖像和頂部橫幅變得具有互動性,並在點擊時呼叫指定的操作。
修改訊息的外觀
Firebase 應用程式內訊息傳遞可讓您自訂訊息顯示,以變更應用程式呈現訊息佈局、字體樣式、按鈕形狀和其他詳細資訊的方式。修改訊息顯示有兩種方法:修改預設的 Firebase 應用程式內訊息顯示或從頭開始建立您自己的訊息顯示庫。
修改預設顯示
自訂訊息的最直接方法是建立 Firebase 應用程式內訊息的預設訊息顯示程式碼。
克隆firebase-ios-sdk
存儲庫
首先,複製最新版本的firebase-ios-sdk
儲存庫,然後開啟InAppMessaging 目錄。
選擇要修改的訊息類型
複製儲存庫後,您可以修改任何或所有 Firebase 應用程式內訊息傳遞訊息類型: Card
、 Modal
、 Banner
和ImageOnly
。每種類型都對應於 Firebase 應用程式內訊息行銷活動建立流程中的訊息佈局。
因此,每種類型都可以存取不同的資料集,具體由 Firebase 控制台中的廣告系列自訂選項決定:
類型 | 標題文本 | 主體 | 文字顏色 | 背景顏色 | 影像資料 | 動作按鈕 | 輔助操作按鈕 |
---|---|---|---|---|---|---|---|
卡片 | |||||||
莫代爾 | |||||||
橫幅 | |||||||
僅影像 |
修改訊息顯示渲染程式碼
考慮到訊息類型限制,您可以隨意修改它們。您可以創建一個顯示在應用程式底部的橫幅、在模式上的操作按鈕周圍移動、將應用程式內訊息嵌入到用戶的來源中,或進行任何其他修改以使訊息的外觀和感覺適合您的應用程式。
修改訊息顯示時主要要注意兩點:
- 訊息類型目錄:每種訊息類型都有一個單獨的目錄,其中包含確定該類型邏輯的檔案:
- Storyboard:
InAppMessaging
庫還有一個.storyboard
文件,可協助定義所有三種訊息類型的 UI:
修改您首選訊息類型目錄中的檔案以及.storyboard
的相應部分,以建立自訂訊息顯示。
更新您的 podfile 以使用修改後的InAppMessaging
程式碼
要讓 Firebase In-App Messaging 使用修改後的訊息顯示而不是預設顯示,請更新 podfile 以使用自訂的InAppMessaging
庫:
# Uncomment the next line to define a global platform for your project # platform :ios, '9.0' target 'YourProject' do # Comment the next line if you're not using Swift and don't want to use dynamic frameworks use_frameworks! # Pods for YourProject pod 'Firebase' # Remove the default InAppMessaging pod: # pod 'Firebase/InAppMessaging' # Overwrite it with a version that points to your local copy: pod `FirebaseInAppMessaging', :path => '~/Path/To/The/Cloned/Repo/' end
建立您自己的訊息顯示庫
您並不局限於使用InAppMessaging
庫來建立用於顯示訊息的 UI。您也可以從頭開始編寫自己的程式碼。
建構一個實作InAppMessagingDisplay
協定的類
Firebase 應用程式內訊息傳遞使用InAppMessaging
類別來處理 Firebase 伺服器與您的應用程式之間的通訊。該類別又使用InAppMessagingDisplay
協定來顯示它接收到的訊息。要建立您自己的顯示庫,請編寫一個實作該協定的類別。
協議定義和有關如何遵守該協議的文件位於InAppMessaging
庫的FIRInAppMessagingDisplay.h
文件中。
設定messageDisplayComponent
以使用您的訊息顯示庫
InAppMessaging
使用其messageDisplayComponent
屬性來決定顯示訊息時使用哪個物件。將該屬性設定為自訂訊息顯示類別的對象,以便 Firebase 應用程式內訊息傳遞知道使用您的庫來呈現訊息:
InAppMessaging.inAppMessaging().messageDisplayComponent = yourInAppMessagingRenderingInstance