Reputation: 12530
I'm trying to start a scan for available Wifi's and trigger a broadcast receiver as soon as the scan is complete.
I've started by adding permissions and declare receiver in my manifest:
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
...
<receiver android:name=".WifiReceiver">
<intent-filter>
<action android:name="android.net.wifi.SCAN_RESULTS" />
</intent-filter>
</receiver>
In my MainActivity
's onCreate
I initiate the scan:
// Get wifi points
WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
wifiManager.startScan();
Log.i("WIFI_SCAN", "STARTED SCAN");
And finally my WifiReceiver
class:
class WifiReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent) {
Log.i("WIFI_SCAN", "RESULTS RECEIVED");
}
}
I'm not getting any errors and my first Log
(STARTED SCAN
) gets displayed, but I never get my RESULTS RECEIVED
in the log.
I can't figure out why my BroadcastReceiver is not receiving anything
Upvotes: 3
Views: 691
Reputation: 134714
Your BroadcastReceiver
must be public.
class WifiReceiver extends BroadcastReceiver {
should be
public class WifiReceiver extends BroadcastReceiver {
Upvotes: 2