【问题标题】:How to read NFC tags to prevent system dialogs NFC starter list and Tags being displayed如何读取 NFC 标签以防止显示系统对话框 NFC 起始列表和标签
【发布时间】:2013-05-14 11:36:55
【问题描述】:

我正在开发 NFC RFID 标签读取应用程序,该应用程序只需要读取 NFC ID 号并将其写入 EditText 中的一些非主要活动。 NFC 读取只是该应用程序中的数百个功能之一。 当我在 Panasonic dl1 手机上测试它时,当我第一次触摸手机的 NFC 标签时,手机会显示我选择要处理的应用程序的对话框 - 只有 2 个应用程序显示“标签”和“NFC 入门列表”。如果我选择 Starter List 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,仅此而已? PS我尝试向非启动器活动添加过滤器,但它没有响应 - 总是响应启动器活动

【问题讨论】:

    标签: android tags nfc rfid


    【解决方案1】:

    我可能会这样做,是设计一个启用NFC foreground dispatchingBaseActivity 类。每当它在onNewIntent() 中接收到 NFC 意图时,它都会检索标签的 ID,并使用包含 ID 值的意图启动相关活动。

    然后我会从这个类派生我所有的应用程序活动。每当在应用程序运行时扫描 NFC 标签时,它会自动接收 NFC Intent 并将其分派到所需的活动(可以显示标签 ID)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-19
      • 2015-01-06
      • 1970-01-01
      • 2020-09-26
      • 1970-01-01
      相关资源
      最近更新 更多