1
无论何时监听器收到消息,我都希望将进度和警报对话框添加到活动上下文中。有了这个代码:来自c2dm侦听器事件的Tigger alertBox
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("DataUpdate")) {
progressDialog = ProgressDialog.show(context, "Please wait...", "Synchronizing data ...", true);
syncData(context);
progressDialog.dismiss();
AlertDialog.Builder alertbox = new AlertDialog.Builder(context);
alertbox.setMessage("Data was updated");
alertbox.create();
alertbox.show();
}
}
}
}
我收到以下错误,当我收到消息:
01-07 08:44:38.190: E/AndroidRuntime(750): Caused by: android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application
试图找出什么是最好的方式来处理,这将是,我需要缓存活动上下文在一个单身人士,然后从听众访问单身人士?或者,还有更好的方法?
感谢
感谢您的链接,这有助于清理事情。我要去通知 – Hoofamon 2012-01-07 19:58:04
很高兴提供帮助。我非常喜欢Android中的Notification系统,它非常灵活。 – Squonk 2012-01-07 20:08:54