我正在开发GCMIntentService用于推送通知的应用程序.所以我想刷新ListView我的标签中的数据TabActivity.那么从GCMIntentService我收到的时候可以做到这一点GCMIntentMessage吗?
例如
SecondTabActivity.callOnResume(); //or something like this
Run Code Online (Sandbox Code Playgroud)
要么
SecondTabActivity.callOnCreate(); // or something like this
Run Code Online (Sandbox Code Playgroud)
我不需要使用就可以这样做startActivity(intent); 因为如果我做的话,SecondTabActivity就会离开我的TabHost,它就像新的一样开始Activity.用于刷新的ListView功能位于onCreate()和onResume()SecondTabActivity中,这就是我想要调用它们的原因.如果除此之外还有其他任何方式,请参阅它.谢谢
一个好方法是使用广播意图.
在TabActivity的onCreate中,使用Context.registerReceiver方法为名为"MyGCMMessageReceived"的意图注册广播接收器.
在该广播接收器中,调用刷新列表的方法.
this.registerReceiver(new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// INSERT CODE TO REFRESH LIST VIEW
}
}, new IntentFilter("MyGCMMessageReceived"));
Run Code Online (Sandbox Code Playgroud)使GCMIntentService的onMessage方法广播名为"MyGCMMessageReceived"的意图.
Intent intent = new Intent("MyGCMMessageReceived");
this.sendBroadcast(intent);
Run Code Online (Sandbox Code Playgroud)| 归档时间: |
|
| 查看次数: |
1587 次 |
| 最近记录: |