我正在寻找一个例子,如何通过NFC (蓝牙)从一个Windows phone 8传输一个大文件到另一个。
我想我需要通过NFC建立连接,然后通过蓝牙进行传输,但我找不到任何示例。
发布于 2012-11-22 04:50:51
NFC不是传输文件的好格式。它速度慢,带宽低,通常在很长一段时间内都不可靠。NFC非常适合用来启动一个可以升级为蓝牙或WiFi文件传输的点击共享会话。幸运的是,这是PeerFinder做得最好的。
从本质上讲,首先你需要通过NFC找到一个新的同级。您可以通过使用TriggeredConnectionStateChanged事件或在两个设备之间订阅应用程序到应用程序的NFC消息来完成此操作。
接下来,您应该在这两个对等点之间打开一个StreamSocket。在这一点上,默认情况下通信是非结构化的。这意味着,您发送和接收一个字节流,您作为开发人员需要理解这些字节流。如果你想传输文件,那就去做吧,但是你必须把蓝牙StreamSocket的结构调整到预期的程度。这样的结构可能类似于|1字节表示版本号|1字节表示文件传输开始|4字节表示传输文件大小的int32 |指定长度的文件内容|4字节表示文件内容MD5/SHA1哈希值,用于验证文件内容|。协议会是什么样子真的取决于你,但请记住,你必须发送和接收字节。
诺基亚拥有启动NFC点击共享、打开StreamSocket并通过该套接字传输结构化消息的an end-to-end sample。它不是文件,但它将向你展示如何使用NFC,如何升级到WiFi/蓝牙,以及如何使用真实世界的版本结构化消息格式。看看诺基亚的NFC Talk项目here和here for the interesting part。
发布于 2012-11-26 08:29:50
在Build大会上有一个网络演讲,你可能会从中获得一些想法。它主要关注套接字和NFC。Windows Phone 8: Networking, Bluetooth, and NFC Proximity for Developers。有关代码,请参阅sample project。在Devcenter上还有一个用于StreamSocket的示例。
https://stackoverflow.com/questions/13500992
复制相似问题