Firebase 應(yīng)用內(nèi)消息傳遞入門
作為應(yīng)用程序開發(fā)人員,我們努力使我們的應(yīng)用程序更加方便和簡(jiǎn)單。為了提供它,我們經(jīng)常需要第三方服務(wù)的幫助。
出于這個(gè)原因,我們直接進(jìn)入了 Firebase,現(xiàn)在我們準(zhǔn)備好與它分享我們的經(jīng)驗(yàn)。
什么是 Firebase?
Firebase 是一個(gè)移動(dòng)和網(wǎng)絡(luò)應(yīng)用程序開發(fā)平臺(tái)。Firebase 由互補(bǔ)的功能組成,開發(fā)人員可以混合搭配這些功能以滿足他們的需求。[…] Firebase 的初始產(chǎn)品是一個(gè)實(shí)時(shí)數(shù)據(jù)庫(kù),它提供了一個(gè) API,允許開發(fā)人員在多個(gè)客戶端之間存儲(chǔ)和同步數(shù)據(jù)。隨著時(shí)間的推移,它擴(kuò)展了產(chǎn)品線,成為應(yīng)用程序開發(fā)的全套產(chǎn)品。
資料來源:維基百科。
簡(jiǎn)而言之,F(xiàn)irebase 是一組工具,可讓您在沒有服務(wù)器端編程的情況下開發(fā)應(yīng)用程序。它具有實(shí)時(shí)數(shù)據(jù)庫(kù)、身份驗(yàn)證系統(tǒng)、崩潰報(bào)告、分析和其他服務(wù)。
Firebase 具有直觀易懂的界面,不需要特殊技能。
8 月 20 日,F(xiàn)irebase 向其生態(tài)系統(tǒng)添加了一個(gè)新產(chǎn)品:應(yīng)用內(nèi)消息。
Firebase 應(yīng)用內(nèi)消息傳遞入門
作為應(yīng)用開發(fā)者,吸引用戶使用您的應(yīng)用是您面臨的最大挑戰(zhàn)之一。雖然操作系統(tǒng)通知是提醒用戶返回您的應(yīng)用程序的好方法,但他們可能會(huì)迷失在成千上萬的通知中。
Firebase In-App Messaging 允許您通過向用戶發(fā)送有針對(duì)性的、個(gè)性化的和上下文相關(guān)的消息來吸引用戶。這些消息促使用戶進(jìn)行重要的應(yīng)用程序內(nèi)操作,例如訂閱您的時(shí)事通訊、觀看視頻或購(gòu)買商品。
假設(shè)您有一個(gè)購(gòu)物應(yīng)用程序。一些瀏覽應(yīng)用程序特定部分的用戶會(huì)看到一個(gè)活動(dòng)橫幅,向他們展示您的交易和折扣。
您可以對(duì)橫幅進(jìn)行硬編碼,但更改折扣條款或消息將需要上傳新版本的應(yīng)用程序。使用 Firebase In-App Messaging,只需幾分鐘即可配置消息、設(shè)置條款和顯示橫幅。
讓我們深入了解應(yīng)用內(nèi)消息。
實(shí)現(xiàn)路徑
添加 Firebase SDK
首先,您應(yīng)該創(chuàng)建一個(gè)新的 Android Studio 項(xiàng)目,其中包含您要使用的 Firebase SDK 的所有依賴項(xiàng)。
/* 完全用于 Firebase Analytics 和 Firebase */實(shí)施 'com.google.firebase:firebase-core: 16.0.3'/* Firebase 應(yīng)用內(nèi)消息傳遞 */實(shí)施 'com.google.firebase:firebase-inappmessaging-display:17.0.1'
如果您是從頭開始并且不知道如何設(shè)置 Firebase SDK,最好先閱讀以下文章:
將 Firebase 添加到您的 Android 項(xiàng)目
應(yīng)用程序與 Firebase 控制臺(tái)同步后,讓我們繼續(xù)下一步。
為 Analytics 創(chuàng)建基本的 UI 和事件
我們的應(yīng)用程序非常簡(jiǎn)單。它在 Main Activity 上只有一個(gè)按鈕可以打開另一個(gè) Activity:
{第一個(gè)活動(dòng)的屏幕 -> 箭頭 -> 第二個(gè)活動(dòng)的屏幕}
打開第二個(gè)屏幕后,用戶會(huì)看到應(yīng)用內(nèi)消息工具創(chuàng)建的橫幅。
要觸發(fā)和記錄事件,您應(yīng)該創(chuàng)建一個(gè) Firebase 實(shí)例。您可以使用默認(rèn)事件,但請(qǐng)注意,自定義事件通過數(shù)據(jù)分析為我們提供了更清晰的信息。
要使用 OnClickListener 處理 Android 中的按鈕 onclick 事件,請(qǐng)應(yīng)用以下代碼:
val firebaseAnalytics = FirebaseAnalytics.getInstance(這個(gè))firebaseAnalytics.logEvent("ButtonClicked", Bundle.EMPTY) 在 SpecialGoodsActivity onCreate() 方法中添加以下代碼: val firebaseAnalytics = FirebaseAnalytics.getInstance(這個(gè))firebaseAnalytics.logEvent("SpecialGoodsScreenOpened", Bundle.EMPTY)
當(dāng)然,如果你打算在你的應(yīng)用程序中實(shí)現(xiàn) Firebase 功能(尤其是 Analytics),我建議你在基類中設(shè)置 Firebase 實(shí)例以避免重復(fù)代碼。不過現(xiàn)在我們剛好在學(xué)習(xí),所以不介意。
現(xiàn)在您收到了兩個(gè)自定義事件:Main Activity 中的“ButtonClicked”和 SpecialGoodsActivity 中的“SpecialGoodsScreenOpened”。
調(diào)試事件
要在模擬的 Android 設(shè)備上啟用 Analytics 調(diào)試模式,請(qǐng)打開 Android Studio 終端面板并執(zhí)行以下命令行:
adb shell setprop debug.firebase.analytics.app
如果您想更改包名,請(qǐng)打開 build.gradle 文件,找到您的應(yīng)用程序包并將其放在 <your_app> 中。
打開 Firebase 控制臺(tái)的 DebugView 部分:
接下來,打開您的應(yīng)用程序并單擊按鈕。上傳您應(yīng)用中最近發(fā)生的所有事件可能需要幾分鐘時(shí)間。當(dāng)你完成后,你應(yīng)該有類似下面的東西:
設(shè)置應(yīng)用內(nèi)消息
現(xiàn)在在 Firebase 控制臺(tái)中打開應(yīng)用內(nèi)消息選項(xiàng)卡,然后單擊“創(chuàng)建您的第一個(gè)廣告系列”。
耶!您現(xiàn)在可以繼續(xù)執(zhí)行后續(xù)步驟。??
風(fēng)格和內(nèi)容
現(xiàn)在您必須為我們的活動(dòng)添加內(nèi)容并設(shè)置消息樣式。我已經(jīng)創(chuàng)建了一個(gè)帶有標(biāo)題和消息的簡(jiǎn)單模態(tài)視圖,它將通知我的用戶最近的折扣。如果您想使用按鈕,最好先閱讀Firebase 動(dòng)態(tài)鏈接主題。
有一個(gè)“在設(shè)備上測(cè)試”選項(xiàng)。但請(qǐng)注意,此選項(xiàng)僅適用于應(yīng)用程序打開事件,并且只允許您查看消息的外觀。
目標(biāo)
您可以在此處選擇目標(biāo)用戶、輸入活動(dòng)名稱、添加說明并選擇您要使用的應(yīng)用程序。
活動(dòng)名稱和描述對(duì)用戶不可見,可用于跟蹤您的活動(dòng)。目標(biāo)應(yīng)用程序和其他條件對(duì)所有用戶可見。
調(diào)度
您可以定義活動(dòng)的開始日期和結(jié)束日期以及觸發(fā)條件和消息顯示次數(shù)等選項(xiàng)。
“on_foreground”默認(rèn)事件將由應(yīng)用程序打開觸發(fā)。您可以使用“事件”選項(xiàng)卡上的任何事件。要使我們的自定義事件在應(yīng)用內(nèi)消息事件列表中可見,您必須在事件選項(xiàng)卡上將它們作為轉(zhuǎn)化打開:
您可以在自定義事件首次出現(xiàn)后的幾個(gè)小時(shí)內(nèi)在列表中看到它們。
添加我們的自定義事件“SpecialGoodsScreenOpened”。
第四步現(xiàn)在是可選的,所以我們跳過它。
結(jié)果
最后,是時(shí)候發(fā)布我們的活動(dòng)了。單擊按鈕并接收消息。
如果您尚未完成廣告系列的配置或仍需要決定策略,您可以隨時(shí)將其保存為草稿,稍后再回來進(jìn)行修改。
恭喜!現(xiàn)在,您可以通過一種非常方便的方式來吸引用戶并從您的應(yīng)用程序中獲得更多價(jià)值。將此功能與其他方便的 Firebase 工具相結(jié)合可能會(huì)將您的移動(dòng)開發(fā)提升到一個(gè)新的水平。