应用表明力闭合只在仿真器/手机启动的广播接收器显示异常

问题描述:

应用程序只能在仿真器/手机的重启显示了强制关闭。它有两个广播接收器1来检查电话状态并接听电话和其他通知图标。接收机监控手机状态仅在启动时才会出现以下异常,否则应用程序可以正常工作。日志如下所示应用表明力闭合只在仿真器/手机启动的广播接收器显示异常

05-20 12:48:15.688: INFO/Andros:AnsTheCall:receiver(218): initialised the receiver 
05-20 12:48:15.707: WARN/dalvikvm(218): threadid=1: thread exiting with uncaught exception (group=0x4001d800) 
05-20 12:48:15.827: ERROR/AndroidRuntime(218): FATAL EXCEPTION: main 
05-20 12:48:15.827: ERROR/AndroidRuntime(218): java.lang.RuntimeException: Unable to start receiver com.andros.AnsTheCall.AnsTheCallReceiver: java.lang.NullPointerException 
05-20 12:48:15.827: ERROR/AndroidRuntime(218):  at android.app.ActivityThread.handleReceiver(ActivityThread.java:2821) 
05-20 12:48:15.827: ERROR/AndroidRuntime(218):  at android.app.ActivityThread.access$3200(ActivityThread.java:125) 
05-20 12:48:15.827: ERROR/AndroidRuntime(218):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2083) 
05-20 12:48:15.827: ERROR/AndroidRuntime(218):  at android.os.Handler.dispatchMessage(Handler.java:99) 
05-20 12:48:15.827: ERROR/AndroidRuntime(218):  at android.os.Looper.loop(Looper.java:123) 
05-20 12:48:15.827: ERROR/AndroidRuntime(218):  at android.app.ActivityThread.main(ActivityThread.java:4627) 
05-20 12:48:15.827: ERROR/AndroidRuntime(218):  at java.lang.reflect.Method.invokeNative(Native Method) 
05-20 12:48:15.827: ERROR/AndroidRuntime(218):  at java.lang.reflect.Method.invoke(Method.java:521) 
05-20 12:48:15.827: ERROR/AndroidRuntime(218):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 
05-20 12:48:15.827: ERROR/AndroidRuntime(218):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 
05-20 12:48:15.827: ERROR/AndroidRuntime(218):  at dalvik.system.NativeStart.main(Native Method) 
05-20 12:48:15.827: ERROR/AndroidRuntime(218): Caused by: java.lang.NullPointerException 
05-20 12:48:15.827: ERROR/AndroidRuntime(218):  at com.andro.AnsTheCall.AnsTheCallReceiver.onReceive(AnsTheCallReceiver.java:37) 
05-20 12:48:15.827: ERROR/AndroidRuntime(218):  at android.app.ActivityThread.handleReceiver(ActivityThread.java:2810) 
05-20 12:48:15.827: ERROR/AndroidRuntime(218):  ... 10 more 

请帮

public class AnsTheCallReceiver extends BroadcastReceiver { 

public static final String TAG = "Andros:AnsTheCall:receiver"; 
public selectedTabType attentFlag = selectedTabType.TYPE_INVALID; 

private Intent AnsTheCallServiceIntent = null; 
public String contactName = null; 
public String contactEmail = ""; 
public int PhoneNumberCount= 0; 

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

    SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); 
    SharedPreferences.Editor editor = prefs.edit(); 
    // Check phone state 
    String phone_state = intent.getStringExtra(TelephonyManager.EXTRA_STATE); 
    String phoneNumber = intent.getStringExtra(TelephonyManager.EXTRA_INCOMING_NUMBER); 
    String lastPhoneNumber = null; 
    Log.i(TAG,"initialised the receiver"); 

    if (phone_state.equals(TelephonyManager.EXTRA_STATE_RINGING) && prefs.getBoolean("appEnabled", false)) { 
     int is_starred = isStarred(context, phoneNumber); 
+0

发表您的BOOT_COMPLETED接收器代码.. – Tarun

+0

感谢您response..now后更新。 – rjn123

+0

这是张贴的代码你开机complted接收器?在这种情况下,intentExtras将不会携带TelephonyManager.EXTRA_STATE,并且您的字符串可能为null bcz。 – Tarun

检查什么是com.andro.AnsTheCall.AnsTheCallReceiver.onReceive(AnsTheCallReceiver.java:37这是造成您服务,强制关闭。

12:48:15.827:ERROR/AndroidRuntime(218): 显示java.lang.NullPointerException 12月5日至20日:48:15.827: ERROR/AndroidRuntime(218):通过引起在 com.andro .AnsTheCall.AnsTheCallReceiver.onReceive(AnsTheCallReceiver.java:37) 12月5日至20日:48:15.827:

+0

在'com.andro.AnsTheCall.AnsTheCallReceiver.onReceive(AnsTheCallReceiver.java:37'我有'如果(phone_state.equals(TelephonyManager.EXTRA_STATE_RINGING)&& prefs.getBoolean( “appEnabled”,FALSE)){'。我需要这是我必须检测电话并回答它。它工作正常,惟独在我的设备上切换应用程序显示部队密切对话框。但它仍然连部队密切对话框后,在回地面效果很好。:-) – rjn123

+0

您的phone_state在启动时为空。 字符串phone_state = intent.getStringExtra(TelephonyManager.EXTRA_STATE);在引导完成时为空。 – Tarun

+0

感谢ü的回答Tarun.do您有任何建议,以避免这种情况???? – rjn123