Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.wifiscannertutorial;
- import android.content.BroadcastReceiver;
- import android.content.Context;
- import android.content.Intent;
- import android.content.IntentFilter;
- import android.net.wifi.ScanResult;
- import android.net.wifi.WifiManager;
- import android.support.v7.app.AppCompatActivity;
- import android.os.Bundle;
- import android.util.Log;
- import android.view.View;
- import android.widget.ArrayAdapter;
- import android.widget.Button;
- import android.widget.ListView;
- import android.widget.Toast;
- import java.util.ArrayList;
- import java.util.List;
- public class WifiScannerActivity extends AppCompatActivity {
- private WifiManager wifiManager;
- private ListView listView;
- private Button buttonScan;
- private int size = 0;
- private List<ScanResult> results;
- private ArrayList<String> arrayList = new ArrayList<>();
- private ArrayAdapter adapter;
- private BroadcastReceiver wifiReciver;
- private Context contex;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- buttonScan = findViewById(R.id.scnaBtn);
- IntentFilter intentFilter = new IntentFilter();
- intentFilter.addAction(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION);
- getApplicationContext().registerReceiver(wifiReciver, intentFilter);
- wifiReciver = new BroadcastReceiver(){
- @Override
- public void onReceive(Context context, Intent intent){
- results = wifiManager.getScanResults();
- unregisterReceiver(this);
- arrayList.add("Broad Cast Reciver Worked");
- Log.d("test", "Broad cast reciver worked");
- for(ScanResult scanResult : results){
- Log.d("test", scanResult.SSID);
- arrayList.add(scanResult.SSID + " - " + scanResult.capabilities);
- adapter.notifyDataSetChanged();
- }
- adapter.notifyDataSetChanged();
- }
- };
- buttonScan.setOnClickListener(new View.OnClickListener(){
- @Override
- public void onClick(View view){
- scanWifi();
- }
- });
- listView = findViewById(R.id.wifiList);
- wifiManager = (WifiManager)getApplicationContext().getSystemService(Context.WIFI_SERVICE);
- contex = getApplicationContext();
- if(!wifiManager.isWifiEnabled()){
- Toast.makeText(this, "WiFi is disabled ... We need to enable it", Toast.LENGTH_SHORT).show();
- wifiManager.setWifiEnabled(true);
- }
- adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, arrayList);
- listView.setAdapter(adapter);
- scanWifi();
- }
- private void scanWifi() {
- arrayList.clear();
- adapter.notifyDataSetChanged();
- IntentFilter intentFilter = new IntentFilter();
- intentFilter.addAction(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION);
- registerReceiver(wifiReciver, intentFilter);
- wifiManager.startScan();
- Toast.makeText(this, "Scanning Wifi...", Toast.LENGTH_SHORT).show();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement