2014-10-03 13 views
0

我在配件模擬器上啓用了兩個lighbulb型配件。當我嘗試讀取HMService的的serviceType,它返回類似:HomeKit HMService服務類型問題

0000003E-0000-1000-8000-0026BB765291代替HMServiceTypeLightbulb

for (int i = 0; i < [homeKitController.accessories count]; i++) { 
    HMAccessory *accessory = [homeKitController.accessories objectAtIndex:i]; 
    NSArray *services = accessory.services; 
    for (int i = 0; i < [services count]; i++) { 
    HMService *service = [services objectAtIndex:i]; 
    NSLog(@"%@", service.serviceType);// <-returns 0000003E-0000-1000-8000-0026BB765291 
    } 
} 

確切的代碼上面的Xcode測試版1在工作(前Xcode 6 GM出來了)。它用於將服務的類型打印爲NSString。現在它打印這個奇數值。任何想法或想法都表示讚賞。

回答

1

HMServiceTypeLightbulb是一個字符串常量,並且被定義爲您提供的那個十六進制字符串。 HomeKit系統的配件/服務/特性模仿BLE的工作原理,可能簡化BLE HomeKit配件的實施。長十六進制字符串與BLE UUID格式相同。查找特定服務時,只需檢查HomeKit提供的HMxxx常量上的字符串相等性即可。