這需要用 Dart 解碼成可讀的 JSON 問題是。我不知道它是什么,我不知道該怎么做。
{
mifare: {
identifier: [4, 119, 66, 185, 196, 77, 112],
mifareFamily: 2,
historicalBytes: []
},
ndef: {
isWritable: true,
maxSize: 492,
cachedMessage:
{records:
[{identifier: [],
typeNameFormat: 1,
type: [84],
payload: [2, 101, 110, 123, 39, 99, 109, 100, 39, 58, 39, 110, 101, 119, 95, 102, 114, 105, 101, 110, 100, 39, 44, 39, 117, 115, 101, 114, 39, 58, 39, 116, 101, 115, 116, 39, 125]}]}}}
有人知道怎么做嗎?PS:“有效載荷”應該是這樣的文本:
{'cmd':'new_friend','user':'test'}
uj5u.com熱心網友回復:
如果要將其轉換為文本字串,則需要了解 NDEF 資料格式,因為這看起來像是讀取帶有 Ndef 記錄的 NFC 卡的原始資料轉儲。
沒有多少庫只有編碼方法才有解碼方法。
所以關鍵點是:-
typeNameFormat: 1 是“眾所周知的 Ndef 格式”的代碼
type: [84] 是 Ndef 文本記錄的代碼
這將引導您規范 Ndef 文本記錄 https://github.com/haldean/ndef/blob/master/docs/NFCForum-TS-RTD_Text_1.0.pdf
然后
payload: [2, 101, 110, 123, 39, 99, 109, 100, 39, 58, 39, 110, 101, 119, 95, 102, 114, 105, 101, 110, 100, 39, 44, 39, 117, 115, 101, 114, 39, 58, 39, 116, 101, 115, 116, 39, 125]
這
2 語言識別符號長度為 2 個位元組
101 是美國 ASCII 字符的十進制代碼 e
110 是美國 ASCII 字符的十進制代碼 n
所以文本是英文的
123 是美國 ASCII 字符的十進制代碼 {
等等。
應該說這不是 JSON 而是 Javascript 中 Javascript 物件的轉儲
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/350639.html
