How to get the wifi mac address on iPhone in Swift?

Vali Nagacevschi picture Vali Nagacevschi · Mar 20, 2015 · Viewed 22k times · Source

Is there a way to get the real Wi-Fi MAC address of the IOS device using Swift language? Code snippet much appreciated! Thanks.

Answer

Aluminum picture Aluminum · Mar 20, 2015

When you request the Device MAC address in iOS 7 and above you will always get the same response: 02:00:00:00:00:00, this has been made by Apple for privacy concerns.

In iOS 7 and later, if you ask for the MAC address of an iOS device, the system returns the value 02:00:00:00:00:00. If you need to identify the device, use the identifierForVendor property of UIDevice instead. (Apps that need an identifier for their own advertising purposes should consider using the advertisingIdentifier property of ASIdentifierManager instead.)

Apple recommends to switch to UDID instead if you need to uniquely identify an iOS device. In Swift you can use this:

UIDevice.currentDevice().identifierForVendor

if you want a string instead use:

UIDevice.currentDevice().identifierForVendor.UUIDString

Here's a nice reading about UDID