2013-07-05 6 views
1

하나의 Android 기기에서 다른 기기로 NDEF 메시지를 보내려고합니다. 태그에 글을 쓰지 않고 근처의 기기로 메시지를 보냅니다.Xamarin을 사용하여 Android 기기에서 NDEF 메시지 보내기

나는 안드로이드 응용 프로그램을 개발하기 위해 Xamarin.Android을 사용하고 있는데 나는이 같은 메시지를 작성 :

NdefRecord uriRecord = NdefRecord.CreateUri("http://myURL"); 
    NdefMessage message = new NdefMessage(new[] { uriRecord }); 

지금 주변 장치가 검색 될 때 메시지를 보내려하지만 나도 몰라 그것이 어떻게 이루어 졌는지. Xamarin의 설명서가 완전하지 않아 Android 개발에 익숙하지 않습니다.

누구든지 나를 도와 주거나 간단한 예를 보여줄 수 있습니까?

+1

Android 설명서를 참조하십시오. 대부분의 경우 Xamarin.Android에 거의 직접 적용됩니다. Listener와 같은 사소한 변경은 종종 Xamarin.Android의 Events이며 일부 메소드는 Properties로 대체됩니다. – Cheesebaron

답변

2

알아 냈습니다.

  1. 주요 활동은 NfcAdapter.ICreateNdefMessageCallbackNfcAdapter.IOnNdefPushCompleteCallback 인터페이스를 구현해야합니다.
  2. CreateNdefMessageOnNdefPushComplete 메소드를 구현하십시오.
  3. 주요 활동의 OnCreate 방법에서 NfcAdapterSetNdefPushMessageCallbackSetOnNdefPushCompleteCallback 방법을 호출하십시오.
public class Activity1 : Activity, NfcAdapter.ICreateNdefMessageCallback, NfcAdapter.IOnNdefPushCompleteCallback 
{ 
    protected override void OnCreate(Bundle bundle) 
    { 
     base.OnCreate(bundle); 

     ... 

     NfcAdapter adapter = NfcAdapter.GetDefaultAdapter(this); 
     adapter.SetNdefPushMessageCallback(this, this); 
     adapter.SetOnNdefPushCompleteCallback(this, this);   
    } 

    public NdefMessage CreateNdefMessage(NfcEvent e) 
    { 
     NdefRecord uriRecord = NdefRecord.CreateUri("http://myURL"); 
     NdefMessage message = new NdefMessage(new[] { uriRecord }); 
     return message; 
    } 

    public void OnNdefPushComplete(NfcEvent e) 
    { 
     //throw new NotImplementedException(); 
    } 
} 
+0

구현하기가 어렵습니다. 나는 똑같은 일을하는 것을보고있다. 셀 신호가없는 NFC의 다른 Android 기기로 메시지 보내기 – sleath

+0

IOS를 사용해 보셨나요? – sleath

관련 문제