当前位置: 首页 > 知识库问答 >
问题:

检测活动是正常启动还是在读取NFC标签后启动(无任何提示)

乐正洲
2023-03-14

如果使用Android应用程序记录(AAR),则需要执行意图操作

android.intent.action.MAIN

所以我不知道这是正常发射还是nfc发射。

我需要在我的活动中做稍微不同的事情,无论活动是正常启动还是在nfc标签阅读之后启动。如果手机上有另一个应用具有相同的目的过滤器,我也不想显示选择应用的提示,例如:

<intent-filter>
    <action android:name="android.nfc.action.NDEF_DISCOVERED"/>
    <category android:name="android.intent.category.DEFAULT"/>
    <data android:mimeType="text/plain" />
</intent-filter>

共有2个答案

纪畅
2023-03-14

[编辑]:

检查您意图中的有效负载:额外标签或额外消息

如果意图来自NFC事件,则将始终设置此额外设置。

[过时]:

使用getIntent()并检查其操作

卞成荫
2023-03-14

如果您将AAR not作为NDEF消息的第一条记录(所以是第二条记录或更高版本),并且在清单中为NDEF消息的第一条记录设置了NDEF_发现的意图过滤器,那么当从标记启动时,您的应用程序将获得NDEF_发现的意图。意图将包含一个额外的标签句柄和完整的NDEF消息。

如果AAR是第一条记录,则会向应用程序发送一个ACTION_MAIN intent。此意向不包含任何附加标签或NDEF信息。

为了防止你的应用程序在扫描其他NFC标签时出现,请确保第一条NDEF记录的类型是你的应用程序独有的,并对其进行筛选。外部类型是专门为此目的设计的。(由于标签中的AAR,在扫描时不会显示其他应用。)

 类似资料:
  • 我有一个主要活动,它在列表中显示一些数据,还有一个nfc asynctask,它从卡中读取一些数据。我想实现以下行为: 如果关闭应用程序并在手机附近放置卡,则应启动主要活动,同时启动nfc任务。异步任务的结果应显示在对话框中 我目前的方法总是从主要活动开始。这意味着,有时,我的主要活动有多个实例,当用户点击后退按钮时,会打开另一个活动实例,而不是切换到主菜单。 清单

  • 我正在开发一个运行在PC上的Java测试控制器应用程序。它有: 在android手机上安装应用程序: 怎么做有什么想法吗?

  • 我在这里找到了一些关于使用Android阅读NFC标签的最近帖子。我得到的结论是,执行NFC读取动作会触发一个分离的意图。 那么第一个问题:在我的清单中列出意图过滤器是否必要? 我认为这是没有必要的,因为我不想推出我的应用程序通过NFC标签事件,对吗? 第二个问题:我如何保持我的NFC阅读逻辑/功能与我的app/活动相关? 例如,在iOS中,在VC中需要时有一个简单的NFC会话。

  • 我有一个阅读NFC类型A标签(非NDEF)的活动。我用Android手机在开发者模式下运行Android Studio。 该项目在开发者Android手机上正确启动应用程序,并在手机上打开NFC。当我轻触手机上的NFC非接触式卡时,手机会检测到NFC卡,但会显示手机上安装的其他NFC读卡器应用程序的选项列表,而不是将意图传递给前台应用程序。 如何让前台项目的应用程序接收NFC意图,而不是弹出建议列

  • 问题内容: 在添加异步任务之前,我已经对代码进行了一些更改,我的应用程序可以正常运行其远程服务器上的身份验证用户名和密码,但是在登录成功消息消失后​​无法启动其他活动。有人建议我现在添加一个异步任务,但是我输入正确的用户名和密码后它将停止工作。当我输入错误的用户名和密码时,其工作正常将显示错误的用户名密码消息。如果有人能够知道会出现什么错误,请帮助我。 码- 日志猫 QuestionnActivi

  • 我已经搜索了这个错误,并找到了许多解决方案,但我无法解决这个问题,因为我是Android的初学者 舱单在下面 安装应用程序后,它第一次工作,但当我们关闭并重新打开时,它崩溃了,不幸的是,应用程序已经关闭,你有任何想法,它将非常感谢:) 谢了!