0
我有一個簡單的c2dm消息接收器類,只要設備收到c2dm消息就會被調用。在一種情況下,我希望消息接收者類執行意圖切換以加載不同的活動。安卓拋出一個異常,當發生這種情況如何從c2dm消息接收者調用意圖開關
01-07 02:28:52.480: E/AndroidRuntime(440): Caused by: android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?
我想我可以調查此標誌在異常的建議,但我不知道是否也許我採取錯誤的做法,有一個更好的方式來做到這一點?
C2DM消息接收器類:
public class C2DMMessageReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
Log.w("C2DM", "Message Receiver called");
if ("com.google.android.c2dm.intent.RECEIVE".equals(action)) {
Log.w("C2DM", "Received message");
final String payload = intent.getStringExtra("payload");
Log.d("C2DM", "dmControl: payload = " + payload);
// Message handling
if(payload.equals("RdyRoom::join")) {
Intent rIntent = new Intent(context.getApplicationContext(), ReadyRoomActivity.class);
context.startActivity(rIntent);
}
}
}
}
感謝您的任何想法
我建議閱讀的標誌。它在意向文檔中。但是,您能否提供更多關於您想要完成的信息?用戶是否在活動中並正在等待此響應?之前會發生什麼,以後你想發生什麼? – cottonBallPaws 2012-01-07 02:52:20