val notificationHandler = NotificationHandlerFactory.createNotificationHandler(
context = context,
newMessageIntent = {
message: Message,
channel: Channel,
->
// Return the intent you want to be triggered when the notification is clicked
val intent: Intent = [....]
intent
}
)
Push Notifications
Artifacts related with Push Notifications have been extracted from the main repository. You can find them on this GitHub repository
Updated methods
We have changed/removed some methods related with our Push Notification implementation, if you are using any of them, follow the next steps:
ChatClient.setDevice()
: This method is not needed at all, our SDK already take care of this logic whenever you configure Push Notifications into ourChatClient
.ChatClient.dismissChannelNotifications()
: This static method has been moved intoChatClient
class, so if you were using it, you will need to obtain yourChatClient
instance before to call it.NotificationHandlerFactory.createNotificationHandler()
: The signature of this factory method has been updated. The lambda that is executed to create the intent that will handle the Push Notification is receiving now the wholeMessage
/Channel
entity.
Firebase
If you were using our Firebase Implementation and want to keep it, you only need to switch the dependency in your build.gradle
file, and update the imports where the old classes are used.
dependencies {
implementation "io.getstream:stream-android-push-firebase:$stream_android_push_version"
}
The constructor of FirebasePushDeviceGenerator
has been updated, now it requires a provider name.
val firebasePushDeviceGenerator = FirebasePushDeviceGenerator(
providerName = "your_provider_name"
)
Huawei
If you were using our Huawei Implementation and want to keep it, you only need to switch the dependency in your build.gradle
file, and update the imports where the old classes are used.
dependencies {
implementation "io.getstream:stream-android-push-huawei:$stream_android_push_version"
}
The constructor of HuaweiPushDeviceGenerator
has been updated, now it requires a provider name.
val huaweiPushDeviceGenerator = HuaweiPushDeviceGenerator(
context = context,
appId = ApplicationConfigurator.HUAWEI_APP_ID,
providerName = "your_provider_name",
)
Xiaomi
If you were using our Xiaomi Implementation and want to keep it, you only need to switch the dependency in your build.gradle
file, and update the imports where the old classes are used.
dependencies {
implementation "io.getstream:stream-android-push-xiaomi:$stream_android_push_version"
}
The constructor of XiaomiPushDeviceGenerator
has been updated, now it requires a provider name.
val xiaomiPushDeviceGenerator = XiaomiPushDeviceGenerator(
context = context,
appId = ApplicationConfigurator.XIAOMI_APP_ID,
appKey = ApplicationConfigurator.XIAOMI_APP_KEY,
providerName = "your_provider_name",
)