Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class MainActivity extends AppCompatActivity {
- private WifiManager wifiManager;
- private List<ScanResult> scanResults;
- private int scanCount;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- Dexter.withActivity(this)
- .withPermissions(
- Manifest.permission.ACCESS_COARSE_LOCATION,
- Manifest.permission.ACCESS_FINE_LOCATION)
- .withListener(new MultiplePermissionsListener() {
- @Override
- public void onPermissionsChecked(MultiplePermissionsReport report) {
- if (report.areAllPermissionsGranted()) {
- accessWifiManager();
- }
- }
- @Override
- public void onPermissionRationaleShouldBeShown(List<PermissionRequest> permissions, PermissionToken token) {
- }
- }).check();
- }
- private void accessWifiManager() {
- final WifiManager mWifiManager = (WifiManager) getApplicationContext().getSystemService(WIFI_SERVICE);
- if(mWifiManager.getWifiState() == WifiManager.WIFI_STATE_ENABLED) {
- // register WiFi scan results receiver
- IntentFilter filter = new IntentFilter();
- filter.addAction(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION);
- registerReceiver(new BroadcastReceiver(){
- @Override
- public void onReceive(Context context, Intent intent) {
- List<ScanResult> results = mWifiManager.getScanResults();
- final int N = results.size();
- Log.v(TAG, "Wi-Fi Scan Results ... Count:" + N);
- for(int i=0; i < N; ++i) {
- Log.v(TAG, " BSSID =" + results.get(i).BSSID);
- Log.v(TAG, " SSID =" + results.get(i).SSID);
- Log.v(TAG, " Capabilities=" + results.get(i).capabilities);
- Log.v(TAG, " Frequency =" + results.get(i).frequency);
- Log.v(TAG, " Level =" + results.get(i).level);
- Log.v(TAG, "---------------");
- }
- }
- }, filter);
- // start WiFi Scan
- mWifiManager.startScan();
- }
- }
- }
Add Comment
Please, Sign In to add comment