Android 使用BroadcastReceiver时出现NullPointerException

Android 使用BroadcastReceiver时出现NullPointerException,android,Android,我在android屏幕上看到一条错误消息。这是航海日志- 02-08 09:33:42.471: E/AndroidRuntime(11592): java.lang.RuntimeException: Unable to start receiver something.MainActivity$CancelReceiver: java.lang.NullPointerException 为什么程序在错误日志后工作正常?(程序未被终止) 当它第一次抛出广播时,会出现此错误 这是我代码的一部分

我在android屏幕上看到一条错误消息。这是航海日志-

02-08 09:33:42.471: E/AndroidRuntime(11592): java.lang.RuntimeException: Unable to start receiver something.MainActivity$CancelReceiver: java.lang.NullPointerException
为什么程序在错误日志后工作正常?(程序未被终止) 当它第一次抛出广播时,会出现此错误

这是我代码的一部分

public static class CancelReceiver extends BroadcastReceiver{

    @Override
    public void onReceive(Context context, Intent intents) {

            intents.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            String OKorNOT = intents.getExtras().getString("OKorNOT");
            String str = intents.getExtras().getString("something");

            if(OKorNOT.equals("OK")){
                //OKの場合

                tv2.setText(str);
                //this line may throws error.tv means TextView object findview already.
            }else if(OKorNOT.equals("NOT")){
                //NOTの場合
                tv.setText("yeah");//this line also throws error
                pushB.setText("NO!");   
                tv2.setText("");
            }
怎么了

编辑。 此onReceive在静态类中

关于电视,tv2是

public class MainActivity extends Activity {

   static TextView tv;
   static TextView tv2;
   static Button pushB;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

         pushB = (Button)findViewById(R.id.button2);
         tv = (TextView)findViewById(R.id.textView6);
         tv2 = (TextView)findViewById(R.id.textView7);
}
}

我在onCreate中定义了对象。

您只需打开调试模式,找出哪个是空指针。@user2027811是否提供任何反馈?如果你试过我编辑过的答案,它对你有用吗?@A--C我还是不行。我有另一份工作-.-@A--C还有一份。InputMainActivity==MainActivity.sorry.iknow,tv.settext()在另一个方法中正常工作。只有在onReceive、tv、tv2中为null。