Как перейти к фрагменту из Уведомления? Android Kotlin - PullRequest
0 голосов
/ 05 августа 2020

При получении уведомления я хотел открыть свое приложение и перейти к фрагменту сведений, поскольку я использую компонент навигации из Jetpack, но не знаю, как его реализовать?

вот мой код службы уведомлений

val intent = Intent(this, DetailedFragment::class.java) 

    val builder = NotificationCompat.Builder(this, "100")
        .setSmallIcon(R.drawable.ic_notification)
        .setContentTitle(rm.data["title"])
        .setContentText(rm.data["body"])
        .setSound(RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION))
        .setCustomContentView(nmrv)
        .setCustomBigContentView(exrv)
        .setPriority(NotificationCompat.PRIORITY_HIGH)
        .setStyle(NotificationCompat.DecoratedCustomViewStyle())

    val manager = NotificationManagerCompat.from(this).notify(100, builder.build())

1 Ответ

2 голосов
/ 05 августа 2020

Согласно документации :

Явная глубокая ссылка - это единственный экземпляр глубинной ссылки, в которой используется PendingIntent для перехода пользователей к определенному c местоположение в вашем приложении. Вы можете отобразить явную ссылку на контент, например, как часть уведомления или виджета приложения.

Вы можете использовать класс NavDeepLinkBuilder для создания PendingIntent

val pendingIntent = NavDeepLinkBuilder(context)
    .setGraph(R.navigation.nav_graph)
    .setDestination(R.id.android)
    .setArguments(args)
    .createPendingIntent()

С этим PendingIntent вы можете прикрепить его к своему уведомлению, используя setContentIntent():

builder.setContentIntent(pendingIntent)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...