从通知启动应用程序无法正常工作

问题描述

当我从Firebase发送通知时,我的应用程序捕获了该通知,我想开始进行额外的活动 一些代码 FirebaseMessagingervice

 override fun onMessageReceived(remoteMessage: RemoteMessage) {
    mnotificationmanager = getSystemService(Context.NOTIFICATION_SERVICE) as notificationmanager
    createNotificationChannel()
    val notificationBuilder =
        NotificationCompat.Builder(this,CHANNEL_ID)
            .setContentTitle(remoteMessage.notification?.title)
            .setContentText(remoteMessage.notification?.body)
            .setPriority(NotificationCompat.PRIORITY_DEFAULT)
            .setStyle(NotificationCompat.BigTextStyle())
            .setSound(ringtoneManager.getDefaultUri(ringtoneManager.TYPE_NOTIFICATION))
            .setContentIntent(createPendingIntent())
            .setAutoCancel(true)
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        notificationBuilder.setSmallIcon(R.drawable.ic_notification_icon);
        notificationBuilder.color = resources.getColor(R.color.pink);
    } else {
        notificationBuilder.setSmallIcon(R.drawable.ic_notification_icon);
    }
    mnotificationmanager?.notify(0,notificationBuilder.build())
}

private fun createPendingIntent(): PendingIntent {
    val intent = MainActivity.getLaunchInstanceReward(this,"50")
    intent.putExtra("rewardCoins","50")
    return PendingIntent.getActivity(this,intent,0)
}

活动功能

fun getLaunchInstanceReward(context: Context,reward:String): Intent {
        return Intent(context,MainActivity::class.java).apply {
            flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK
            putExtra("rewardCoins",reward)
        }
    }

如果我的应用程序正在运行并单击通知,则我的应用程序会重新创建,并且在活动中我会从意图中获得更多收益。但是如果我的应用t visible and click on notification. app start and I don没有意图,那么您就可以拥有更多。为什么会发生? 我想一直收到额外的钱 MainActivity不是启动器和主要

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)