有没有人知道如何做到这一点:
比方说,我们有一个包含 3 个 Activity 的应用。 Activity 2 有按钮,可打开简单的 Activity 3 (onClick),而 Activity 3 显示类似“Touch NFC”的内容。当我触摸 NFC 标签时,我还需要 Activity 3 立即完成。
有谁知道我该怎么做
谢谢你:)
最佳答案
首先,您必须编辑 AndroidManifest.xml。你应该添加
<uses-permission android:name="android.permission.NFC" />
<uses-sdk android:minSdkVersion="10"/>
<uses-feature android:name="android.hardware.nfc" android:required="true" />
确保您的应用具有 NFC 权限,并且不会安装在缺少 NFC 硬件的设备上。
接下来,您应该添加 Intent 过滤器,以便在检测到标签后调用您的应用:
<intent-filter>
<action android:name="android.nfc.action.NDEF_DISCOVERED"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:mimeType="text/plain" />
</intent-filter>
这是一个简单的示例,它不一定适用于存储在其上的所有类型的标签和数据。最终,您将不得不进行自己的研究。
现在您只需处理在您的 Activity 中发现的标签。它看起来类似于
public void onResume() {
super.onResume();
if (NfcAdapter.ACTION_NDEF_DISCOVERED.equals(getIntent().getAction()))
activity.finish() //you wanted to close an activity, right?
你在这里放什么取决于你想做什么。稍微戳一下问题,尝试一下,然后做你需要做的事。
旁注 - 请阅读 SO FAQ 和 https://stackoverflow.com/questions/how-to-ask .第一段要求你做功课。不要指望社区为您编写完整的代码,而您却懒得将问题输入到 google 中。此外,如果这是家庭作业 - 请将其标记为一个。
进一步阅读:http://developer.android.com/guide/topics/connectivity/nfc/nfc.html - 在这里您可以找到完成任务所需的所有信息。
关于java - Android on NFC 读取关闭 Activity (不是主要 Activity ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10848134/