我是Android的初学者。我的Handler有一个NullPointerException。
我正在使用通知显示另一个ACTIVITY B.
假设我在ACTIVITY A中运行线程时单击通知,ACTIVITY B正在调用,并且在一段时间后应用程序崩溃,我认为处理程序失去了ACTIVITY A的上下文。我想知道如何处理情况,假设如果我使用AsyncTask,asyncTask会处理上下文问题吗?任何人都可以解决这个问题。提前致谢。
ACTIVITY - A:
Thread t = new Thread() {
@Override
public void run() {
// call service get response
handler.sendMessage(msg);
}
}
点击通知时,我显示活动B.
logcat o / p就是这样 handler.sendMessage行中的NullPointerException 在处理程序内我正在更新活动B的UI。
答案 0 :(得分:1)
我将Thread转换为AsyncTask,如果在活动A处于onPause时正在运行asyncTask,我将取消AsyncTask,这是该问题的临时修复。但我正在寻找一个完美的。
答案 1 :(得分:0)
初始化处理程序并确保消息不为空