android编程实现设置、打开wifi热点共享供他人连接的方法

2019-12-10 19:55:12王冬梅
  • import android.net.wifi.WifiManager;   import android.os.Bundle;  
  • public class MainActivity extends Activity {   private List<ScanResult> wifiList;  
  • private WifiManager wifiManager;   private List<String> passableHotsPot;  
  • private WifiReceiver wifiReceiver;   private boolean isConnected=false;  
  • private Button connect;   @Override 
  • public void onCreate(Bundle savedInstanceState) {   super.onCreate(savedInstanceState);  
  • init();   }  
  • /* 初始化参数 */   public void init() {  
  • setContentView(R.layout.main);   connect=(Button)findViewById(R.id.connect);  
  • wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);   wifiReceiver = new WifiReceiver();  
  • //通过按钮事件搜索热点   connect.setOnClickListener(new View.OnClickListener() {  
  • @Override   public void onClick(View v) {  
  • wifiManager.startScan();   }  
  • });   }  
  • /* 监听热点变化 */   private final class WifiReceiver extends BroadcastReceiver {  
  • @Override   public void onReceive(Context context, Intent intent) {  
  • wifiList = wifiManager.getScanResults();   if (wifiList == null || wifiList.size() == 0 || isConnected)  
  • return;   onReceiveNewNetworks(wifiList);  
  • }   }  
  • /*当搜索到新的wifi热点时判断该热点是否符合规格*/   public void onReceiveNewNetworks(List<ScanResult> wifiList){  
  • passableHotsPot=new ArrayList<String>();   for(ScanResult result:wifiList){  
  • System.out.println(result.SSID);   if((result.SSID).contains("YRCCONNECTION"))  
  • passableHotsPot.add(result.SSID);   }  
  • synchronized (this) {   connectToHotpot();