にMACアドレスを取得するにはどのように私はこのCコードでMACアドレスを取得することができます:私はAndroidのMACアドレスを取得したいAndroidのネイティブコード
struct ifreq s;
char buffer[12 + 1];
int fd = socket(PF_INET, SOCK_DGRAM, IPPROTO_IP);
int i, j;
memset(buffer, 0 , sizeof(buffer));
strcpy(s.ifr_name, "wlan0");
if (0 == ioctl(fd, SIOCGIFHWADDR, &s)) {
memcpy(mac, s.ifr_addr.sa_data, 6);
return 1;
}
。このコードはMACアドレスを与えません。 if (0 == ioctl(fd, SIOCGIFHWADDR, &s)
は常にfalseです。
私はhttps://groups.google.com/d/msg/android-ndk/6Y-0Eid3mGw/6bFvtap8xJIJ
のコードを発見した。しかし、このコードは、エラーを与える:
ioctl(SIOCGIFHWADDR) error
、それは間違ったMACアドレスを与える00:00:00:7C::00:01
のようにどのように私はAndroidのネイティブコードにMACアドレスを取得できますか?
、これはJavaでそれを取得し、それを渡すことを検討し、AndroidのMの前に働いていました。 http://stackoverflow.com/questions/33159224/getting-mac-address-in-android-6-0(5回目のアンサーを参照) – Michael