Android崩溃打开一个片段

Dav*_*d_D 0 java android togglebutton android-fragments

一位用户告诉我他无法在我的应用程序中打开一个片段,因为他遇到了崩溃.我有logcat:

java.lang.NullPointerException
at com.dd.androreboot.devicecontrolfragment.onCreateView(devicecontrolfragment.java:162)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:829)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1035)
at android.app.BackStackRecord.run(BackStackRecord.java:635)
at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1399)
at android.app.FragmentManagerImpl$1.run(FragmentManager.java:426)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4921)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
at dalvik.system.NativeStart.main(Native Method)
Run Code Online (Sandbox Code Playgroud)

在第162行我有这个代码:

ConnectivityManager connManager = (ConnectivityManager) getActivity().getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo mobile = connManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
        datatoggle = (ToggleButton)v.findViewById(R.id.datatoggle); 
        datatoggle.setChecked(mobile.isConnectedOrConnecting()); //line 162
Run Code Online (Sandbox Code Playgroud)

这部分代码需要检查3g是否已连接,如果是,则切换按钮状态变为true.它适用于我试过的每个设备,但不适用于这个:Galaxy Note 10.1(p4notewifi).有帮助吗?

Kri*_*her 5

试试这个:

ConnectivityManager connManager = (ConnectivityManager) getActivity().getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo mobile = connManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
    datatoggle = (ToggleButton)v.findViewById(R.id.datatoggle); 


   if(mobile != null) {
    datatoggle.setChecked(mobile.isConnectedOrConnecting()); //line 162
   } else {
      datatoggle.setChecked(false); //line 162
   }
Run Code Online (Sandbox Code Playgroud)