如何解决当单击推送通知时,在导航图中打开特定的片段目标,并且图形不在启动器活动中
当用户单击推送通知时,我想在导航组件图中打开特定片段。 但是我不止一个导航图。我要浏览的目标片段不在启动器活动图中。
val pendingIntent = NavDeepLinkBuilder(this)
.setGraph(R.navigation.nav_home)
.setDestination(R.id.detailsFragment)
.setArguments(args)
.createPendingIntent()
val notificationBuilder = NotificationCompat.Builder(
this,getChannelIDForOnGoingNotification(this)
).setContentTitle(remoteMessage?.data?.get("title"))
.setSmallIcon(getNotificationIcon())
.setColor(getNotificationColor())
.setContentText(remoteMessage?.data?.get("body"))
.setPriority(notificationmanager.IMPORTANCE_HIGH)
.setAutoCancel(true)
.setSound(defaultSoundUri)
.setStyle(bigText)
.setContentIntent(pendingIntent)
val notificationmanager = getSystemService(Context.NOTIFICATION_SERVICE) as notificationmanager
notificationmanager.notify(notificationId,notificationBuilder.build())
我正在使用上面的代码使用NavDeepLinkBuilder
进行深层链接。但是R.navigation.nav_home
不在启动器活动中。当我单击通知时,它只是打开启动器活动,而不打开目标活动和片段。
如何使用Android导航组件打开包含具有目标片段的图形的目标活动
解决方法
您必须添加
.setComponentName(MainActivity::class.java)
您的代码应如下所示:
val pendingIntent = NavDeepLinkBuilder(this)
.setComponentName(MainActivity::class.java) // your destination activity
.setGraph(R.navigation.nav_home)
.setDestination(R.id.detailsFragment)
.setArguments(args)
.createPendingIntent()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。