ozn*_*cro 8 android android-notifications android-architecture-navigation
我正在使用 NavDeepLinkBuilder 为推送通知生成挂起的意图,以在特定目的地打开应用程序。
return NavDeepLinkBuilder(this)
.setComponentName(MainActivity::class.java)
.setGraph(R.navigation.main_navigation)
.setDestination(destinationId)
.setArguments(args)
.createPendingIntent()
Run Code Online (Sandbox Code Playgroud)
当应用程序在前台时,通知将导航到 NavDeepLinkBuilder 构建的待处理意图中设置的目的地。
但是,当应用程序不在前台时,通知只会导航到 MainActivity 而忽略在 NavDeepLinkBuilder 中设置的目标。
注意:待处理的意图和通知内置于扩展 FirebaseMessagingService 的服务中。
当应用程序处于后台时,通知点击的行为最终会有所不同。
默认情况下,用户点击通知会打开应用程序启动器。在这些情况下,通知将传递到设备的系统托盘,并且数据负载将在启动器活动的意图的附加内容中传递。
请参阅:https://firebase.google.com/docs/cloud-messaging/android/receive#backgrounded
您最终将不得不查看主要活动的意图附加内容才能获取通知信息。在某些情况下,如果您在推送通知中添加了 ,click_action则需要将其添加到意图过滤器列表中。
我将以下意图过滤器操作添加到我的主要活动意图过滤器块中:
<intent-filter>
<action android:name=".HomeActivity" />
<category android:name="android.intent.category.DEFAULT" />
... Rest of your actions
</intent-filter>
Run Code Online (Sandbox Code Playgroud)
这使我能够在我的HomeActivity中提取通知信息
| 归档时间: |
|
| 查看次数: |
1433 次 |
| 最近记录: |