catch random NullPointerExceptions related to WifiApControl
java.lang.NullPointerException: Attempt to read from field 'boolean android.net.wifi.WifiConfiguration.hiddenSSID' on a null object reference at org.fdroid.fdroid.nearby.WifiStateChangeService.setSsid(WifiStateChangeService.java:252) at org.fdroid.fdroid.nearby.WifiStateChangeService.access$100(WifiStateChangeService.java:59) at org.fdroid.fdroid.nearby.WifiStateChangeService$WifiInfoThread.run(WifiStateChangeService.java:174) java.lang.NullPointerException: null receiver at java.lang.reflect.Method.invoke(Native Method) at cc.mvdan.accesspoint.WifiApControl.invokeQuietly(WifiApControl.java:178) at cc.mvdan.accesspoint.WifiApControl.isWifiApEnabled(WifiApControl.java:189) at cc.mvdan.accesspoint.WifiApControl.isEnabled(WifiApControl.java:198) at org.fdroid.fdroid.nearby.WifiStateChangeService.setSsid(WifiStateChangeService.java:249) at org.fdroid.fdroid.nearby.WifiStateChangeService.access$100(WifiStateChangeService.java:59) at org.fdroid.fdroid.nearby.WifiStateChangeService$WifiInfoThread.run(WifiStateChangeService.java:133) java.lang.NullPointerException: Attempt to invoke virtual method 'int android.app.AppOpsManager.checkOpNoThrow(int, int, java.lang.String)' on a null object reference at android.provider.Settings.isCallingPackageAllowedToPerformAppOpsProtectedOperation(Settings.java:13730) at android.provider.Settings.isCallingPackageAllowedToWriteSettings(Settings.java:13634) at android.provider.Settings$System.canWrite(Settings.java:4793) at cc.mvdan.accesspoint.WifiApControl.getInstance(WifiApControl.java:122) at org.fdroid.fdroid.nearby.WifiStateChangeService.setSsid(WifiStateChangeService.java:240) at org.fdroid.fdroid.nearby.WifiStateChangeService.access$100(WifiStateChangeService.java:59) at org.fdroid.fdroid.nearby.WifiStateChangeService$WifiInfoThread.run(WifiStateChangeService.java:133)
This commit is contained in:
		
							parent
							
								
									bfcc5c974e
								
							
						
					
					
						commit
						1e29c281c6
					
				@ -237,7 +237,13 @@ public class WifiStateChangeService extends IntentService {
 | 
			
		||||
            }
 | 
			
		||||
            FDroidApp.bssid = wifiInfo.getBSSID();
 | 
			
		||||
        } else {
 | 
			
		||||
            WifiApControl wifiApControl = WifiApControl.getInstance(this);
 | 
			
		||||
            WifiApControl wifiApControl = null;
 | 
			
		||||
            try {
 | 
			
		||||
                wifiApControl = WifiApControl.getInstance(this);
 | 
			
		||||
                wifiApControl.isEnabled();
 | 
			
		||||
            } catch (NullPointerException e) {
 | 
			
		||||
                wifiApControl = null;
 | 
			
		||||
            }
 | 
			
		||||
            Utils.debugLog(TAG, "WifiApControl: " + wifiApControl);
 | 
			
		||||
            if (wifiApControl == null && FDroidApp.ipAddressString != null) {
 | 
			
		||||
                wifiInfo = wifiManager.getConnectionInfo();
 | 
			
		||||
@ -249,7 +255,9 @@ public class WifiStateChangeService extends IntentService {
 | 
			
		||||
            } else if (wifiApControl != null && wifiApControl.isEnabled()) {
 | 
			
		||||
                WifiConfiguration wifiConfiguration = wifiApControl.getConfiguration();
 | 
			
		||||
                Utils.debugLog(TAG, "WifiConfiguration: " + wifiConfiguration);
 | 
			
		||||
                if (wifiConfiguration.hiddenSSID) {
 | 
			
		||||
                if (wifiConfiguration == null) {
 | 
			
		||||
                    FDroidApp.ssid = getString(R.string.swap_active_hotspot, "");
 | 
			
		||||
                } else if (wifiConfiguration.hiddenSSID) {
 | 
			
		||||
                    FDroidApp.ssid = getString(R.string.swap_hidden_wifi_ssid);
 | 
			
		||||
                } else {
 | 
			
		||||
                    FDroidApp.ssid = wifiConfiguration.SSID;
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user