有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何实现Android细节通知?

以前可能有人问过这个问题,但我找不到一个好的方法来实现它。我正试图编写一个程序来管理一种形式的消息,这些消息是从外部数据源接收的。这一切都有效。然而,当我试图通知用户时,问题就来了:我希望在消息被触碰时,通知会直接跳到消息,但这似乎会弄乱后堆栈。这可能最好用例子来解释:

  1. 我打开主要活动的消息列表,浏览一会儿
  2. 我点击home并进入另一个应用程序(比如音乐)
  3. 收到一条新消息。一个通知出现了,我摸了摸。此时将显示消息详细信息视图
  4. 现在我反击。我想让我回到音乐中,但不幸的是,Back将我发送到消息列表中,然后回击将让我回到音乐中

列表和详细信息活动都标记为“singleTop”,我用于通知目的的确切标志是:

  • FLAG_ACTIVITY_NEW_TASK
  • FLAG_ACTIVITY_CLEAR_TOP
  • FLAG_ACTIVITY_SINGLE_TOP

我想如果消息传递应用程序可以做到这一点,为什么我不能呢


共 (1) 个答案

  1. # 1 楼答案

    我找到了一种方法,但仍然不理想:

    • 将“详细信息”活动更改为具有与其他所有活动不同的任务关联
    • android:launchMode="singleTop"android:excludeFromRecents="true"添加到详细信息活动的清单条目中
    • (可选)修改列表活动以使用FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET打开详细信息活动。(这使任务更像内置的消息传递应用。)

    该方案唯一的缺点是,切换回应用程序将始终返回列表活动,但至少是一致的。如果其他人有更好的方法,我很乐意听到