У меня проблема с обработкой уведомлений, когда приложение в фоновом режиме.В настоящее время, когда я помещаю приложение в фоновом режиме после нажатия на уведомление, оно запускает первое действие, определенное в манифесте (в моем случае это LoginActivity).Я хочу, чтобы он выдвигал другие действия на передний план, если он запущен.
Ниже приведено объявление моей активности в манифесте
<activity
android:name=".features.login.LoginActivity"
android:label="@string/app_name"
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@style/AppTheme.NoActionBar">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activity
android:name="co.blastlab.expo.features.event.EventActivity"
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@style/AppTheme.NoActionBar"/>
А здесь ниже у меня есть метод sendNotification.
private fun sendNotification(remoteMessage: RemoteMessage) {
val notification = remoteMessage.notification
val intent = Intent(this, EventActivity::class.java)
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
val pendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_ONE_SHOT)
val defaultSoundUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION)
val notificationBuilder = NotificationCompat.Builder(this, defaultChannel)
.setLargeIcon(BitmapFactory.decodeResource(resources, R.mipmap.launcher_48dp))
.setSmallIcon(R.drawable.icon)
.setContentTitle(notification!!.title)
.setContentText(notification.body)
.setAutoCancel(true)
.setSound(defaultSoundUri)
.setChannelId(defaultChannel)
.setContentIntent(pendingIntent)
val notificationManager = getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
notificationManager.notify(0, notificationBuilder.build())
}
Понятия не имею, куда идти дальше.