InAppMessaging
class InAppMessaging : NSObject
The root object for in-app messaging iOS SDK.
Note: Firebase InApp Messaging depends on using a Firebase Instance ID & token pair to be able to retrieve FIAM messages defined for the current app instance. By default, Firebase in-app messaging SDK would obtain the ID & token pair on app/SDK startup. As a result of using ID & token pair, some device client data (linked to the instance ID) would be collected and sent over to Firebase backend periodically.
The app can tune the default data collection behavior via certain controls. They are listed in descending order below. If a higher-priority setting exists, lower level settings are ignored.
- Dynamically turn on/off data collection behavior by setting the
automaticDataCollectionEnabled
property on theFIRInAppMessaging
instance to true/false Swift or YES/NO (objective-c). - Set
FirebaseInAppMessagingAutomaticDataCollectionEnabled
to false in the app’s plist file. - Global Firebase data collection setting.
-
Gets the singleton FIRInAppMessaging object constructed from default Firebase App settings.
Declaration
Swift
class func inAppMessaging() -> InAppMessaging
-
A boolean flag that can be used to suppress messaging display at runtime. It’s initialized to false at app startup. Once set to true, fiam SDK would stop rendering any new messages until it’s set back to false.
Declaration
Swift
var messageDisplaySuppressed: Bool { get set }
-
A boolean flag that can be set at runtime to allow/disallow fiam SDK automatically collect user data on app startup. Settings made via this property is persisted across app restarts and has higher priority over FirebaseInAppMessagingAutomaticDataCollectionEnabled flag (if present) in plist file.
Declaration
Swift
var automaticDataCollectionEnabled: Bool { get set }
-
This is the display component that will be used by FirebaseInAppMessaging to render messages. If it’s nil (the default case when FirebaseIAppMessaging SDK starts), FirebaseInAppMessaging would only perform other non-rendering flows (fetching messages for example). SDK FirebaseInAppMessagingDisplay would set itself as the display component if it’s included by the app. Any other custom implementation of FIRInAppMessagingDisplay would need to set this property so that it can be used for rendering fiam message UIs.
Declaration
Swift
var messageDisplayComponent: InAppMessagingDisplay { get set }