Apple Watch と WatchOS のデバイス情報を取得する
iOS 9 β4で WKInterfaceDevice
にデバイス情報を取得するメソッドが追加された。
追加されたメソッドは以下で取得できる情報は iOS の UIDevice
に存在する同名のメソッドと同じ。
@property(nonatomic, readonly, copy) NSString *systemVersion WK_AVAILABLE_WATCHOS_IOS(2.0,9.0); // e.g. @"2.0" @property(nonatomic, readonly, copy) NSString *name WK_AVAILABLE_WATCHOS_IOS(2.0,9.0); // e.g. "My Watch" @property(nonatomic, readonly, copy) NSString *model WK_AVAILABLE_WATCHOS_IOS(2.0,9.0); // e.g. @"Apple Watch" @property(nonatomic, readonly, copy) NSString *localizedModel WK_AVAILABLE_WATCHOS_IOS(2.0,9.0); // localized version of model @property(nonatomic, readonly, copy) NSString *systemName WK_AVAILABLE_WATCHOS_IOS(2.0,9.0); // e.g. @"watchOS"
実際に実機で試してみたところ以下が取得できた。
メソッド | 値 |
---|---|
systemVersion | 2.0 |
name | iOS のWatch アプリで設定した名称 |
model | Apple Watch |
localizedModel | Apple Watch |
systemName | watchOS |
その他
sysctlbyname
ファンクションで取得できるデバイス情報の hw.machine
と hw.model
は以下になる。
キー | Apple Watch 38mm | Apple Watch 42mm |
---|---|---|
hw.machine | Watch1,1 | Watch1,2 |
hw.model | N27aAP | N28aAP |
将来的に新バージョンの Apple Watch が出た際には sysctlbyname
を使ってデバイス判定を行う事ができる。