问题描述
无法从 tizen NFC 模拟器获取 NDEFRecordsText.text。我只得到前三个字符。
是模拟器的错误还是我做错了什么?
示例代码
var setPeerDetect = {
/* When an NFC tag is detected */
onattach: function(nfcPeer) {
nfcPeer.setReceivendEFListener(function(ndefMessage){
console.log(ndefMessage.records[0].text);
return true;
});
},/* When an NFC tag becomes unavailable */
ondetach: function() {
console.log('NFC Peer unavailable');
}
};
这里,ndefMessage.records[0].text 只返回有效载荷的前三个字符。另外我如何解码通过模拟器发送的实际有效载荷,目前我从 ndefRecord 中得到类似 [5,121,0] 作为有效载荷
解决方法
我注意到您似乎使用了一些定义为 here 的 NDEFRecord 接口的自定义字段。 'text' 成员未在文档中定义。要访问消息的有效负载,您只需要使用:
console.log(ndefMessage.records[0].payload);
我在已安装的 Tizen Studio 4.1 中提供的 Tizen 6.0 可穿戴模拟器上迅速确认了这一点。