我试图检查手机是否连接到所需的wifi都没有?所以,我使用这段代码。
(wifiInfo.getSSID().equals("WiredSSID"))
但它不起作用。当我尝试制作吐司名称时,它仍会显示" WiredSSID"。所以,我不知道哪一点是错的。
此外,如何自动连接到Captive Portal Wifi。我使用How do I connect to a specific Wi-Fi network in Android programmatically?
中的代码将其设置为OPEN类型(conf.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);)并将其置于OnCreate函数中,但它无法正常工作。我不知道我应该改变网络类型吗?请帮帮我,谢谢
答案 0 :(得分:1)
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="/">
<xsl:text> ID | Value</xsl:text>
<xsl:text>
</xsl:text>
<!-- Choose the nodes you want to output here.
you can directly place the conditions
in an attribute -->
<xsl:apply-templates select="ValuesList/Values[Language[@DimensionID='Language']]"/>
</xsl:template>
<xsl:template match="Values">
<xsl:apply-templates select="ValueGroup[count(Value)=1 and Value/@QualifierID='std.lang.all']"/>
</xsl:template>
<xsl:template match="ValueGroup">
<xsl:value-of select="concat(ancestor::Values/@ID,' |',Value,'
')"/>
</xsl:template>
</xsl:stylesheet>
请注意引号。字符串应包含引号中的ssid。
答案 1 :(得分:1)
您可以尝试以下代码段来检查可用的wifi网络并连接到指定的wifi网络
List<ScanResult> wifiScanList = wifi.getScanResults();
wifis = new String[wifiScanList.size()];
for(int i = 0; i < wifiScanList.size(); i++){
wifis[i] = ((wifiScanList.get(i)).SSID);
if(wifis[i].equals("WiredSSID")) {
WifiConfiguration wifiConfig = new WifiConfiguration();
wifiConfig.SSID = String.format("\"%s\"", wifis[i]);
wifiConfig.preSharedKey = String.format("\"%s\"", "password");
WifiManager wifiManager = (WifiManager)getSystemService(WIFI_SERVICE);
//remember id
int netId = wifiManager.addNetwork(wifiConfig);
wifiManager.disconnect();
wifiManager.enableNetwork(netId, true);
wifiManager.reconnect();
}
}