Data transfer betweeen two nfc capable devices without using android beam - android

I am developing an app with which I transfer a vcard between two nfc capable devices. I am able to do it if both the devices have android beam. I want to know if it is possible to transfer information from an ICS device(Having android beam) to a gingerbread device(which does not have android beam)...Thanks in advance..

Android supports two modes for operating with NFC:
P2P -> Android Beam //
Tag Reader -> "Advanced NFC Framework"
If i'm not wrong, Android Beak is supported in Gingerbread too, so you shoudn't have to face any problem exchanging data between two Android NFC devices with Beam.
The second way, is only for making operations with Tags. Android does not support card emulation officially so this is not an option for you.
Hope this helps you.

Related

Android NFC with USB-NFC-Reader

I have an Android tablet with Android 4.2. This tablet does not have NFC hardware. However I have an external USB reader: ACR 1252U, that came with an Android library. This library unfortunately only gives me basic functionality - read and write Tags. Altough this is working quite well, it is not enough...
Because for my application I need to transfer files from my Android 4.2 tablet to other NFC devices (Android smartphones). So I need to put the NFC reader into peer-to-peer mode - which it supports. But how can I achive this with my setup? There indeed is an SDK for that reader, but it's Windows only.
Is it somehow possible, to use the built-in NFC-functions from Android with the external USB reader?
Is there another library for this reader, that supports peer-to-peer communication with other NFC-devices?
Is there another Hardware that I can use, to make this work?
Edit:
The linked question does NOT solve my problem:
It is 3.5 years old. On might think, that in meantime has changed a lot.
The answer to that question (= use the Android ACS library), is part of my own question... So it can't be the answer.
Is it somehow possible, to use the built-in NFC-functions from Android with the external USB reader?
No, that's not possible. If your Android devices did not ship with NFC, there simply is no built-in NFC functionality (not even on the software side). The Android NFC API is essentially an empty stub implementation that does nothing on such a device.
Is there another library for this reader, that supports peer-to-peer communication with other NFC-devices?
The library from ACS does not prevent you from accessing the reader's peer-to-peer capabilities, so I don't see why you would want to use a different library. See section 5.9 of the API specification on how to use the reader's peer-to-peer capabilities.
I need to transfer files from my Android 4.2 tablet to other Android NFC devices
Based on that request I assume that you want to use something like Android Beam to establish some fast out-of-band channel over NFC and then transfer the (large?) files over that out-of-band channel (e.g. WiFi or Bluetooth).
In that case, you would need to re-implement the Android Beam stack (NFC peer-to-peer mode + LLCP + Simple NDEF Exchange Protocol + establishing out-of-band communication channel + transfering file over that channel)

Android beam and S beam

I know that S-beam uses Wifi-Direct to transfer large files but I want to know if there is a way to send files using Wifi-Direct in devices that only supports android beam (eg. Nexus 7) without any support for S-beam ?
Currently as per my knowledge android beam uses only Bluetooth for transfer of large files.
Basically I would like my app to give user an option to select the mode of transfer(either Bluetooth or Wifi-Direct) while sending a file using android beam.

Is it possible to transfer NFC data from one Android device to another without the 'Touch to Beam' screen?

I am trying to send NFC data from one Android device to another. I was able to do it successfully using the 'Touch to Beam' functionality. But I would like the data transfer to take place automatically as soon as both the devices are together.
I saw this question answered in StackOverflow multiple times. Unfortunately, while some say its not possible to send NFC data from one Android device to another this way, some others suggest to try "foreground-dispatching" (which the official documents say is now deprecated). I wasn't successful with "foreground dispatching" though I am not entirely sure if its due to my mistake. Almost all the questions were answered 1 year back, so I was wondering if Google changed something to achieve this. Both my devices are on Android 4.0 or later, but not 4.4.
When using NFC peer-to-peer communication (aka Android Beam) between two Android (4.0+) devices, there is no way to avoid the Beam UI. So it is not possible to transfer data without the "Touch to Beam".
Before Android Beam (effectively Android 2.3.3-2.3.7), this was possible through foreground NDEF push (which is now (a) deprecated and (b) on Android 4.0+ implemented through Beam). In that case NDEF messages where immediately transfered without the "Push to Beam" window.
Only starting with Android 4.4, there is the possibility to communicate between two Android devices over NFC without the Beam UI (actually without using Android Beam and peer-to-peer mode at all): If both devices are 4.4+, one device can use Android HCE to emulate a contactless smartcard and one device can use the reader-mode API (this only works with the reader-mode API introduced in 4.4, so both devices need to be 4.4+) to communicate with the emulated smartcard.

How can i test Android HCE on my Laptop using ADT?

is there a way to simulate an NFC transaction using HCE (Host Card Emulation) on Android 4.4 within my ADT IDE using an emulator?...are there such emulators available that support HCE?
Basically what i am trying to do is to develop an app without having to actually purchase an Android 4.4 device ? what are the options available?..any thoughts/ideas/suggestions?
Thanks in advance.
NFC is hardware specific so I believe that using just an emulator is not possible. Moreover, not all Android 4.4 devices support HCE.
In addition, if you want to simulate a transaction you will need to have a POS that sends APDU commands to your HCE service.

Communicate two Android phones with NFC without Android Beam

I am working with NFC in Android. I have done things with NFC tags and Android Beam, but I am wondering if is possible to communicate two Android phones with NFC without Android Beam.
I mean, I want to transfer some information, like a text or a URL using peer-to-peer in two Android phones, as if they were two NFC tags. I want to read and write this information in the other device, but the only way I have found to comunicate and trasfer data using P2P in Android is with Android Beam.
Is it possible?
PS. Sorry for mi english
No. It is not possible - if you want to use NFC bearer, only the SNEP/NPP over LLCP is possible (i.e. peer2peer mode).
Petr

Categories

Resources