Personalizza i tuoi messaggi di messaggistica in-app Firebase

La messaggistica in-app Firebase fornisce un insieme utile di comportamenti e tipi di messaggi preconfigurati con un aspetto predefinito, ma in alcuni casi potresti voler estendere comportamenti e contenuto dei messaggi. La messaggistica in-app ti consente di aggiungere azioni ai messaggi e personalizzare l'aspetto dei messaggi.

Aggiungi un'azione al tuo messaggio

Con le azioni puoi utilizzare i messaggi in-app per indirizzare gli utenti a un sito Web o a una schermata specifica nella tua app.

La messaggistica in-app Firebase utilizza gestori di collegamento per elaborare le azioni. L'SDK è in grado di utilizzare diversi gestori, quindi se la tua app ne ha già uno, la messaggistica in-app Firebase può utilizzarlo senza ulteriori configurazioni. Se non disponi ancora di un gestore, puoi utilizzare Firebase Dynamic Links. Per saperne di più, leggi Creare collegamenti dinamici su iOS .

Aggiungi l'azione al tuo messaggio utilizzando la console Firebase

Una volta che la tua app ha un gestore di collegamento, sei pronto per comporre una campagna con un'azione. Apri la console Firebase su Messaggistica e avvia una nuova campagna o modifica una campagna esistente. In quella campagna, fornisci una scheda , il testo del pulsante e l'azione del pulsante , un'azione dell'immagine o un'azione del banner , dove l'azione è un collegamento diretto pertinente.

Il formato dell'azione dipende dal layout del messaggio scelto. Le modalità modali ottengono pulsanti di azione con contenuto del testo del pulsante, colore del testo e colore dello sfondo personalizzabili. Le immagini e i banner principali, invece, diventano interattivi e richiamano l'azione specificata quando vengono toccati.

Modifica l'aspetto del messaggio

La messaggistica in-app Firebase ti consente di personalizzare la visualizzazione dei messaggi per modificare il modo in cui l'app esegue il rendering del layout dei messaggi, degli stili dei caratteri, delle forme dei pulsanti e di altri dettagli. Esistono due modi per modificare la visualizzazione dei messaggi: modificare le visualizzazioni predefinite della messaggistica in-app Firebase o creare da zero la propria libreria di visualizzazione dei messaggi.

Nota: questo prodotto non è disponibile su target macOS, Mac Catalyst, App Clip o watchOS.

Modifica le visualizzazioni predefinite

Il modo più semplice per personalizzare i tuoi messaggi è basarsi sul codice di visualizzazione dei messaggi predefinito di Firebase In-App Messaging.

Clona il repository firebase-ios-sdk

Per iniziare, clona l' ultima versione del repository firebase-ios-sdk e apri la directory InAppMessaging .

Seleziona i tipi di messaggio da modificare

Con il repository clonato, puoi modificare uno o tutti i tipi di messaggi di messaggistica in-app Firebase: Card , Modal , Banner e ImageOnly . Ogni tipo corrisponde a un layout del messaggio nel flusso di creazione della campagna di messaggistica in-app Firebase.

Di conseguenza, ogni tipo ha accesso a un diverso set di dati, determinato dalle opzioni di personalizzazione della campagna nella console Firebase:

Tipo titoloTesto corpo del testo colore del testo colore di sfondo imageData actionButton SecondaryActionButton
Carta
Modale
Stendardo
Solo immagine

Modificare il codice di rendering della visualizzazione del messaggio

Tenendo presente le limitazioni del tipo di messaggio, sei libero di modificarli come preferisci. Puoi creare un banner da visualizzare nella parte inferiore della tua app, spostare il pulsante di azione in una finestra modale, incorporare il messaggio in-app nel feed di un utente o qualsiasi altra modifica che renda l'aspetto dei messaggi adatto alla tua app .

Ci sono due cose principali a cui prestare attenzione quando si modifica la visualizzazione dei messaggi:

  • Directory del tipo di messaggio: ogni tipo di messaggio ha una directory separata con file che determinano la logica di quel tipo:
  • Storyboard: la libreria InAppMessaging dispone anche di un file .storyboard che aiuta a definire l'interfaccia utente per tutti e tre i tipi di messaggio:

Modifica i file nelle directory dei tuoi tipi di messaggi preferiti e nelle sezioni corrispondenti del .storyboard per creare visualizzazioni di messaggi personalizzate.

Aggiorna il tuo podfile per utilizzare il codice InAppMessaging modificato

Per fare in modo che la messaggistica in-app Firebase utilizzi le visualizzazioni dei messaggi modificate anziché quelle predefinite, aggiorna il tuo podfile per utilizzare la libreria InAppMessaging personalizzata:

# 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
Fatto ciò, puoi aggiornare i tuoi pod, ricostruire la tua app e vedere i tuoi nuovi messaggi personalizzati.

Crea la tua libreria di visualizzazione dei messaggi

Non sei limitato a lavorare dalla libreria InAppMessaging per creare un'interfaccia utente per la visualizzazione dei messaggi. Puoi anche scrivere il tuo codice da zero.

Crea una classe che implementa il protocollo InAppMessagingDisplay

La messaggistica in-app Firebase utilizza la classe InAppMessaging per gestire le comunicazioni tra i server Firebase e la tua app. Quella classe, a sua volta, utilizza il protocollo InAppMessagingDisplay per visualizzare i messaggi che riceve. Per creare la tua libreria di visualizzazione, scrivi una classe che implementa il protocollo.

La definizione del protocollo e la documentazione su come conformarsi ad esso si trovano nel file FIRInAppMessagingDisplay.h della libreria InAppMessaging .

Imposta messageDisplayComponent per utilizzare la libreria di visualizzazione dei messaggi

InAppMessaging utilizza la proprietà messageDisplayComponent per determinare quale oggetto utilizzare durante la visualizzazione dei messaggi. Imposta tale proprietà su un oggetto della classe di visualizzazione dei messaggi personalizzata, in modo che la messaggistica in-app Firebase sappia utilizzare la tua libreria per eseguire il rendering dei messaggi:

InAppMessaging.inAppMessaging().messageDisplayComponent = yourInAppMessagingRenderingInstance