检查Android设备上的NFC功能

时间:2012-06-17 10:06:13

标签: android android-emulator nfc avd

这是对question

的回应
Step #1: Put this in your manifest:

<uses-feature android:name="android.hardware.nfc" android:required="false" />
Step #2: Call hasSystemFeature(PackageManager.FEATURE_NFC) on PackageManager to see if NFC is available on the current device

我将API级别设置为8,步骤1没问题,但是当我写hasSystemFeature(PackageManager.FEATURE_NFC)时它表示Feature_NFC没有解析为某个字段,Feature_WIFI FEATURE_BLUETOOTH FEATURE_CAMERA就是那里的选项。 我访问了Android developer Site,但他们没有提到API级别。 另一个问题是我可以在AVD上测试NFC应用吗? 任何可以帮助我的人 感谢

2 个答案:

答案 0 :(得分:6)

确保将项目构建目标设置为至少api级别9。

在manifest.xml中包含folliwng

<uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="15" /> //If you have icecream sandwich installed.

它将确保您的应用程序也可以在sdk 8上运行

还要确保无论何时调用Gingerbread特定功能,然后将其包装到条件中 如下。

      if (Build.VERSION.SDK_INT < Build.VERSION_CODES.GINGERBREAD) {

    } else {
        if (getPackageManager()
                .hasSystemFeature(PackageManager.FEATURE_NFC)) {
            //do processing
        }
    }

进行测试您可以尝试Open NFC Android emulator

答案 1 :(得分:0)

FEATURE_NFC是从API级别9定义的,但您仍然可以使用常量值“android.hardware.nfc”。