WP8 ProximityDevice NFC近场通信浅解析
不得不说Windows phone 改为NT内核之后相当的给力,ProximityDevice就是内核里面的东西,在Windows命名空间下。
Proximity cannot be tested using Windows Phone Emulator. You should test proximity using a Windows Phone 8 device.
Bluetooth cannot be tested using Windows Phone Emulator.
ProximityDevice class
类主要使用的成员:
Events:
DeviceArrived
DeviceDeparted | Occurs when a device enters the proximate range.
Occurs when a device leaves the proximate range.
|
Methods
| Creates an instance of a ProximityDevice class and activates the specified proximity device interface.
Creates an instance of a ProximityDevice class and activates the default proximity provider.
Publishes a message to subscribers of the specified message type.
Creates a subscription for a specified message type.
|
该类即封装了nfc设备的操作,简化了流程。
在使用时一端A的应用需要调用subscribeForMessage这个函数进行注册,然后B调用PublishMessage这个方法进行消息的传递。实例代码如下:
其中需要注意的一点是注册和发布消息参数中字符串的格式必须为"Windows.XXXXX"否则会被系统认为是无效参数
调用比较简单,由于目前模拟器并不支持NFC的测试,所以无法进一步进行研究。但从文档来看,系统对其进行了良好的封装,调用也比较简洁。
项目中应用解析:
碰一下加好友
1、对需求的分析:
碰一下加好友及当两台设备同时开启到这个界面时,会相互发送自己的信息。
2、需求的分解:
从对象角度来说 这个类主要实现如下功能:
a.初始化时调用ProximityDevice.GetDefault()取得底层NFC设备
b.当发现有其他设备进入到有效区域内则对自己的个人信息进行广播
c.检测到其它设备的消息后触发通知此类外的对象,发现好友
另外:为了此类使用的安全,我们需要在dispose方法中添加取消注册的操作
如此便可实现碰一碰的需求,上面分析为需求的主要功能点,具体实现参照工程中的相应代码。
对于wp8这个新平台,如有需要交流的地方欢迎加入
QQ群: 182659848
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库