0

我正在使用 gcm 从我的服务器获取事件,这很好,但我想使用我的类 GCMIntentService 与其他活动进行通信

我有我的方法来接收消息

@Override
protected void onMessage(Context context, Intent intent) {

    Log.d("GCM", "RECIEVED A MESSAGE");
// Get the data from intent and send to notificaion bar
generateNotification(context, intent);
}

我想例如将数据发送到我的 MainActivity 但我找不到我刚刚找到的方法:

Intent intent = new Intent(getBaseContext(), SignoutActivity.class);
intent.putExtra("EXTRA_SESSION_ID", sessionId);
startActivity(intent);

但就我而言,我不想开始一个新的活动,我只想将数据发送到正在运行的活动。

谢谢你的帮助

4

1 回答 1

1

我找到了解决方案,@selalerer 感谢您的帮助

在第一次初始化接收器:

    //receive events
private class Receiver extends BroadcastReceiver {

     @Override
     public void onReceive(Context arg0, Intent arg1) {
         System.out.println("receive");
     }
}

在 onCreate 添加

IntentFilter filter = new IntentFilter("local");
this.registerReceiver(new Receiver(), filter);

完成发送消息

Intent i=new Intent();
i.setAction("local");
i.putExtra("test","test");
sendBroadcast(i);
于 2013-05-04T09:13:02.907 回答