gpt4 book ai didi

android - 从 GCMIntentService 调用 onResume() 或 onCreate()

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:25:47 24 4
gpt4 key购买 nike

我正在开发使用 GCMIntentService 进行推送通知的应用程序。所以我想刷新一个 ListView 的数据,它位于我的 TabActivity 的选项卡中。那么,当我收到 GCMIntentMessage 时,是否可以从 GCMIntentService 执行此操作?

例如

SecondTabActivity.callOnResume(); //or something like this

SecondTabActivity.callOnCreate(); // or something like this

我需要在不使用 startActivity(intent) 的情况下执行此操作;因为如果我这样做,SecondTabActivity 会从我的 TabHost 中退出,并且它会像新的 Activity 一样开始。用于刷新 ListView 的函数位于 SecondTabActivity 中的 onCreate() 和 onResume() 中,所以这就是我要调用它们的原因。如果除此之外还有其他方法,请引用它。谢谢

最佳答案

一个好方法是使用广播 Intent 。

  1. 在您的 TabActivity 的 onCreate 中,使用 Context.registerReceiver 方法为名为“MyGCMMessageReceived”的 Intent 注册广播接收器。

  2. 在该广播接收器中,调用刷新列表的方法。

    this.registerReceiver(new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
    // INSERT CODE TO REFRESH LIST VIEW
    }
    }, new IntentFilter("MyGCMMessageReceived"));
  3. 让您的 GCMIntentService 的 onMessage 方法广播名为“MyGCMMessageReceived”的 Intent 。

        Intent intent = new Intent("MyGCMMessageReceived");
    this.sendBroadcast(intent);

关于android - 从 GCMIntentService 调用 onResume() 或 onCreate(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13949412/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com