Indicating that your app uses NFC
This step isn't required, but it is always good practice to specify the features used in our app manifest file—if it is indeed a required feature for our application to work correctly. Google Play Store uses this information to filter the apps visible to users based on their device's specifications. Users with incompatible devices will be able to install the application if we don't specify this, and we don't want that. We don't want users to get frustrated with a non-working application and give us negative feedback.
How to do it…
We are going to continue adding functionality to the previously created project by declaring the features required by our application in the manifest as follows:
Open the
NfcBookCh1Example1
project created in the previous recipe.Open the
AndroidManifest.xml
file located in the project root and add the following code just before the application node. Since NFC is a required feature in our application, we should also set the required attribute totrue
, as shown in the following line of code:<uses-feature android:name="android.hardware.nfc" android:required="true" />
How it works…
The Android market uses this information in the manifest to filter the apps visible to the users. This way, if your device doesn't support a required feature of an app, there's no need for that app to appear listed; it will still be listed on the website but we cannot install it since it's incompatible. This application node is not required, but it's a good idea to place it. Otherwise, the user will be disappointed with the app—it will probably just crash or show an an error occurred!
message. Users don't like that, and this results in a bad rating.
An alternative is to have multiple approaches for the same result. For example, if the user's device isn't NFC enabled, use a QR code instead (when applicable).