Requesting NFC permissions
As Android developers, we are accustomed to using the manifest file to request permission to use a specific device feature, and NFC is no exception to this.
Getting ready
Make sure you have an NFC-enabled Android device or a virtual test environment—refer to the Testing your app all together recipe.
How to do it…
We will start by creating an Android project where we will request the correct permissions, as shown in the following steps:
Open Eclipse and create a new Android application project named
NfcBookCh1Example1
and a package namednfcbook.ch1.example1
, as shown in the following screenshot:Make sure you select API 10: Android 2.3.3 (GingerBread) in the Minimum Required SDK field.
When prompted to create an activity, select Blank Activity.
Open the
AndroidManifest.xml
file located in the project's root and add the following code just before the application node:<uses-permission android:name="android.permission.NFC"/>
How it works…
Android requires every app to request permissions from the user to allow the application to perform restricted actions. Examples of restricted actions include access to users' current location, permission to send an SMS without user interaction permission to, read contacts, and many others. This is done in the AndroidManifest.xml
file using the <uses-permission/>
node. Permissions are granted by the user when the application is installed. Requesting unnecessary permissions may cause users to not trust the application and refrain from installation. If we do not request permissions in the manifest and try to do restricted actions, an exception is thrown and the application will not work correctly.