5

In xPrivacy, I can see that the Play Store asks for getNfcAdapter.

What does it need it for?

11

The Play Store app has two main features regarding NFC, both of which require the NFC permission.

  1. It registers intent filters such that when you scan an NFC tag with a market:// link or a link to play.google.com, you get the Play Store app instead of a browser, the same way you would when you click such a link. This doesn't require calling the getNfcAdapter function, but it does use the same permission.

  2. It uses Android Beam. If you look at an app's page in the Play Store app, then bring another Android device to NFC range, you can send that app link to the other device.

-1

[...]If it finds an AAR, it starts the application based on the package name inside the AAR. If the application is not present on the device, Google Play is launched to download the application. from:http://developer.android.com/guide/topics/connectivity/nfc/nfc.html#aar

So for example, Stores and companys can use a NFC tag to make it easy to install their APPS when you put your mobile on it and so on..

-The second and more likely possibility is that the Google Play Store checks if you can download compatible NFC Apps. The same way as it checks your Android Version.

Here is a dev sight on it:https://stackoverflow.com/questions/20063853/disable-nfc-compatibility-check-in-android-manifest

  • 1
    The functionality you describe is part of Android itself, not the Play Store app. The Play Store app isn't responsible for launching apps from AAR in tags. – Dan Hulme May 23 '14 at 8:26
  • Added second possibility... – Eddy May 23 '14 at 8:39
  • 2
    Your second guess doesn't make much sense. It would be far slower to check that way than to simply look in the system properties, like it does for all other hardware features. After all, it doesn't ask for the Bluetooth permission so it can tell whether your phone is compatible with Bluetooth apps. – Dan Hulme May 23 '14 at 8:47
  • Your first guess isn't even conclusive: if Google Play is launched AFTER tag evaluation, why would it itself need NFC capabilities for that? Counter-example: Tasker can e.g. launch an app when it detects you are in a certain location. Would the launched app require location access for that? No. Sorry to say so: but there's nothing left from your answer that would make any sense. – Izzy May 23 '14 at 12:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.