如標題所示,我無法從NetWorkInfo類獲得Broadcastreceiver中的狀態。無法從NetWorkInfo獲得狀態Android
它會在下面給出的日誌輸出中返回一些錯誤。
我需要你的幫助。
這裏是日誌輸出和Broacastreceiver類,我還注意到我已經添加了所有權限(訪問網絡狀態和Internet)和廣播意圖action android:name="android.net.conn.CONNECTIVITY_CHANGE
。
所以我敢說在manifest.xml文件中沒有問題。
ConnectivityManager cm =
(ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
State state = activeNetwork.getState();
switch (state) {
case CONNECTING:
Toast.makeText(context, "connecting", Toast.LENGTH_SHORT).show();
break;
和日誌輸出是:
java.lang.RuntimeException: Unable to start receiver com.example.test.ConnectivityChangeReceiver: java.lang.NullPointerException
E/AndroidRuntime(9873): at android.app.ActivityThread.handleReceiver(ActivityThread.java:2668)
E/AndroidRuntime(9873): at android.app.ActivityThread.access$1800(ActivityThread.java:172)
E/AndroidRuntime(9873): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1384)
E/AndroidRuntime(9873): at android.os.Handler.dispatchMessage(Handler.java:102)
E/AndroidRuntime(9873): at android.os.Looper.loop(Looper.java:146)
E/AndroidRuntime(9873): at android.app.ActivityThread.main(ActivityThread.java:5653)
E/AndroidRuntime(9873): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(9873): at java.lang.reflect.Method.invoke(Method.java:515)
E/AndroidRuntime(9873): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1291)
E/AndroidRuntime(9873): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1107)
E/AndroidRuntime(9873): at dalvik.system.NativeStart.main(Native Method)
E/AndroidRuntime(9873): Caused by: java.lang.NullPointerException
E/AndroidRuntime(9873): at com.example.test.ConnectivityChangeReceiver.onReceive(ConnectivityChangeReceiver.java:27)
E/AndroidRuntime(9873): at android.app.ActivityThread.handleReceiver(ActivityThread.java:2653)
什麼是第27行'ConnectivityChangeReceiver.java'? – Raghunandan 2015-02-08 13:10:00
這是我的broadcastreceiver類 – 2015-02-08 13:24:50