読者です 読者をやめる 読者になる 読者になる

がりらぼ

WindowsRuntimeの応援ブログ

WinRT:NFCで近距離無線通信するには

WindowsRuntime

ProximityDevice

WindowsRuntimeのNFCについては、ProximityDeviceAPIを使います。

ProximityDevice.GetDefaultメソッドNFC通信できるデバイスを取得します。

ProximityDevice device= ProximityDevice.GetDefault();

近接センサーにデバイスが近づいたときは、DeviceArivedイベントが、近接センサーからデバイスが離れたときはDeviceDepartedイベントが発生します。

DeviceArrivedイベントとDeviceDepartedイベントの登録を行い、各イベントに登録したメソッド内ではデバイスIDとメッセージを表示します。

device.DeviceArrived +=Device_DeviceArrived;
device.DeviceDeparted+=Device_DeviceDeparted;
private async void Device_DeviceArrived(ProximityDevice sender)
{
await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, async() =>
{
MessageDialog dialog = new MessageDialog("DeviceArrived " + sender.DeviceId);
await dialog.ShowAsync();
});

}

private async void Device_DeviceDeparted(ProximityDevice sender)
{
await Dispatcher.RunAsync(CoreDispatcherPriority.Normal,async()=>
{
MessageDialog dialog = new MessageDialog("DeviceDeparted " + sender.DeviceId);
await dialog.ShowAsync();
});

}

実行するときは、マニフェストファイルの、必須条件タブの「NFC」、機能タブの「近接」にチェックを入れます。

f:id:garicchi:20141210140034p:plain