0

I have this use-case for Android Beam. I could have tested it myself but my app is not available in Google Play yet. Here it goes:

I want to beam some content from my phone and the receiver phone does not have it. So with AAR, the app will be fetched from Google Play on the receiver phone. So far so good. So I download and login.

My question is: Once the app is downloaded will the receiver app still have the information that was beamed or should the sender initiate Beam again? Will my data in first Beam be lost? How should this be handled?

Theoretically, the onResume should be called to handle the intent.

Any thought if someone has come across such a kind of case.

Michael Roland
  • 39,663
  • 10
  • 99
  • 206
divdroid
  • 43
  • 3

1 Answers1

3

The data will be lost, unfortunately. Think of it as if the NDEF message with the AAR will have been delivered to the Play Store app. (The Play Store app will not be able to deliver it to your newly installed app.) The only solution is to Beam again.

NFC guy
  • 10,151
  • 3
  • 27
  • 58
  • It is very convincing answer. Thank you. Have you tried it yourself. IS there a way that I can avoid the second tap, this doesnt seem to be good user experience. – divdroid Aug 22 '13 at 19:39
  • Yes, agreed, not a good user experience. If you check the source code (file `packages/apps/Nfc/src/com/android/nfc/NfcDispatcher.java`, method `getAppSearchIntent()`), you will see that the Play Store app only gets the package name and nothing more. All other data from the NDEF message is lost. – NFC guy Aug 23 '13 at 19:57