主要思路
雖然蘋果官方的api沒有獲取mac位址的方法,但是當我翻看藍芽的文件的時候,我發現藍芽有提供乙個裝置資訊的service[service uuid:0x180a],裡面提供了兩個characteristic:獲取晶元的mac位址(0x2a23 )和獲取軟體的版本號(0x2a26)。如下圖所示:
實現根據這個思路:
[peripheral discoverservices:@[[cbuuid uuidwithstring:@"180a"]]];
[service discovercharacteristics:@[[cbuuid uuidwithstring:@"2a23"]]];
[peripheral readvalueforcharacteristic:characteristic]
nsstring *value = [nsstring stringwithformat:@"%@",characteristic.value];
nsmutablestring *macstring = [[nsmutablestring alloc] init];
//00:e0:4c:3f:14:de
這裡可乙個大家推薦乙個非常好用的藍芽開發的庫,跟corebluetooth的介面一摸一樣,只是資料是用過block返回的,用起來更加的方便。
mpbluetoothkit
下面是寫的mpbluetoothkit 獲取mac位址的**
cbuuid *macserviceuuid = [cbuuid uuidwithstring:@"180a"];
cbuuid *maccharcteristicuuid = [cbuuid uuidwithstring:@"2a23"];
[mperipheral discoverservices:@[macserviceuuid] withblock:^(mpperipheral *peripheral, nserror *error) ];}}
}];}
}];
github位址
bluetoothmacaddressdemo
多多star
獲取ios的MAC位址
include per msqr include include include pragma mark mac return the local mac addy courtesy of freebsd hackers email list accidentally munged during p...
藍芽 Mac位址
在 br edr 裝置中,其位址是乙個 48bits 的數字,稱作 48 bit universal lan mac addresses 和電 腦的 mac 位址一樣 正常情況下,該位址需要向 ieee 申請 其實是購買 企業交錢,ieee 保證位址的唯 一性,皆大歡喜。當然,這種位址分配方式,在 ...
解構藍芽位址以及藍芽MAC位址查詢
現實場景中,經常會碰到 搜尋到乙個藍芽位址,但是沒有名稱,無法確定是不是想連線的裝置等問題?這個時候就想著,如果可以從位址資訊中能解析出某些有用的資訊,幫助我們篩選就好了。別急,還真是有可能的,讓我們先來重新認識一下藍芽位址的構成。當然,這裡介紹的是bluetooth address,即public...