私はTLV8形式のHomeKit(おそらくBluetooth)特性を書いています。リンゴDOCはTLV8でデータを準備する
値は8ビットのタイプ、8ビット 長を有するタイプレングス値項目を充填された1つ以上のTLV8年代、 のセットを含むNSDataオブジェクトであり、そしてN-言いますバイト値。
Wikipeidaによれば、タイプレングス値は
タイプ
メッセージのこの部分が表すフィールドの種類を示すバイナリコード、しばしば単に英数字です。
長
(典型的にはバイト単位)値フィールドのサイズ。メッセージのこの部分のためのデータを含むバイトの
値
可変長シリーズ。
私はどのように1つをパックするかわかりません。私はNSDataに生のバイトを書くことができると思いますが、パディングなどが必要な場合は何を書きますか?そうする方法の例はありますか?
スウィフトは、上記のコードからもうタイプを推測することはできないようです。 これはかかわらず動作するように思われる: 'コードはせタグ:UINT8 = 0x02の せ長UINT8 = 0x01の せ値:UINT8 = 0x01の LETバイト:[UINT8] = [タグ、長さ、値]' – addzo
TLV8の8は、タイプと長さが8ビットであることを示します –