Javascript Windows Phone写入NFC标记
我正在尝试使用Windows Phone 8.1上的ProximityDevice类写入/读取一些NFC标记。这是写入标记的代码Javascript Windows Phone写入NFC标记,javascript,nfc,windows-phone-8.1,proximity,Javascript,Nfc,Windows Phone 8.1,Proximity,我正在尝试使用Windows Phone 8.1上的ProximityDevice类写入/读取一些NFC标记。这是写入标记的代码 var dataWriter = new Windows.Storage.Streams.DataWriter(); dataWriter.unicodeEncoding = Windows.Storage.Streams.UnicodeEncoding.utf16LE; dataWriter.writeString("test"); var pubId = prox
var dataWriter = new Windows.Storage.Streams.DataWriter();
dataWriter.unicodeEncoding = Windows.Storage.Streams.UnicodeEncoding.utf16LE;
dataWriter.writeString("test");
var pubId = proximityDevice.publishBinaryMessage
"Windows:WriteTag.Sample",
dataWriter.detachBuffer(),
proximityWriteTagMessageTransmitCallback);
在写了这个标签之后,我读了它,这个标签看起来很成功。当我这样做时,接收到的数据只是字符串的第一个字符(在本例中为“t”)。我用NFC Interactitor检查了标签,它报告标签的可写大小为137字节,消息大小为17字节,所以空间似乎不是问题
我还用NFC Launch it测试了标签,它工作正常,所以我不知道问题出在哪里。任何帮助都将不胜感激
提前谢谢。我已经解决了这个问题。将自定义文本写入标记需要UTF-8编码。我改变了
dataWriter.unicodeEncoding = Windows.Storage.Streams.UnicodeEncoding.utf16LE;
到
现在,数据被写入到标记中,并且可以正确地从标记中检索数据
dataWriter.unicodeEncoding = Windows.Storage.Streams.UnicodeEncoding.utf8;