非常に単純な再現アプリ - Visual Studio のテンプレートから新しい Windows Phone 8 C# アプリを作成し、コンテンツ パネルに画像を追加し、次に示すように NDEF 近接メッセージをサブスクライブしました。
// Constructor
public MainPage()
{
InitializeComponent();
ProximityDevice device = ProximityDevice.GetDefault();
if (device != null)
{
device.SubscribeForMessage("NDEF", handler);
}
}
private void handler(ProximityDevice sender, ProximityMessage message)
{
Debug.WriteLine("Received message");
Dispatcher.BeginInvoke(() =>
{
myImage.Source = new BitmapImage(new Uri("Assets/test.png", UriKind.Relative));
});
}
最初のイベントは正常に動作します (画像ソースが正常に変更されました)。ただし、このイベントが発生すると、別の NFC タグに触れても発生しなくなります。画像ソースを更新する呼び出しを削除すると、タッチごとに起動します。
なぜここで相互作用が起こるのか理解できません。私がテストしている電話は Nokia Lumia 620 です。