Pushwoosh Android SDK Documentation

Complete API reference for the Pushwoosh Android SDK — push notifications, in-app messaging, location-based campaigns, and more. Add only the modules your app needs.


Quick Start

Apply the Firebase plugin and add the SDK dependency to build.gradle:

plugins {
    id 'com.google.gms.google-services'
}

dependencies {
    implementation 'com.pushwoosh:pushwoosh-firebase:VERSION'
}

Place google-services.json (downloaded from Firebase Console) into the app/ folder.

Add your Pushwoosh App ID and API token to AndroidManifest.xml:

<meta-data android:name="com.pushwoosh.appid" android:value="XXXXX-XXXXX"/>
<meta-data android:name="com.pushwoosh.apitoken" android:value="YOUR-DEVICE-API-TOKEN"/>

Call when the user agrees to receive notifications (e.g. on a button tap):

Pushwoosh.getInstance().registerForPushNotifications();

Link copied to clipboard

Core module of the Pushwoosh SDK. Handles push notification registration, user segmentation via tags, in-app messaging, and rich media. Start here — all other modules depend on this one.

Link copied to clipboard

Adds application icon badge number management to the Pushwoosh SDK. When Pushwoosh delivers a push notification, this module automatically updates the badge count on the app icon across a wide range of Android launchers. Add this dependency when you need to display or control unread notification counts on the app icon. The primary entry point is PushwooshBadge.

Link copied to clipboard

Adds VoIP call support to the Pushwoosh SDK. When Pushwoosh delivers a VoIP push notification, this module intercepts it, registers the call with the Android Telecom Framework, and presents the system incoming-call UI. Add this dependency when you need to deliver VoIP calls via push and integrate them with a calling solution such as WebRTC, Twilio, or Agora. The primary configuration entry point is PushwooshCallSettings.

Link copied to clipboard

Integrates Pushwoosh with Firebase Cloud Messaging (FCM) on Android. By default, the SDK handles FCM automatically and no additional code is required. Add this dependency when you need to deliver push notifications through FCM and want optional manual control over the messaging service integration. If your app registers a custom FirebaseMessagingService — for example to co-exist with another push provider — use PushwooshFcmHelper to forward FCM callbacks to Pushwoosh.

Link copied to clipboard

Integrates Pushwoosh with Huawei Mobile Services (HMS) Push Kit on Android. By default, the SDK handles HMS automatically and no additional code is required. Add this dependency when your app targets Huawei devices and needs to deliver push notifications through HMS Push Kit. If your app registers a custom HmsMessageService — for example to co-exist with another push provider — use PushwooshHmsHelper to forward HMS callbacks to Pushwoosh.

Link copied to clipboard

Provides a persistent message inbox that stores push notifications delivered by Pushwoosh, letting users revisit them after dismissing the system tray alert. Add this dependency when you want to surface a message center inside your app where users can read, act on, and delete received pushes. The primary entry point for loading and managing inbox messages is PushwooshInbox.

Link copied to clipboard

Provides ready-made UI components for displaying the Pushwoosh message inbox inside your app, so you can surface a message center without building list screens from scratch. Add this dependency when you want a Fragment or a standalone Activity that renders the inbox messages delivered by Pushwoosh and handles read/delete interactions out of the box. The primary entry point for obtaining the inbox UI is PushwooshInboxUi.

Link copied to clipboard

Enables geo push notifications by tracking the device's location and registering it with Pushwoosh geozones. When the device enters a configured geozone, Pushwoosh delivers the associated push notification. Add this dependency when you need to trigger pushes based on the user's physical location. The primary entry point is PushwooshLocation.