第2項. NdefRecordを操作する。

 1. レコード内の各種データを取得する。

レコード内の各データを取得するには下記のメソッドを使用します。


Rho::NdefRecord.get_id           #Array #=> レコードのIDを取得する
Rho::NdefRecord.get_tnf           #Int #=>レコード情報のTNFを取得する
Rho::NdefRecord.get_type           #Array #=>レコードの種類のバイトコードを取得する
Rho::NdefRecord.get_payload        #Array #=>レコードのpayloadのバイトコードを取得する
Rho::NdefRecord.get_payload_as_string #=>payloadの文字列を取得する
Rho::NdefRecord.get_byte_array   #Array #=>レコードのバイトコードを取得する

 

 2. レコード内のデータをハッシュに変換する

NdefRecordオブジェクトの内容をハッシュに変換するにはRho::NdefRecord::make_hashメソッドを使用します。

 

Rho::NdefRecord.make_has

 3. TNFを対応する文字列にコンバートする

TNFを対応する文字列にコンバートするにはRho::NdefRecord::convert_Tnf_to_stringメソッドを使用します。

 

Rho::NdefRecord.convert_Tnf_to_string(tnf)


tnfには数字が入ります。数字は下記の対応表に存在する数字になります。

 

TNF_ABSOLUTE_URI = 3
TNF_EMPTY = 0
TNF_EXTERNAL_TYPE = 4
TNF_MIME_MEDIA = 2
TNF_UNCHANGED = 6
TNF_UNKNOWN = 5
TNF_WELL_KNOWN = 1

 4. RTDを対応する文字列にコンバートする

RTDを対応する文字列にコンバートするにはRho::NdefRecord::convert_RTD_to_stringメソッドを使用します。

 

Rho::NdefRecord.convert_RTD_to_string(rtd)


rtdにはバイトコードの配列が入ります。

 

RTD_TEXT = [0x54]
RTD_URI = [0x55]
RTD_SMART_POSTER = [0x53,  0x70]
RTD_ALTERNATIVE_CARRIER = [0x61,  0x63]
RTD_HANDOVER_CARRIER = [0x48,  0x63]
RTD_HANDOVER_REQUEST = [0x48,  0x72]
RTD_HANDOVER_SELECT = [0x48,  0x73]

システム工房エムのサイトへのリンク

住所〒690-0017 島根県松江市西津田3-2-3 TEL.0852-23-8590 FAX.0852-23-8591
Copyright 2008-2010 System Maker M,All right reserved