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

时间:2020-08-13 10:44:36

标签: android android-intent push-notification

当我从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, 0, 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不是启动器和主要

0 个答案:

没有答案