【问题标题】:Reload an Activity when a notification arrives, Android通知到达时重新加载活动,Android
【发布时间】:2013-08-12 09:37:23
【问题描述】:

我正在开发一个需要在推送通知到达时更改界面的 Android 应用,

例子:

用户启动活动 A,然后他转到活动 B。 当用户正在阅读活动 B 中的文本时,推送通知到达,活动 B 中的文本应该改变,活动 A 中的文本也应该改变。

我可以在活动 A 上使用 onResume() 进行操作,但我不知道如何在活动 B 中进行操作

【问题讨论】:

  • 谢谢 Marko,但这并不能解决更新活动 B 上的文本的问题
  • 在通知到达时向我们展示您用于打开活动 B 的代码。
  • 通知不打开活动 B,如果用户在活动 B 上,通知应更新活动 B

标签: android android-intent android-activity google-cloud-messaging


【解决方案1】:

GCM 库附带的 GCM 示例(在您的 Android SDK 文件夹/附加文件中)为您提供了如何执行此操作的示例:

  1. 在 GCMIntentService 的 onReceive 方法中,他们调用了displayMessage,它会在收到 GCM 通知后广播一条消息。
  2. 在 DemoActivity::onCreate 中,他们注册了一个接收器来处理广播消息。
  3. 广播接收器mHandleMessageReceiver 的onReceive 方法执行UI 更新。

【讨论】:

  • @D4rWiNS 您在哪里找到样本?我一直找不到!
  • 我在sdk文件夹中找到了(你安装了eclipse的地方)
【解决方案2】:

如果您想在通知到达时接收更新,那么您需要实现广播接收器。需要在 onResume 中注册接收者,在 onPause 中取消注册。

更新文本视图需要实现的地方是广播监听器的 onReceive 方法。您可以通过搜索“Android 广播接收器”轻松找到一些示例。希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-04
    • 2012-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-10
    相关资源
    最近更新 更多