SDK Installation
Installing using Catalog
Integration using a Version Catalog is the recommended way of integration; refer to the Configure Version Catalog document to configure a catalog if not done already. Once you have configured the catalog add the dependency in the app/build.gradle file as shown below
dependencies {
...
implementation(moengage.richNotification)
}
Alternatively, you can add the dependency using Artifact ID as described in Installation using Artifact ID. However, installation using Catalog ID is the recommended approach as installing using Artifact ID may lead to version mismatch if mapped incorrectly.
Timer with Progress Bar
Schedule Exact Alarm Permission
The SDK uses Alarms to periodically update the progress in the progress bar. Starting Android 12, additional permission is required to use exact alarms. Refer to the documentation for more details. To support the Timer with Progress Bar template on Android 12 and above devices, add the following permission in your manifest file.
<uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM"/>
Starting Android 14, the Alarm permission is off by default. So you need to ask for explicit Alarm permission if you want to show Timer notifications apart from adding the previous line in your manifest file. Verify if the permission is already granted and accordingly call the following line to get the Alarm permission from the customer.
startActivity(Intent(ACTION_REQUEST_SCHEDULE_EXACT_ALARM))
If the application does not have the permission above, the Timer with Progress Bar template will not be shown to the user; instead, a backup template will be displayed to the user which will have the Timer but not the progress bar.
Customization
The SDK defines the default color values for the progress bar's background and progress color. These can be customized to suit the application's theme by overriding the values for the below SDK-defined color attributes.
To set the custom color in light and dark mode, override the values in res/values/colors.xml and res/values-night/colors.xml, respectively.
<color name="moe_rich_push_progress_bar_background_color">[YOUR_COLOR]</color>
<color name="moe_rich_push_progress_bar_progress_color">[YOUR_COLOR]</color>