我正在工作的NFC RFID标签读取应用程序,只需要读取NFC的ID号,并将其写入到一些非主要活动的EditText。NFC阅读只是该应用程序的数百个功能中的一个。当我在松下dl1手机上测试它时,当我第一次触摸手机的NFC标签时,手机会显示带有要处理的应用程序选项的对话框-只有2个应用程序显示“标签”和“入门列表NFC”。如果我选择入门列表NFC,我将经历注册IC卡和命名的漫长过程,最终选择当标签关闭时应自动启动的应用程序。如果我选择标签-它将在列表中显示“标签未知”注释。我的应用程序具有以下功能和过滤器:
<activity
android:name="pl.infis.spedycja.activities.LoginActivity"
android:label="@string/app_name"
android:theme="@style/infisTheme"
android:windowSoftInputMode="stateUnspecified|adjustPan" >
<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.TAG_DISCOVERED" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
</activity>
当我的应用程序运行时,当我将NFC标签靠近手机时(无论是第一次还是第二次),一些活动开始了,然后它在编辑文本中显示NFC标签ID,就这样了。附注:我尝试向非启动器活动添加过滤器,但没有响应-总是响应启动器活动
发布于 2013-05-15 03:08:25
我可能会这样做,就是设计一个支持NFC foreground dispatching的BaseActivity
类。每当它在onNewIntent()
中接收到NFC意图时,它都会检索标记的ID,并使用包含该ID值的意图启动相关的活动。
然后,我会从这个类中派生出我所有的应用程序活动。无论何时在应用程序运行时扫描NFC标签,它都会自动接收NFC意图,并将其分派到所需的活动(可以显示标签ID)。
https://stackoverflow.com/questions/16542147
复制相似问题