BaseWifiManager.java:211:manager.getConfiguredNetworks()会拿到null导致IWifi create里的for崩溃
10:20:32.965 E Uncaught exception occurred: 10:20:32.965 E java.lang.RuntimeException: Error receiving broadcast Intent { act=android.net.wifi.STATE_CHANGE flg=0x4000010 (has extras) } in com.iwdael.wifimanager.BaseWifiManager$WifiReceiver@bd64b2e 10:20:32.965 E at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:1132) 10:20:32.965 E at android.os.Handler.handleCallback(Handler.java:751) 10:20:32.965 E at android.os.Handler.dispatchMessage(Handler.java:95) 10:20:32.965 E at android.os.Looper.loop(Looper.java:154) 10:20:32.965 E at android.app.ActivityThread.main(ActivityThread.java:6119) 10:20:32.965 E at java.lang.reflect.Method.invoke(Native Method) 10:20:32.965 E at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:982) 10:20:32.966 E at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:872) 10:20:32.966 E Caused by: java.lang.NullPointerException: Attempt to invoke interface method 'java.util.Iterator java.util.List.iterator()' on a null object reference 10:20:32.966 E at com.iwdael.wifimanager.Wifi.create(Wifi.java:48) 10:20:32.966 E at com.iwdael.wifimanager.BaseWifiManager.modifyWifi(BaseWifiManager.java:211) 10:20:32.966 E at com.iwdael.wifimanager.BaseWifiManager$WifiReceiver.onReceive(BaseWifiManager.java:174) 10:20:32.966 E at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:1122) 10:20:32.966 E ... 7 more 10:20:32.967 E ├ com.hengmei.do_freeze_app.util.ExceptionHandler.printMoreStackTrace(ExceptionHandler.java:28) 10:20:32.967 E └ com.hengmei.do_freeze_app.util.ExceptionHandler.uncaughtException(ExceptionHandler.java:20) 10:20:32.968 E More exception stack trace: 0: 10:20:32.968 E java.lang.NullPointerException: Attempt to invoke interface method 'java.util.Iterator java.util.List.iterator()' on a null object reference 10:20:32.968 E [com.iwdael.wifimanager.Wifi.create(Wifi.java:48), 10:20:32.968 E com.iwdael.wifimanager.BaseWifiManager.modifyWifi(BaseWifiManager.java:211), 10:20:32.968 E com.iwdael.wifimanager.BaseWifiManager$WifiReceiver.onReceive(BaseWifiManager.java:174), 10:20:32.968 E android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:1122), 10:20:32.968 E android.os.Handler.handleCallback(Handler.java:751), 10:20:32.968 E android.os.Handler.dispatchMessage(Handler.java:95), 10:20:32.968 E android.os.Looper.loop(Looper.java:154), 10:20:32.968 E android.app.ActivityThread.main(ActivityThread.java:6119), 10:20:32.968 E java.lang.reflect.Method.invoke(Native Method), 10:20:32.968 E com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:982), 10:20:32.968 E com.android.internal.os.ZygoteInit.main(ZygoteInit.java:872)] 10:20:32.970 E FATAL EXCEPTION: main Process: com.hengmei.do_freeze_app, PID: 17853 java.lang.RuntimeException: Error receiving broadcast Intent { act=android.net.wifi.STATE_CHANGE flg=0x4000010 (has extras) } in com.iwdael.wifimanager.BaseWifiManager$WifiReceiver@bd64b2e at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:1132) at android.os.Handler.handleCallback(Handler.java:751) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6119) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:982) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:872) Caused by: java.lang.NullPointerException: Attempt to invoke interface method 'java.util.Iterator java.util.List.iterator()' on a null object reference at com.iwdael.wifimanager.Wifi.create(Wifi.java:48) at com.iwdael.wifimanager.BaseWifiManager.modifyWifi(BaseWifiManager.java:211) at com.iwdael.wifimanager.BaseWifiManager$WifiReceiver.onReceive(BaseWifiManager.java:174) at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:1122) at android.os.Handler.handleCallback(Handler.java:751) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6119) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:982) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:872)
有configs时config列表里会有SSID为空的项目 wifi.description = wifi.encryption; if (!Objects.equals(configurations, null)) { for (WifiConfiguration configuration : configurations) { if (Objects.equals(configuration.SSID, wifi.SSID)) { wifi.isSaved = true; break; } } }
没人维护了,可惜了
没人维护了,可惜了
下下来改源码吧