I believe that the MAC address refers to network technologies that implement the IEEE 802 standard, such as ethernet. 3G is not an IEEE 802 network, so the MAC address does not really apply.
However, there should be very few reasons to use the MAC address in your application, unless you are writing a network driver or doing something specific with a TCP / IP network.
Often people reach the MAC address, thinking that it is a unique identifier for the device, when really you should use something like http://developer.android.com/reference/android/provider/Settings.Secure.html#ANDROID_ID to Get a unique identifier that will work in all the different hardware combinations for Android, some of which may not include the IEE 802 niche at all.
I suspect that Apple is simply messy with its API and / or may suggest that ALL iOS devices have IEE 802 network equipment because they control the entire ecosystem. Does the IO provide a different MAC address when on Wi-Fi than on 3G?
source share