前言
我正在使用Xcode 7.0.1和Swift 2。
我已经花费了几个小时(更新,几天)在尝试理解如何检索这些信息。
我看到有一个框架CoreBluetooth,可能会帮助我。(更新,绝对不行!!)
有什么想法吗?Objective-c/swift/c/c++..都可以。
我已经测试过这个答案中的代码,但是输出为:
>>> WIFI MAC地址:02:00:00:00:00:00
>>> IPHONE蓝牙MAC地址:02:00:00:00:00:ffffffff
>>> IPAD 蓝牙MAC地址:02:00:00:00:00:01
关于此事,我在官方文档上阅读到:
在iOS 7及更高版本中,如果您请求一个iOS设备的MAC地址,则系统返回值为02:00:00:00:00:00。如果您需要识别设备,请使用UIDevice的identifierForVendor属性。(需要自己广告宣传的应用程序应考虑使用ASIdentifierManager的advertisingIdentifier属性。)
问题是:其他设备可以读取我的蓝牙mac地址,为什么我不能呢?
我认为肯定有办法可以实现。
我还尝试了此答案(以及其他答案)中的代码片段,但我从来没有得到真正的mac地址。
我知道如何查看Mac的蓝牙信息,在终端上运行:
system_profiler SPBluetoothDataType | sed -n "/Apple Bluetooth Software Version\:/,/Manufacturer\:/p"
要仅检索MAC地址,我可以“管道”到上一个命令:
egrep -o '([[:xdigit:]]{1,2}-){5}[[:xdigit:]]{1,2}'
我希望你能够帮助翻译这段关于IT技术的内容。以下是需要翻译的内容:
我想知道是否可以通过编程在iPhone上运行此命令?
实际上,我已经尝试过使用以下伪代码:
script = ""
system("system_profiler SPBluetoothDataType > blueInfo.txt")
sleep
read from file "blueInfo.txt" its content
这段代码能够编译并且“运行”,但是读取不存在的文件时会失败。
我正在考虑放弃这个想法。