Skip to content

Instantly share code, notes, and snippets.

View bowserf's full-sized avatar

Frédéric Torcheux bowserf

View GitHub Profile
import android.graphics.Color
import androidx.core.app.NotificationCompat
import androidx.core.app.NotificationManagerCompat
import com.sample_app.R
private const val MESSAGES_CHANNEL_ID = "notification_channel_id"
private const val NOTIFICATION_ID = 123456
fun pushMessageNotification() {
...
import android.graphics.Color
import androidx.core.app.NotificationCompat
import androidx.core.app.NotificationManagerCompat
import com.sample_app.R
private const val MESSAGES_CHANNEL_ID = "notification_channel_id"
private const val NOTIFICATION_ID = 123456
fun pushMessageNotification() {
...
import android.app.Notification
import android.graphics.Bitmap
import androidx.core.app.NotificationCompat
private fun addNewMessageToExistingMessageNotificationStyle(
previousNotification: Notification,
userName: String,
userProfileBitmap: Bitmap,
text: String,
): NotificationCompat.MessagingStyle {
import android.app.Notification
import androidx.core.app.NotificationManagerCompat
private const val NOTIFICATION_ID = 123456
private fun getPreviousNotification(): Notification? {
return NotificationManagerCompat.from(context).activeNotifications
.find { it.id == NOTIFICATION_ID }
?.notification
}
import android.app.Notification
import android.graphics.Bitmap
import androidx.core.app.NotificationCompat
import androidx.core.app.NotificationManagerCompat
fun pushMessageNotification() {
...
val previousNotification = getPreviousNotification()
val chatMessageStyle = if (previousNotification != null) {
addNewMessageToExistingMessageNotificationStyle(
import android.app.PendingIntent
import android.content.Intent
import androidx.core.app.PendingIntentCompat
import com.mwm.labs.poc.audiochat.main_activity.MainActivity
private fun createPendingIntent(): PendingIntent? {
val intent = createIntent()
return PendingIntentCompat.getActivity(
/* context = */ context,
/* requestCode = */ 42,
import android.app.NotificationChannel
import android.app.NotificationManager
import android.os.Build
import androidx.core.app.NotificationManagerCompat
private const val MESSAGES_CHANNEL_ID = "notification_channel_id"
private fun createNotificationChannelIfNeeded() {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.O) {
return
import android.graphics.Color
import androidx.core.app.NotificationCompat
import androidx.core.app.NotificationManagerCompat
import com.sample_app.R
private const val MESSAGES_CHANNEL_ID = "notification_channel_id"
private const val NOTIFICATION_ID = 123456
fun pushMessageNotification() {
createNotificationChannelIfNeeded()
// 1.12.0 is the latest version as of the 4th of february 2024
implementation("androidx.core:core:1.12.0")
import android.graphics.Bitmap
import androidx.core.app.NotificationCompat
fun createMessageNotificationStyle(
userName: String,
userProfileBitmap: Bitmap,
text: String,
): NotificationCompat.MessagingStyle {
val person = createPerson(userName, userProfileBitmap)
val chatMessageStyle = NotificationCompat.MessagingStyle(person)