2013-07-29 22 views
0

我的工作中,我創建一個本地.csv文件的一個項目,我想使用NFC來發送該文件。如何發送使用NFC文件中的Android觸摸模式

到目前爲止,這是我在我的活動代碼。

public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     NfcAdapter nfcAdapter = NfcAdapter.getDefaultAdapter(this); 
     if (nfcAdapter == null) {   
     return; // NFC not available on this device 
     } 
     Uri uri1; 
     File root ; 
     root= Environment.getExternalStorageDirectory(); 
     //assign the file path to the uri 
     uri1=Uri.fromFile(new File(root, "myFile.csv")); 
     nfcAdapter.setBeamPushUris(new Uri[] {uri1}, this); 
} 

不幸的是我目前沒有其他設備來檢查它,但我會在不久的將來這樣做。我的問題是,如果兩個設備在一起時我怎麼能將文件發送到其他設備?通常android有這些功能的監聽器。 NFC有什麼相似之處嗎?

我測試4.2.2應用在Nexus 4

回答

0

從另一個answer

「對於Android Beam功能,您需要提供使用setBeamPushUris()的URI與數據文件(或setBeamPushUrisCallback()如果數據是不固定的)。對於S型,我不知道可以使用任何的API。AFAICT,S型僅與圖片,視頻和音樂內置的應用程序的工作原理「。

你可以試試this

0

如果您的目的是通過Android Beam「獨自」傳輸內容(無論大小是否大),尤其是NFC,那麼我認爲沒有任何建議的方法會按照您的要求進行操作。這些都是輔助方法,可通過藍牙或WiFi直接替代機制實現更快速的傳輸,從而提供更好的用戶體驗。根據Android開發文檔,如果設備不支持藍牙或WiFI等替代傳輸,則調用這些方法什麼也不做。因此,考慮到你提到的具體問題,你最好採取其他途徑,如setNdefPushMessage()或setNdefPushMessageCallback()如果使用NFC是必要的。