昨天还能获取到wifi的ssid名称,今天突然就不行了,很奇怪,这块内容这两天我都没有改动过。
代码是参考网上的
getWifiName() {
var wifiManager, wifiInfo;
var Context = plus.android.importClass("android.content.Context");
var WifiManager = plus.android.importClass("android.net.wifi.WifiManager");
var WifiInfo = plus.android.importClass("android.net.wifi.WifiInfo");
wifiManager = plus.android.runtimeMainActivity().getSystemService(Context.WIFI_SERVICE);
wifiInfo=plus.android.invoke(wifiManager,'getConnectionInfo')
//wifiInfo = wifiManager.getConnectionInfo();
var ssid=plus.android.invoke(wifiInfo, "getSSID")|| '';
console.log(ssid)
if (ssid.length == 0) {
this.msg="当前Wi-Fi获取失败,请确认是否已连接Wi-Fi"
}
//一些手机上获取SSID是有值的,但是实际IP为空,真实为未连接
var i = parseInt(wifiInfo.getIpAddress());
var ipStr = (i & 0xFF) + "." +
((i >> 8) & 0xFF) + "." +
((i >> 16) & 0xFF) + "." +
(i >> 24 & 0xFF);
if (ipStr == "0.0.0.0") {
this.msg="当前Wi-Fi获取失败,请确认是否已连接Wi-Fi"
}
if (ssid != "<unknown ssid>" && ssid.toUpperCase() != "0X") {
console.log(ssid.replace(/\"/g, ""));
this.ssid= ssid.replace(/\"/g, "");
this.wifiFlag=true
}
},
权限我也加上了 包括一下几个
"<uses-permission android:name=\"android.permission.ACCESS_COARSE_LOCATION\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_FINE_LOCATION\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
"<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
1 个回复
1***@163.com
记得手动在真机调试的时候开位置权限