精华内容
下载资源
问答
  • Android 6.0的手机无法通过低版本的Mac地址获取方式获取Mac地址,可以通过读取节点进行获取"/sys/class/net/wlan0/address",具体参考http://blog.csdn.net/zhangvalue/article/details/78220825,亲测通过
  • 最近在做一个需要上下位机的项目,我负责的任务下位机,使用的主控芯片...在安卓系统上进展顺利,但是在ios上的时候,这个过程遇到的问题,ios中无法直接获取蓝牙的mac地址。写上位机的负责人发给了我一个链接https:...

    最近在做一个需要上下位机的项目,我负责的任务下位机,使用的主控芯片是esp32。这个项目中有一项是需要手机扫描二维码然后连接作为esp32的蓝牙。二维码中包含了mac地址信息,在手机扫描周围设备的时候通过mac地址筛选出目标设备,然后建立连接。在安卓系统上进展顺利,但是在ios上的时候,这个过程遇到的问题,ios中无法直接获取蓝牙的mac地址。写上位机的负责人发给了我一个链接https://www.jianshu.com/p/1d6a8fc8134f。这个解决方案虽然不是esp32的,但是了解了原理之后还是可以在esp32上实现。

    主要原理是在ble广播自己的时候会有一个广播内容中包含很多项,其中有一想就是该产品的制造商(Manufacture)信息,而ios是可以获取这一项内容的。所以,我们可以把mac地址填入这一项,然后ios就可以通过读取制造商信息顺利的识别不同设备了。具体的步骤如下:

    1、获取mac地址

    2、将mac地址填入"制造商(Manufacture)"项中

     

    一、关于获取mac地址

    这里我暂时没有找到获取蓝牙mac地址的方法,但是因为暴露mac地址的目的是为了区分设备,所以只要选择一个不重复的mac地址就好了。这里,选择使用了设备的mac地址。eFuse模块中存在设备的mac地址,具体可以参考https://docs.espressif.com/projects/esp-idf/zh_CN/latest/api-reference/system/efuse.html。相关的例程可以参考esp-idf/examples/system/base_mac_address。

    结论:

    esp_err_t esp_efuse_mac_get_default(uint8_t* mac);函数可以获取设备的mac地址,其中mac地址是6位。

     

    二 、mac地址填入"制造商(Manufacture)"项

    esp_ble_adv_data_t结构体中有一项是p_manufacturer_data为"制造商(Manufacture)"项的指针,manufacturer_len"制造商(Manufacture)"项的长度。对这两项幅值可以就可以在广播的是将"制造商(Manufacture)"项广播出去。
     
    涉及到的语句如下。使用对代码进行相应的修改。
    static uint8_t mac_addr[6] = {0};//定义Mac地址存储空间
    esp_efuse_mac_get_default(mac_addr);//获取mac地址
    static esp_ble_adv_data_t adv_data;//定义广播用的结构体
    adv_data.manufacturer_len = 6; //填入Manufacture的长度 
    adv_data.p_manufacturer_data = mac_addr; //填入Manufacture的指针

     

    转载于:https://www.cnblogs.com/zornlink/p/11083079.html

    展开全文
  • 网络提示无法获取地址,只有一个自分配地址。排除了接口,线材的问题。经过一天折腾。发现是由于共享打开的原因。 因为我经常连接有线网络,然后使用wifi共享给手机。 问题就在这里。在取消共享以后。插拔一次...

       碰到我的mac bookpro 2014接官方的那个RJ-45网口转接线。网络提示无法获取到地址,只有一个自分配地址。排除了接口,线材的问题。经过一天折腾。发现是由于共享打开的原因。

     因为我经常连接有线网络,然后使用wifi共享给手机。

    问题就在这里。在取消共享以后。插拔一次网线。然后点到网络那里

    点击高级。

    选择DHCP 点击DHCP续租,最后确认。

    回到上一界面后点击确定。即可。

     

    上述问题产生的原因是,我准备用apple的 airdrop(隔空投送)需要关掉网络共享,来回一折腾,插拔网线居然没网了。一度怀疑转接口坏了。200RMB的一根线。坏了我就rrrrrr了~~~

    好了,有问题的朋友也可以私信我哦~

    展开全文
  • Android 6的MAC获取

    千次阅读 2016-08-09 14:02:33
    问题:Android 6.0的手机无法通过低版本的Mac地址获取方式获取Mac地址 WifiInfo.getMacAddress() 或者 BluetoothAdapter.getAddress() 原因:由于安全方面的原因,Google在Android 6.0以后的SDK中将上述两个...

    问题:Android 6.0的手机无法通过低版本的Mac地址获取方式获取Mac地址

    WifiInfo.getMacAddress() 或者 BluetoothAdapter.getAddress()


    原因:由于安全方面的原因,Google在Android 6.0以后的SDK中将上述两个方法的返回值修改为了固定的“02:00:00:00:00:00”

    但是可以从NetworkInterface.getNetworkInterfaces()获取(基于调用:cat /sys/class/net/wlan0/address)


    解决方案:

        public static String getMac() {
            try {
                Enumeration<NetworkInterface> interfaces = NetworkInterface.getNetworkInterfaces();
                while (interfaces.hasMoreElements()) {
                    NetworkInterface iF = interfaces.nextElement();
    
                    byte[] addr = iF.getHardwareAddress();
                    if (addr == null || addr.length == 0) {
                        continue;
                    }
    
                    StringBuilder buf = new StringBuilder();
                    for (byte b : addr) {
                        buf.append(String.format("%02X:", b));
                    }
                    if (buf.length() > 0) {
                        buf.deleteCharAt(buf.length() - 1);
                    }
                    String mac = buf.toString();
                    Log.d("mac", "interfaceName=" + iF.getName() + ", mac=" + mac);
                    if (iF.getName().equals("wlan0")) {
                        return mac;
                    } else {
                        return Build.UNKNOWN;
                    }
                }
            } catch (SocketException e) {
                return Build.UNKNOWN;
            }
            return Build.UNKNOWN;
        }



    感恩!



    展开全文
  • 3把我的手机mac地址添加进白名单并取消限速 用ARP找到并确认了他的mac地址,然后打算用TMAC更改我的wlan MAC地址,但是失败提示必须用02开头的值02:xx:xx...我也不知道为啥,于是尝试了利用建立网桥然后改注册表,...
  • IOS和Android生成设备唯一ID

    千次阅读 2018-12-23 20:48:27
    文章目录IOS系统... IOS已经无法获取IMEI, 网络MAC地址信息, Android获取IMEI需要用户权限, MAC地址未来也可能获取不到.因此需要使用其它手机来给设备生成一个ID. IOS系统 NSString* deviceId = [[[UIDevice...


    对于移动开发者来说, 经常需要追踪用户使用了哪台设备登录. 但是随着手机系统越来越完善, 对安全性要求也越来越高. IOS已经无法获取IMEI, 网络MAC地址信息, Android获取IMEI需要用户权限, MAC地址未来也可能获取不到.因此需要使用其它手机来给设备生成一个ID.

    IOS系统

    NSString* deviceId = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
    

    卸载重装APP之后, 这个值会变化. 因此首次生成ID之后, 需要存储到Keychain中, 以后不再重新生成. 当然, 用户恢复出厂设置之后, 还是会消失的.
    示例代码
    https://github.com/wzjwhut/IosDeviceIdAndKeychain

    Android系统

    如果开发者一定要用户开启权限的话, 也可以直接使用IMEI. 折中的办法也是自己生成一个ID.

        private String generateDeviceId(){
            MessageDigest digest;
            try {
                char[] chars = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'};
                digest = MessageDigest.getInstance("MD5"); 
                digest.update((getBaseContext().getPackageName() + Build.MANUFACTURER +
                        Build.BRAND + Build.DEVICE + Build.SERIAL +
                        Settings.Secure.getString(getBaseContext().getContentResolver(), 
                        Settings.Secure.ANDROID_ID)).getBytes("UTF-8"));
                byte[] bin = digest.digest();
                StringBuilder stringBuf = new StringBuilder(bin.length<<1);
                for (int i = 0; i < bin.length; i++) {
                    stringBuf.append(chars[(bin[i]>>4)&0x0f]);
                    stringBuf.append(chars[bin[i]&0x0f]);
                }
                String deviceId = stringBuf.toString();
                Log.i("deviceId", deviceId);
                return deviceId;
            } catch (Exception e) {
            }
            return "";
        }
    

    这里使用了多个系统属性来生成一个ID, 减少重复的可能性, 如果用户恢复出厂设备, 这个ID也可能会变化

    展开全文
  • wifi探针的实现和部分代码说明

    千次阅读 2018-07-18 10:16:38
    原理简介: ...设备搜索热点时发送的探求信号,在一些新设备中,为了隐藏自己的真实mac地址,采用的是发送伪mac地址的探求信号,所以在探求帧中是无法获取真实的mac地址。一些老设备中没有此类功...
  • android client 连接到token服务 android client 是编译大神的 配置url 地址 我自己mac 上的...我本机访问 这个地址 无法获取授权mic camera 权限 具体原因,以后再解 换成http:????/localhost:3001 就有默认授权...
  • 蓝牙开发,非越狱设备,是无法直接获得mac地址的, 而取mac地址都是为了唯一标识一个东西,苹果的蓝牙开发是靠啥唯一标识一个蓝牙设备呢?如何用代码获取呢? 亲。。。敢问你解决了么?  我也遇到这个问题了。用...
  • 安卓监控精灵

    2012-01-20 14:00:54
    5 获取手机其他信息,包括:Wi-Fi IP地址,MAC地址,国际标识码(IMEI),电池电量等; 6 所有信息均通过网络静默反馈至用户指定邮箱,他人无法获取; 7 支持完全卸载; 8 软件提供5天免费试用,试用期结束后发送...
  • 唯一的设备ID

    2020-04-22 11:54:08
    苹果对用户隐私方面的权限管理非常严格,不允许调用私有API获取用户硬件的相关的ID,其中包括手机号、UDID、IMIE、序列号、MAC地址等,这些能解析设备唯一性的信息都不能获取,否则无法上架App Store.本文将讨论如何...
  • JS版微信连WIFI实例,这个是在手机端运行的,在PC端有些功能不能实现,比如一键打开微信连Wi-Fi,会弹出...//手机mac地址  var ssid = "WX-FRwifi";//无线网名称  var bssid = "ff:ff:ff:ff:ff:ff";//路由器mac地址
  • 局域网网络安全卫士

    2012-12-24 11:13:33
    但是,由于路由器、防火墙或者交换机的IP和MAC地址绑定一般是禁止内网的电脑私自更改IP地址或者MAC地址,但是却无法禁止外来电脑接到内网,也就是说外来电脑可以接入到内网访问内网共享资源,并且还可以上网,从而...
  • FIX 修正在Mac下的Safari下无法上传的BUG FIX 删帖回收站 FIX 修复分区和版块单独指定模板时,修改模板和DIY无效 FIX 修正管理员访问加密相册时的Ajax出错 FIX 修改管理面版中回帖管理时的错误 FIX 批量删除时...
  • FIX 修正在Mac下的Safari下无法上传的BUG FIX 删帖回收站 FIX 修复分区和版块单独指定模板时,修改模板和DIY无效 FIX 修正管理员访问加密相册时的Ajax出错 FIX 修改管理面版中回帖管理时的错误 FIX 批量删除时...
  • FIX 修正在Mac下的Safari下无法上传的BUG FIX 删帖回收站 FIX 修复分区和版块单独指定模板时,修改模板和DIY无效 FIX 修正管理员访问加密相册时的Ajax出错 FIX 修改管理面版中回帖管理时的错误 FIX 批量删除时...
  • FIX 修正在Mac下的Safari下无法上传的BUG FIX 删帖回收站 FIX 修复分区和版块单独指定模板时,修改模板和DIY无效 FIX 修正管理员访问加密相册时的Ajax出错 FIX 修改管理面版中回帖管理时的错误 FIX 批量删除时...
  • 修复打开歌单时,网易云音乐个人歌单地址无法解析的 bug(感谢@zhuzhuyule 的提交) 2017-12-26 增加同步歌单到 Github Gist 功能。(特别感谢@ConstLhq 提供创意和部分代码实现) 2017-12-20 增加搜索翻页功能,...
  • CVE-2020-12753-LG 智能手机任意代码执行漏洞 CVE-2020-12695-UPnP 安全漏洞 79款 Netgear 路由器遭远程接管0day dlink-dir610-exploits-Exploits for CVE-2020-9376 and CVE-2020-9377 wacker:一组脚本,可辅助对...
  • 一般能在「设置」-「关于手机」-「状态信息」-「IP地址」找到,也可以使用下文里 查看设备信息 - IP 地址 一节里的方法用 adb 命令来查看。 通过 IP 地址连接设备。 adb connect <device-ip-address> 这里的...
  • adb1.0.26包含fastboot.exe

    2019-03-05 15:11:03
    一般能在「设置」-「关于手机」-「状态信息」-「IP地址」找到,也可以使用下文里 查看设备信息 - IP 地址 一节里的方法用 adb 命令来查看。 通过 IP 地址连接设备。 adb connect 这里的 <device-ip-address> 就是...
  • 建立了个QQ群,有问题可以加入来讨论:459996006 点这里直接加群 (目前群为付费入群,Mac等可能无法加入付费群,请用安卓/pc/手机QQ搜索群号来加群) (如果提示禁止入群,可能为付费群的一些问题,可以晚点再试) ...
  • 《Search to Play the Song》 把浏览器变成了最方便的听歌软件,无论你是Mac,还是Windows, Linux都能通过安装这款工具,获得良好的听歌体验~ 092《Copyfish Free OCR Software》自动截图识别网页中的文字 ...
  • 特别注意:需要先与机器人之间创建会话,机器人才能下发消息,否则机器人无法主动发送消息,切记! 3.在 Telegram 中搜索 userinfobot,并给它发送一条消息,它会返回给你 chatid。 4.在 Github Secrets 中删除 ...
  • 6.8.4 地铁口索爱手机无法从3G切换到2G 74 6.8.5 利用CHR定位CDR中RNC INNER FAILURE 74 6.9 章节小结 74 7 传输问题分析 75 7.1 概述 75 7.2 传输协议栈 75 7.3 传输网络层的传输配置规则 77 7.4 传输带宽的查询 78...
  • 设备信息的获取:除了使用_idfa、_idfv, 还使用sysctl 获取cpu、macaddress信息,以及使用sysctlbyname获取设备型号等信息、 使用CNCopyCurrentNetworkInfo获取ssid、bssid 关于设备ID的心得: 通过逆向研究,发现...
  • ghtoc Github地址(pyhon) 见toc.py,(python2.7,使用方法·:python toc.py MDFile,会生成一个.bak备份文件)【推荐这个可以用,也不用装其他工具】 gh-md-toc Github地址 git团队协作项目操作说明.md 放在...

空空如也

空空如也

1 2
收藏数 31
精华内容 12
关键字:

手机mac地址无法获取