Builder
Functions
Builds the configuration object.
Enables automatic registration for Amazon Device Messaging. When manually passing ADM push tokens to Braze, this setting should be disabled.
Sets the API key. An empty API key will have no effect and will not be present in the built config object.
Sets whether Braze Geofences are automatically requested by the Braze SDK. This defaults to true.
Sets the data flush interval on poor connections. On android.os.Build.VERSION_CODES.N and below, this for example is GPRS and/or EDGE. Otherwise, this is defined as roaming data connections or connections where the max network link upstream/downstream bandwidth is below 4 Mbps.
Sets whether the Content Cards unread visual indication bar is enabled.
Sets a custom API endpoint. When the Braze singleton is initialized, it will point to the specified custom endpoint.
The set of custom location provider names. Note that only one provider will ultimately be used to provide a session start location.
Sets the activity that Braze will use when opening a deeplink inside the app via a android.webkit.WebView instead of the default Braze WebView Activity.
This integer sets the default accent color for push notifications on Android Lollipop and higher. If not specified, the default background color is gray (the same gray Lollipop uses for system notifications). This value can be overridden at runtime by a push notification that sets a custom accent color.
Sets the android.app.NotificationChannel user facing description as seen via NotificationChannel.getDescription for the Braze default NotificationChannel.
Sets the android.app.NotificationChannel user facing name as seen via NotificationChannel.getName for the Braze default NotificationChannel.
Device object allowlisting is a feature where the SDK can be configured to only send a subset of the device object keys/values according to some allowlist. An empty allowlist will result in no device data being sent to Braze.
Device object allowlisting is a feature where the SDK can be configured to only send a subset of the device object keys/values according to some allowlist.
Sets whether a push story is automatically dismissed when clicked.
Sets the classpath for the fallback Firebase Cloud Messaging Service. Note that this class must have a "onMessageReceived(remoteMessage: RemoteMessage)" method to be invoked correctly.
Sets whether the use of a fallback Firebase Cloud Messaging Service is enabled. A fallback service will be used whenever a push sent to the default Braze Firebase Messaging Service cannot be handled by Braze.
Sets the sender ID key used to register for Firebase Cloud Messaging. String cannot be empty
Sets whether the Braze Geofences feature is enabled. Note that if this field is not set, location collection being enabled/disabled will determine whether Braze Geofences are enabled.
Sets the data flush interval on good connections. On android.os.Build.VERSION_CODES.N and below, this for example is 3G. Otherwise, this is defined as roaming data connections or connections where the max network link upstream/downstream bandwidth is between 4 Mbps and 14 Mbps.
Sets the data flush interval on great connections. On android.os.Build.VERSION_CODES.N and below, this for example is 4G or Wifi. Otherwise, this is defined as roaming data connections or connections where the max network link upstream/downstream bandwidth is above 14 Mbps.
Enables Braze to automatically open your app and any deep links when a push notification is clicked. See BrazeNotificationUtils.routeUserWithNotificationOpenedIntent() in the UI project for more details.
Gets whether the In-App Message Test Push will attempt to automatically display the test In-App Message without the need for clicking on a push beforehand. If the app is in the background or otherwise can't immediately display the In-App Message, a push will be displayed instead.
Sets the maximum length of time, in milliseconds, to wait for the android.webkit.WebViewClient.onPageFinished callback to fire before displaying an HTML In-App Message.
Sets whether the SDK to automatically register for Firebase Cloud Messaging. When manually passing push tokens to Braze, this setting should be disabled.
Determines whether the Braze will automatically register tokens in com.google.firebase.messaging.FirebaseMessagingService.onNewToken.
Determines whether view window insets are applied automatically for HTML In-App Messages. By default, this is false.
Determines whether the link target is supported for HTML In-App Messages.
In-app message accessibility exclusive mode, when enabled, forces accessibility readers to only be able to read currently displaying in-app messages and no other screen contents. A common use for this feature is the desire to prevent Android TalkBack from reading out UI elements "behind" a currently displaying in-app message.
This boolean sets whether Braze should automatically collect location (if the user permits). If set to true, location data will be collected once at the start of each session. If not specified or set to false, all location collection will be disabled and location will never be set for the user unless integrating apps manually call BrazeUser.setLastKnownLocation.
Sets whether a screen wakelock will be acquired to wake the device screen for push notifications. Note that the android.Manifest.permission#WAKE_LOCK
must also be held by the app for the wakelock to be acquired if this is enabled.
Sets whether SDK authentication is enabled.
Sets the session timeout behavior to be either session-start or session-end based. When true, the session timeout and eventual session end is calculated using the timestamp of the start of the session. When false, the session timeout and eventual session end is calculated using the end of the session.
Determines whether View.isInTouchMode is required to show HTML In-App Messages. By default, this is true.
Sets the large icon used in notifications.
When true, sets the Newsfeed visual indicator for read/unread status to be enabled.
Sets if Braze should automatically opt-in the user when push is authorized by Android.
Sets the activity that Braze will add to the back stack when automatically following deep links for push.
Enables Braze to add an activity to the back stack when automatically following deep links for push. When disabled, no activity is added to the back stack only the deep link is followed.
Sets whether a the text content in push notifications should be interpreted and rendered as Html using android.text.Html.fromHtml.
Internal method. Do not use.
Configures the SDK Metadata for this integration. Note that fields set here will append any fields set elsewhere on the SDK.
Internal method. Do not use.
The length of time before a session times out in seconds. The session manager will "re-open" otherwise closed sessions if the call to StartSession comes within this interval.
Sets whether In-App Messages should automatically be prevented from displaying when the triggered user-id is different from the current user-id.
Sets if Braze should set the LayoutParams.FLAG_SECURE flag to secure Braze defined Activities via window flags.
Sets the small icon used in notifications.
The minimum interval in seconds between actions, such as an in-app message, that can be triggered by an in-app event, such as the logging of a custom event. This is a general rate limit for actions to prevent overloading a user with messages.