Windows Phone Write NFC Tag



我正在尝试使用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 = proximityDevice.publishBinaryMessage
         "Windows:WriteTag.Sample", 
          dataWriter.detachBuffer(),
          proximityWriteTagMessageTransmitCallback);

写完标签后,看起来很成功,我读了它。当我这样做时,接收到的数据只是字符串的第一个字符(在本例中为"t")。我用NFC交互器检查了标签,它报告标签的可写大小为137字节,消息大小为17字节,因此空间似乎不是问题。

我也用NFC测试了标签,启动它,它工作得很好,所以我对问题所在感到茫然。如有任何帮助,不胜感激。

我解决了这个问题。事实证明,将自定义文本写入标记需要UTF-8编码。我改变…

dataWriter.unicodeEncoding = Windows.Storage.Streams.UnicodeEncoding.utf16LE;

dataWriter.unicodeEncoding = Windows.Storage.Streams.UnicodeEncoding.utf8;

现在数据被写入标记,并且可以正确地从标记中检索数据。

相关内容

  • 没有找到相关文章

最新更新