Android的NJ代码:
function getMac(){
var mac = "xxx-xxx-xxx-xxx";
if(plus.os.name=="Android"){
// 导入UIAlertView类
//WifiManager
var Context = plus.android.importClass("android.content.Context");
var WifiManager = plus.android.importClass("android.net.wifi.WifiManager");
var wifiManager = plus.android.runtimeMainActivity().getSystemService(Context.WIFI_SERVICE);
var WifiInfo = plus.android.importClass("android.net.wifi.WifiInfo");
var wifiInfo = wifiManager.getConnectionInfo();
alert(wifiInfo.getMacAddress());
}
return mac;
}
11 个回复
ftzn
这两天比较闲,特意研究了一下。测了从安卓4.1的古董机到小米9,共5台手机,均能获得正确结果,参考API:https://developer.android.com/reference/java/net/NetworkInterface#getHardwareAddress()
GavinZ
这个调用报错。
var WifiManager = plus.android.importClass("android.net.wifi.WifiManager");
Unexpected identifier at index.html:1
求解= =
Lalapalooza
//获取手机mac地址
var Context = plus.android.importClass("android.content.Context");
var wifiManager = plus.android.runtimeMainActivity().getSystemService(Context.WIFI_SERVICE);
var wifiInfo = plus.android.invoke(wifiManager, "getConnectionInfo");
var mac = plus.android.invoke(wifiInfo, "getMacAddress");
登
获取的mac地址为02:00:00:00:00:00,请问这个怎么解决
2017-06-29 15:38
1***@qq.com
回复 登:兄弟这个问题解决了吗
2017-09-27 18:40
3***@qq.com
求一个获取IOS MAC案例
j***@hotmail.com
楼主找到方法了吗?
2017-02-28 16:17
7***@qq.com
两位哥们找到了吗
2017-03-27 09:26
无言的飞雪
@331647417@qq.com
我这个是获取,当前路由器的mac地址。要获取设备的mac地址,把我注释的那句话放开,
var localMac = wifiInfo.getMacAddress();应该就可以了
1***@qq.com
大佬,有没有获取自己热点信息的方法,包括热点名称,bssid
2017-09-26 21:55
无言的飞雪
回复 1***@qq.com:没试过,你可以先搜搜原生安卓怎么获取热点的,然后照着写js就行了 。
2017-09-27 09:55
1***@qq.com
回复 无言的飞雪:谢谢,我获取的mac是 02:00:00:00:00:00,大佬知道为啥嘛
2017-09-27 18:41
无言的飞雪
回复 1***@qq.com:不清楚
2017-09-28 09:58
307109227
有IOS MAC的例子吗?
j***@hotmail.com
楼主找到方法了吗?
2017-02-28 16:17
1***@qq.com
/**
@return
*/
public String getMac(){
String str="";
String macSerial="";
try {
Process pp = Runtime.getRuntime().exec(
"cat /sys/class/net/wlan0/address ");
InputStreamReader ir = new InputStreamReader(pp.getInputStream());
LineNumberReader input = new LineNumberReader(ir);
}
public static String loadFileAsString(String fileName) throws Exception {
FileReader reader = new FileReader(fileName);
String text = loadReaderAsString(reader);
reader.close();
return text;
}
public static String loadReaderAsString(Reader reader) throws Exception {
StringBuilder builder = new StringBuilder();
char[] buffer = new char[4096];
int readLength = reader.read(buffer);
while (readLength >= 0) {
builder.append(buffer, 0, readLength);
readLength = reader.read(buffer);
}
return builder.toString();
}上面那个方法不行了 6.0以上版本不适用 这是安卓代码 大佬能整一下吗
战无不胜
ios wifi列表怎么获取?
1***@qq.com
为什么魅族手机获取不了MAC地址?大神解答一下
2***@qq.com - 茫茫代码中的一粒沙
安卓8.0以上就不好用了这个方法
var Context = plus.android.importClass(“android.content.Context”);
var wifiManager = plus.android.runtimeMainActivity()。getSystemService(Context.WIFI_SERVICE);
var wifiInfo = plus.android.invoke(wifiManager,“getConnectionInfo”);
var mac = plus.android.invoke(wifiInfo,“getMacAddress”);
求个全版本的获取MAC地址方法 我愿意付费谢谢各位大神
1***@qq.com
兄弟,你的问题解决了吗
2019-08-02 17:26
2***@qq.com
原生高版本android10都获取不到,低版本的可以
2019-12-17 12:01
Huiqi
获取的mac是 02:00:00:00:00:00的的解决:给应用【定位】的权限
另外:
var netMac = wifiInfo.getBSSID(); //获取Wifi路由器的Mac地址
var ssid = wifiInfo.getSSID(); //获取Wifi路由器的SSID