Search code examples
javaandroidsmsgsm

SMS receiver only works when a certain activity has been opened


I've created an app that uses a BroadcastReceiver class to receive SMS messages within the app to change and control different things within the app when a certain text message has been received. I recently added a new activity to the app, now the problem is that if the app receives an SMS message it will crash unless the new activity has been started. Can anyone think why this might be? thanks

this is my logcat of the crash error:

 07-31 15:51:50.135: E/AndroidRuntime(779): FATAL EXCEPTION: main
 07-31 15:51:50.135: E/AndroidRuntime(779): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.becatech.gsmzonecontroller/com.becatech.gsmzonecontroller.MainActivity}: java.lang.NullPointerException
 07-31 15:51:50.135: E/AndroidRuntime(779):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2110)
 07-31 15:51:50.135: E/AndroidRuntime(779):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2135)
 07-31 15:51:50.135: E/AndroidRuntime(779):     at android.app.ActivityThread.access$700(ActivityThread.java:140)
 07-31 15:51:50.135: E/AndroidRuntime(779):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1237)
 07-31 15:51:50.135: E/AndroidRuntime(779):     at android.os.Handler.dispatchMessage(Handler.java:99)
 07-31 15:51:50.135: E/AndroidRuntime(779):     at android.os.Looper.loop(Looper.java:137)
 07-31 15:51:50.135: E/AndroidRuntime(779):     at android.app.ActivityThread.main(ActivityThread.java:4921)
 07-31 15:51:50.135: E/AndroidRuntime(779):     at java.lang.reflect.Method.invokeNative(Native Method)
 07-31 15:51:50.135: E/AndroidRuntime(779):     at java.lang.reflect.Method.invoke(Method.java:511)
 07-31 15:51:50.135: E/AndroidRuntime(779):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1027)
 07-31 15:51:50.135: E/AndroidRuntime(779):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:794)
 07-31 15:51:50.135: E/AndroidRuntime(779):     at dalvik.system.NativeStart.main(Native Method)
 07-31 15:51:50.135: E/AndroidRuntime(779): Caused by: java.lang.NullPointerException
 07-31 15:51:50.135: E/AndroidRuntime(779):     at com.becatech.gsmzonecontroller.MainActivity.onCreate(MainActivity.java:66)
 07-31 15:51:50.135: E/AndroidRuntime(779):     at android.app.Activity.performCreate(Activity.java:5206)
 07-31 15:51:50.135: E/AndroidRuntime(779):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
 07-31 15:51:50.135: E/AndroidRuntime(779):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2074)

Solution

  • You have a nullPointerException at line 66 in your main activity