我正在为 Windows Phone 开发一个 NFC 应用程序,我想订阅任何二进制消息。我怎样才能实现这样的功能nfc.SubscribeForAnyMessage( HandleNFCMessage);
?目前我只能订阅特定的消息类型,例如nfc.SubscribeForMessage("NDEF", HandleNFCMessage);
谢谢,
能。
我正在为 Windows Phone 开发一个 NFC 应用程序,我想订阅任何二进制消息。我怎样才能实现这样的功能nfc.SubscribeForAnyMessage( HandleNFCMessage);
?目前我只能订阅特定的消息类型,例如nfc.SubscribeForMessage("NDEF", HandleNFCMessage);
谢谢,
能。
您必须将 MessageType 指定为订阅消息的唯一方法是您已经提到的方法。要查看可以指定的 MessageTypes,请参阅 PublishBinaryMessage 的文档:http: //msdn.microsoft.com/en-us/library/windows/apps/hh701129.aspx
也许如果您将“Windows”指定为 MessageType,您将获得所有二进制消息,但我现在无法测试。您始终可以为您的应用订阅多个 MessageType。
什么是“二进制 NFC”消息?在 WP8/Win8 proxmity 框架内处理的所有消息都必须具有消息类型。在这种情况下,“二进制消息”只是具有字节数组 (IBuffer) 有效负载但仍具有消息类型的消息。
我不相信可以订阅 NFC 消息的通配符。您绝对可以注册一些基本类型的 MessageType(如 NDEF 等),但每个应用程序都可以声明自己的自定义消息类型,如不会被通配符捕获的 Windows.MyApp.MyMessage。
你到底想做什么?如果您只是想知道 NFC 标签何时可以覆盖它,请考虑使用DeviceArrived和DeviceDeparted事件。
Windows Phone 8 仅支持“NDEF”格式的标签。 http://www.developer.nokia.com/Community/Wiki/Use_NFC_tags_with_Windows_Phone_8