标签: ndef

一个 NFC 标签上的 2 条 NDEF 消息/记录 - Android

有没有人尝试过 Android 默认行为如何,当在 NFC 标签上保存 2 条 NDEF 记录时,一个指向具有应用程序 .apk 的 URL,而第二个具有应用程序专有数据?

用例如下:当用户尚未安装应用程序时,设备启动 Google Play 或网络浏览器,用户可以下载应用程序。一旦用户安装了应用程序,它就会处理标签内容。两者都单独工作,但我没有在一个 NDEF 中尝试过 2 条 NDEF 消息或 2 条记录。有 2 条 NDEF 记录的经验吗?我可以自己尝试,但我想节省时间。

android nfc ndef

4
推荐指数
1
解决办法
3048
查看次数

将NuGet ndef库添加到windows phone 8项目中

因此,我尝试在Visual Studio 2012中为Windows Phone 8应用程序添加NDEF库以用于邻近应用程序.在Package Manager我检查Allow NuGet to download missing packages during buildSolution Explorer我选择Enable NuGet Package Restore.

到目前为止这么好,但是当我尝试安装软件包时,我收到以下错误:

无法安装包' NdefLibrary 0.9.0.1 '.您正在尝试将此软件包安装到以" WindowsPhone,Version = v8.0 "为目标的项目中,但该软件包不包含与该框架兼容的任何程序集引用.有关更多信息,请与软件包作者联系.

在此输入图像描述

nfc nuget visual-studio-2012 windows-phone-8 ndef

4
推荐指数
1
解决办法
2013
查看次数

NFC与NDEF之间的关系是什么?

NFC和NDEF之间究竟有什么关系?NFC设备是否总是必须有NDEF格式的数据?或者是否有可能拥有NFC而不是NDEF(虽然我认为反之亦然是不可能的?)?空的NFC卡会是什么样的?它仍然有NDEF头信息但没有有效载荷吗?或者标签是否可以完全为空,也就是说,没有任何标题信息?在这种情况下,这仍然可以通过Android手机或读卡器检测到吗?究竟什么使标签被读者检测到?

android nfc ndef

4
推荐指数
1
解决办法
4567
查看次数

Android NFC在启动应用程序时传递单个参数

我想使用NFC标签启动应用程序.我使用Android应用程序记录(AAR)使用Android应用程序记录(AAR),使用NFC标签启动Android应用程序,使用额外数据或使用NDEF_DISCOVERED/ TECH_DISCOVEREDintent过滤器.但是,在通过NFC事件启动时,如何将NFC标签(例如某些文本)中的数据传递给我的活动?

我已经阅读了NFC基础知识,但据我所知,它似乎想要实现一种读取标签的机制,当我真的不想在标签打开应用程序后重新读取标签,但是相反,我只想要同时传入的数据.

此外,这些机制似乎允许应用程序在标记启动后读取标记.换句话说,我担心如果有人在应用程序打开后再点击标签,那么标签将再次被读取(这是我想要的).

其次,我如何创建这样的NDEF消息?

tags android nfc ndef android-applicationrecord

4
推荐指数
1
解决办法
3344
查看次数

NFC标签和NFC卡是同一个东西吗?

NFC标签和NFC卡是同一个东西吗?Android 文档提到了两者。读取简单标签时显示“NFC 标签”,但随后在HCE 文档中显示“NFC 卡” 。我可以假设它们是相同的吗?

android rfid nfc ndef hce

4
推荐指数
1
解决办法
2897
查看次数

Android Kotlin - 如何在 Activity 中读取 NFC 标签

我在这里找到了一些最近关于使用 Android 读取 NFC 标签的帖子。我得到的结论是,执行 NFC 读取操作会触发一个单独的意图。

我想要实现的是,只有我当前的活动是以文本/纯格式从 NFC 标签读取 NDEF 消息。

所以第一个问题:是否有必要在我的清单中列出意图过滤器?

<intent-filter>
<action android:name="android.nfc.action.NDEF_DISCOVERED" />

<category android:name="android.intent.category.DEFAULT" />

<data android:mimeType="text/plain" />
Run Code Online (Sandbox Code Playgroud)

我认为这是没有必要的,因为我不想通过NFC 标签事件启动我的应用程序,对吗?

第二个问题:如何保持 NFC 读取逻辑/功能与我的应用程序/活动相关?

<uses-permission android:name="android.permission.NFC" />
<uses-feature android:name="android.hardware.nfc" android:required="true" />
Run Code Online (Sandbox Code Playgroud)

我转到当前的 Activity 并在 Create 时初始化 NFC 适配器:

mNfcAdapter = NfcAdapter.getDefaultAdapter(this)
Run Code Online (Sandbox Code Playgroud)

读取 nfc 标签 NDEF 消息的下一步是什么?在调度前台发现与意图相关的内容:

 @Override
protected void onNewIntent(Intent intent) { 

    handleIntent(intent);
}
Run Code Online (Sandbox Code Playgroud)

如果有人有一个想法/示例(Kotlin)如何从活动中读取 NFC 标签而不需要启动/发送 NFC 操作之类的东西,那就太好了。

例如,在 iOS 中,当 VC 需要时,有一个简单的 NFC 会话。

android nfc kotlin ndef

4
推荐指数
1
解决办法
6491
查看次数

Android NFC-ndef.writeNdefMessage()引发IOException并清除标签数据

我的应用程序使用前台分派系统允许用户点击其NFC标签,以便对该标签执行读后写操作。

如果用户正确敲击标签(即,将其在手机上的正确位置敲击并保持足够长的连接时间),则效果很好,但是如果用户过早地物理移除标签,则会ndef.writeNdefMessage(...)抛出IOException。

这意味着写操作失败,这很公平。但是真正的问题是,相同的失败操作也会从标记中删除整个ndef格式/消息!

我的代码是围绕Advanced NFC的代码片段构建的Android开发人员页面(不幸的是,指向ForegroundDispatch示例链接似乎已断开,并且没有此类示例项目可导入Android Studio)。

步骤1.这是用户首次点击其NFC标签但将其移得过早时的logcat / stacktrace输出:

03-28 20:15:18.589 21278-21278/com.example.exampleapp E/NfcTestActivity: Tag error
java.io.IOException
    at android.nfc.tech.Ndef.writeNdefMessage(Ndef.java:320)
    at com.example.exampleapp.NfcTestActivity.onNewIntent(NfcTestActivity.java:170)
    at android.app.Instrumentation.callActivityOnNewIntent(Instrumentation.java:1224)
    at android.app.ActivityThread.deliverNewIntents(ActivityThread.java:2946)
    at android.app.ActivityThread.performNewIntents(ActivityThread.java:2959)
    at android.app.ActivityThread.handleNewIntent(ActivityThread.java:2968)
    at android.app.ActivityThread.access$1700(ActivityThread.java:181)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1554)
    at android.os.Handler.dispatchMessage(Handler.java:102)
    at android.os.Looper.loop(Looper.java:145)
    at android.app.ActivityThread.main(ActivityThread.java:6145)
    at java.lang.reflect.Method.invoke(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:372)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194)
03-28 20:15:18.599 1481-17792/? E/SecNfcJni: nfaConnectionCallback: NFA_SELECT_RESULT_EVT error: status = 3
03-28 20:15:18.599 1481-1502/? E/SecNfcJni: reSelect: tag is …
Run Code Online (Sandbox Code Playgroud)

tags android nfc mifare ndef

3
推荐指数
1
解决办法
2311
查看次数

如何使用与 Android 兼容的 C# 以 NDEF 格式读取和写入 NFC 标签?

我正在使用Mifare Ultralight C标签并向它们写入 NDEF 格式的数据。我正在使用NDEF-NFC 库为我的 NDEF 消息创建原始字节。我的 NDEF 消息是

var spRecord = new NdefTextRecord {
        Text = "1",
        LanguageCode = "en"
};
var msg = new NdefMessage { spRecord };
Run Code Online (Sandbox Code Playgroud)

我得到的输出是D1 01 04 54 02 65 6E 31(十六进制)。如果我按原样将此字节数组写入标签:

  • 从标签读取并使用相同的 NDEF-NFC 库后,我可以转换回所需的 NDEF 消息。
  • Android 应用程序无法识别 NDEF 消息。我尝试了 Android 的NFC 工具

按照使用 ACR122U 作为 Reader/Writer 在 Windows 窗体应用程序 C# 中将 Ndef 写入 NFC 标签中的建议,我修改了我的字节数组以写入而不是库生成的原始字节数组。03 08 D1 01 04 54 …

c# format wpf nfc ndef

3
推荐指数
1
解决办法
3648
查看次数

使用低级 NFC 通信方法将 NDEF 数据写入 NTAG216 标签

我已经通过低级通信方法实现了与 NTAG216 交互的代码(遵循NTAG212 Mifare Ultralight with Authentication和 NTAG216 的数据表)。

到目前为止我取得的成就:

  • 如果未设置或新标签/空白标签,请在 NTAG216 上设置密码写保护。
  • 如果已设置密码,则使用 PWD_AUTH 并比较 PACK 进行身份验证。
  • 读取数据。
  • 写入/覆盖数据。

到目前为止我还不能做的事情:

  • 检测我在其他应用程序中写入标签的 NDEF 消息。换句话说,我可以使用writePage()method写入标签,也可以使用readPage(). 但是,在写入页面时,我将 anNdefMessage转换为可以读取和写入的字节数组。但是,在其他应用程序中未检测到此 NDEF 消息。

我需要做什么才能检测到我从其他应用程序编写的 NDEF 消息?

java android nfc mifare ndef

3
推荐指数
1
解决办法
3112
查看次数

MIFARE Classic 标准按键

我有两个 NFC 标签,其扇区具有不同的密钥:

  • 标签 1:此标签包含 NDEF 消息。

    • 扇区 0 =A0:A1:A2:A3:A4:A5用于密钥 A
    • 扇区 1 至 15 =D3:F7:D3:F7:D3:F7用于钥匙 A
  • 标签 2:此标签上没有 NDEF 数据

    • 所有扇区 =FF:FF:FF:FF:FF:FF用于钥匙 A 和 B

MIFARE Classic 标签是否有符合 NDEF/非 NDEF 的标准密钥?

authentication rfid nfc mifare ndef

3
推荐指数
1
解决办法
1万
查看次数