1. ホーム
  2. ios

[解決済み] iphoneのMACアドレスをプログラムで取得するにはどうすればよいですか?

2022-05-10 06:20:04

質問

iPhoneのMACアドレスとIPアドレスをプログラムで取得する方法は?

解決するには?


ノート iOS7では、デバイスのMACアドレスを取得することができなくなりました。 実際のMACアドレスではなく、固定値が返されます。


少し前に偶然見つけたものです。 元ネタは こちら 少し修正してすっきりさせました。

IPAddress.h

IPAddress.c

そして、それを使用するために

InitAddresses();
GetIPAddresses();
GetHWAddresses();

int i;
NSString *deviceIP = nil;
for (i=0; i<MAXADDRS; ++i)
{
    static unsigned long localHost = 0x7F000001;        // 127.0.0.1
    unsigned long theAddr;

    theAddr = ip_addrs[i];

    if (theAddr == 0) break;
    if (theAddr == localHost) continue;

    NSLog(@"Name: %s MAC: %s IP: %s\n", if_names[i], hw_addrs[i], ip_names[i]);

        //decided what adapter you want details for
    if (strncmp(if_names[i], "en", 2) == 0)
    {
        NSLog(@"Adapter en has a IP of %s", ip_names[i]);
    }
}

アダプタの名称は、シミュレータやデバイス、デバイスの無線LANや携帯電話によって異なります。