自訂 Firebase 應用程式內通訊訊息


Firebase 應用程式內通訊提供一組實用的預設行為, 您的訊息類型含有預設的外觀和風格,不過在某些情況下 以及延伸行為和訊息內容你可以透過應用程式內通訊功能新增動作 自訂訊息的外觀和風格。

在訊息中加入動作

透過這些操作,您可以運用應用程式內的訊息將使用者導向 網站或應用程式的特定畫面

Firebase In-App Messaging 會使用連結處理常式來處理動作。SDK 能使用多個處理常式,所以如果應用程式已有處理常式,Firebase In-App Messaging 即可使用該資源,無須進行任何額外設定如果你還未這項程序 有處理常式,可以使用 Firebase Dynamic Links。詳情請參閱: 在 iOS 上建立 Dynamic Links

使用 Firebase 控制台在訊息中新增動作

應用程式取得連結處理常式後,您就可以使用 動作。開啟 Firebase 控制台,即可執行以下操作: 訊息、 並建立新的廣告活動或編輯現有廣告活動。在該廣告活動中 資訊卡按鈕文字按鈕動作圖片動作橫幅廣告 動作,其中動作是相關的深層連結。

動作的格式取決於您選擇的訊息版面配置。強制回應 動作按鈕,包含可自訂的按鈕文字內容、文字顏色和背景 顏色。另一方面,圖片和頂端橫幅廣告則變為互動式廣告 指定動作。

修改郵件的外觀和風格

Firebase In-App Messaging 可讓您自訂訊息的顯示方式,變更應用程式的顯示方式 訊息版面配置、字型樣式、按鈕形狀等詳細資料。這裡共有兩個 修改訊息的顯示方式:修改預設的 Firebase In-App Messaging 從頭開始顯示或建立自己的訊息顯示程式庫。

注意:這項產品不適用於 macOS、Mac Catalyst、App Clip 或 watchOS 目標。

修改預設顯示方式

自訂訊息最簡便的方法,就是以 Firebase In-App Messaging的預設訊息顯示碼。

複製 firebase-ios-sdk 存放區

如要開始使用,請複製最新版本。 進入 firebase-ios-sdk 存放區,然後開啟 InAppMessaging 目錄

選取要修改的訊息類型

複製存放區後,您可以修改任何或所有的 Firebase In-App Messaging 訊息類型: CardModalBannerImageOnly。每個類型都會對應到 Firebase In-App Messaging 廣告活動建立流程中的訊息版面配置。

因此,每種類型都能存取一組不同的資料, Firebase 控制台中的廣告活動自訂選項:

類型 標題文字 內文 文字顏色 背景顏色 圖片資料 動作按鈕 次要動作按鈕
資訊卡
動態視窗
橫幅
僅限圖片

修改訊息顯示程式碼

知道這些訊息類型限制後,您可以自由修改 設為符合需求的選項。您可以建立顯示在應用程式底部的橫幅 瀏覽互動視窗的動作按鈕,並將應用程式內訊息嵌入使用者的 或任何其他會對訊息造成威脅的修改外觀和風格

修改郵件顯示時,請特別注意兩件事:

修改偏好郵件類型中的檔案」和相應的 「.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
完成上述步驟後,您可以更新 Pod、重建應用程式,並查看新的 自訂訊息即會顯示。

建立自己的訊息顯示資料庫

您不必限制 InAppMessaging 程式庫的工作就能建立 顯示訊息的 UI此外,您也可以從頭開始編寫自己的程式碼。

建構實作 InAppMessagingDisplay 通訊協定的類別

Firebase In-App Messaging 會使用 InAppMessaging 類別來處理 Firebase 伺服器和應用程式。該類別接著會使用 InAppMessagingDisplay 通訊協定來顯示收到的訊息。 如要建構自己的顯示程式庫,請編寫會實作通訊協定的類別。

通訊協定定義和說明文件請參閱 InAppMessaging 程式庫的 FIRInAppMessagingDisplay.h 檔案。

設定 messageDisplayComponent 以使用訊息顯示程式庫

InAppMessaging使用 messageDisplayComponent 屬性決定是哪些物件 並用於顯示訊息將該屬性設為您自訂的物件 訊息顯示類別,因此 Firebase In-App Messaging 知道要使用程式庫轉譯訊息:

InAppMessaging.inAppMessaging().messageDisplayComponent = yourInAppMessagingRenderingInstance