我想显示可用 Wifi 设备的列表。这是我的代码,我不明白这里有什么错误:
wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
if (wifi.isWifiEnabled() == false)
{
Toast.makeText(getApplicationContext(), "wifi is disabled..making it enabled",Toast.LENGTH_LONG).show();
wifi.setWifiEnabled(true);
}
String[] str1 = null;
ArrayAdapter<String>adapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,android.R.id.text1,str1);
lv.setAdapter(adapter);
WifiInfo info = wifi.getConnectionInfo();
textStatus.append("\n\nWiFi Status: " + info.toString());
boolean b=wifi.isWifiEnabled();
if(b){
wifi.setWifiEnabled(false);
Toast.makeText(getApplicationContext(), "Yes", Toast.LENGTH_SHORT).show();
enter code here
这是我的代码,我想通过编程方式在 Android 中获取启用 Wifi 的设备属性。我怎样才能得到它?
public void onReceive(Context c, Intent intent)
{
results = wifi.getScanResults();
size = results.size();
int i = 0;
str1 = new String[size];
for (ScanResult result : results){
str1[i] = result.SSID + " " + result.level;
i++;
}
您可以通过以下方式获取可用的 WIFI 扫描结果
List<ScanResult> mScanResults = mWifiManager.getScanResults();
然后迭代mScanResults
并使用获取 SSIDresults.SSID
。另外,如果您有兴趣获得可以使用的最佳网络WifiManager.compareSignalLevel(int rssiA, int rssiB)
用于比较两个网络。
ScanResult bestResult = null;
for(ScanResult results : mScanResults){
Log.d("result",results.SSID);
if(bestResult == null || WifiManager.compareSignalLevel(bestResult.level,
results.level) < 0){
bestResult = results;
}
}
String message = String.format("%s networks found. %s is the strongest.",
mScanResults.size(), bestResult.SSID);
Log.d("best network",message);
你可以从我的下载完整的演示repository https://github.com/lalit3686/WIFIConnectionListener.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)