1

I try to list all wifi networks around me with the following code:

sb = new StringBuilder();
scanList = wifiManager.getScanResults();
sb.append("\n  Number Of Wifi connections :" + " " +scanList.size()+"\n\n");

for(int i = 0; i < scanList.size(); i++){
    sb.append(new Integer(i+1).toString() + ". ");
    sb.append((scanList.get(i)).toString());
    sb.append("\n\n");
}

tv.setText(sb);

I also use the following permissions:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

But i get always this error:

java.lang.RuntimeException: Error receiving broadcast Intent { act=android.net.wifi.SCAN_RESULTS flg=0x4000010 (has extras) }
...
Caused by: java.lang.SecurityException: Need ACCESS_COARSE_LOCATION or ACCESS_FINE_LOCATION permission to get scan results

How can i access the list of wifi networks? I'm using a Nexus 5 with Android 6.0.

Chris J.
  • 47
  • 1
  • 4

0 Answers0