适用于NFC技术过滤器的Android Studio中不支持的类型技术列表

时间:2016-06-13 02:54:30

标签: android xml android-studio nfc intentfilter

在Eclipse中,这个tech-filter.xml工作正常, 但在Android Studio中,它在编译时会出错:

Error:Execution failed for task ':app:mergeDebugResources'. > Path-to-project\app\src\main\res\values\tech_filter.xml: Error: Unsupported type 'tech-list'

高科技-filter.xml:

<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <tech-list>
        <tech>android.nfc.tech.IsoDep</tech>
    </tech-list>
</resources>

的AndroidManifest.xml:

<activity android:name=".MainActivity">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    <intent-filter>
        <action android:name="android.nfc.action.TECH_DISCOVERED"/>
    </intent-filter>
    <meta-data
        android:name="android.nfc.action.TECH_DISCOVERED"
        android:resource="values/tech_filter" />
</activity>

有没有人遇到过这个问题?这有什么解决方案吗?

1 个答案:

答案 0 :(得分:4)

技术列表不是价值资源。您需要将其置于res/xml/之下。因此,tech_filter.xml的路径必须是

app/src/main/res/xml/tech_filter.xml

并且它的清单条目如下所示:

<meta-data
    android:name="android.nfc.action.TECH_DISCOVERED"
    android:resource="@xml/tech_filter" />