Why doesn't Android have mac address for 3g when iOS?

I know this might be a dumb question, but maybe I'm just confused with the concept of a mac address.

As far as I know, each device has its own MAC address. For example, a wifi interface has its own MAC address. If all devices have their own mac address, then the device for 3g must also have a mac address. This is true for the iPhone, because 3G on the iPhone still gives the MAC address. However, in Android, you can only determine the MAC address for Wi-Fi. No mac address for 3g. Or I'm not sure that it is simply unavailable. Can you explain why Android does not have a mac address for 3g?

+6
source share
1 answer

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?

+6
source

Source: https://habr.com/ru/post/909241/


All Articles