如何以编程方式获取 iPhone 的 MAC 地址
如何以编程方式获取 iPhone 的 MAC 地址和 IP 地址?
How to programmatically get an iPhone's MAC address and IP address?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
如何以编程方式获取 iPhone 的 MAC 地址和 IP 地址?
How to programmatically get an iPhone's MAC address and IP address?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(12)
注意 从 iOS7 开始,您无法再检索设备 MAC 地址。将返回一个固定值,而不是
我不久前偶然发现的实际 MAC Somthing。最初来自 此处 我修改了它稍微清理了一些东西。
IPAddress.h
IPAddress.c
并使用它
适配器名称根据模拟器/设备以及设备上的 wifi 或手机。
NOTE As of iOS7, you can no longer retrieve device MAC addresses. A fixed value will be returned rather than the actual MAC
Somthing I stumbled across a while ago. Originally from here I modified it a bit and cleaned things up.
IPAddress.h
IPAddress.c
And to use it
Adapter names vary depending on the simulator/device as well as wifi or cell on the device.
更新:这在 iOS 7 上不起作用。您应该使用 ASIdentifierManager.
MobileDeveloperTips 网站上的更干净的解决方案:
Update: this will not work on iOS 7. You should use ASIdentifierManager.
More clean solution on MobileDeveloperTips website:
我希望无论是否启用 wifi 都能返回地址,因此所选的解决方案对我不起作用。经过一些调整后,我使用了在某个论坛上找到的另一个调用。我最终得到以下结果(请原谅我生锈的 C ):
然后我会调用它来请求 en0,如下所示:
I wanted something to return the address regardless of whether or not wifi was enabled, so the chosen solution didn't work for me. I used another call I found on some forum after some tweaking. I ended up with the following (excuse my rusty C ) :
And then I would call it asking for en0, as follows:
从 iOS 7 开始,当您在任何设备上请求 MAC 地址时,系统始终返回值
02:00:00:00:00:00
。参考:发行说明
Starting from iOS 7, the system always returns the value
02:00:00:00:00:00
when you ask for the MAC address on any device.Reference: releasenotes
关于这个问题有多种解决方案,但我找不到完整的解决方案。
所以我为以下问题制定了自己的解决方案:
nicinfo
如何使用:
There are vary solutions about this, but I couldn't find a whole thing.
So I made my own solution for :
nicinfo
How to use :
这看起来是一个非常干净的解决方案: UIDevice BIdentifier
This looks like a pretty clean solution: UIDevice BIdentifier
现在,iOS 7 设备 – 始终返回 MAC 地址 02:00:00:00:00:00。
所以最好使用[UIDeviceidentifierForVendor]。
所以最好调用此方法来获取应用程序特定的唯一键
类别将更适合
导入“UIDevice+Identifier.h”
现在调用上面的方法来获取唯一地址
Now iOS 7 devices – are always returning a MAC address of 02:00:00:00:00:00.
So better use [UIDevice identifierForVendor].
so better to call this method to get app specific unique key
Category will more suitable
import "UIDevice+Identifier.h"
Now call above method to get unique address
@格兰特兰
这个“相当干净的解决方案”看起来类似于我自己对 iPhoneDeveloperTips 解决方案的改进。
你可以在这里看到我的步骤:
https://gist.github.com/1409855/
@Grantland
This "pretty clean solution" looks similar to my own improvement over iPhoneDeveloperTips solution.
You can see my step here:
https://gist.github.com/1409855/
在运行 iOS 7.0 或更高版本的设备上不再可能,因此无法在 Swift 中获取 MAC 地址。
正如苹果公司所说:
It's not possible anymore on devices running iOS 7.0 or later, thus unavailable to get MAC address in Swift.
As Apple stated:
...
...
在 iOS 6 中根据设备的唯一标识符创建 uniqueString:
To create a uniqueString based on unique identifier of device in iOS 6:
其中很多问题仅涉及 Mac 地址。如果您还需要我刚刚写的IP地址,可能需要一些工作,但似乎在我的机器上运行良好......
A lot of these questions only address the Mac address. If you also require the IP address I just wrote this, may need some work but seems to work well on my machine...