如何在 Android 手机上模拟 NFC 标签

2024-01-09

我有一部 Android 手机(nexus s、sdk v15),它应使用标签仿真将字符串发送到在 nfc 读取器/写入器模式下运行的开发板。我知道这不是 Android 官方支持的,所以我可以通过直接访问驱动程序来本地完成它(?)。

是否有任何人以前做过此操作的示例或执行此操作的应用程序(最好是开源的?)

我在谷歌上发现了一些东西,通常建议不要这样做,或者人们谈论它如何可能或他们(非常普遍)如何做到这一点,但我找不到任何代码或准确的建议。

我不想访问安全元素或执行任何需要供应商/提供商批准的智能卡操作。我只是想传输字符串。我也知道这可以通过 android api 方法通过 p2p 来完成,但这在开发板上效果不佳,所以我尝试一下这种方法。


对于运行 Stock KitKat 4.4 的设备

With 安卓奇巧 4.4 http://www.android.com/kitkat让手机充当 NFC 的能力card is 内置于操作系统中 http://developer.android.com/guide/topics/connectivity/nfc/hce.html因此您不再需要依赖 Cyanogenmod 或自定义 ROM。它不会让手机本身充当 Mifare Classic 标签,但我在让我的手机与 Mifare Classic 标签进行通信方面取得了很好的成果。ACR122读卡器 http://www.acs.com.hk/en/products/3/acr122u-usb-nfc-reader/因此,如果您的设备上可以安装 4.4,我绝对会推荐此选项。

如果你想运行低于 4.4 并愿意使用 Cyanogenmod

有可能将应用程序加载到您的设备上 http://nelenkov.blogspot.co.uk/2012/10/emulating-pki-smart-card-with-cm91.html并让它们通过 NFC 轻松地与读卡器通信,但您必须正在运行氰化物 http://www.cyanogenmod.org/,这个特征是从 CM 9.1 开始 http://www.cyanogenmod.org/blog/cyanogenmod9-1-and-simplytapp.

想在姜饼上跑步 (旧答案)

是的,这是可能的,并且已经为 2.3.4 发布了一个补丁来启用它,我将发布一些链接供您阅读。

它们确实需要将 2.3.4 Gingerbread ROM 刷新到您的设备以及一些其他补丁才能启用卡模拟功能,因此如果您不愿意这样做,那么它们不会有多大用处,但据我所知意识到这是让它发挥作用的唯一方法。我自己还没有实际测试过,但用户评论表明它有效。

这是描述整个过程的博客链接:http://techshek4u.blogspot.co.uk/2012/01/applying-card-emulation-patch-to_03.html http://techshek4u.blogspot.co.uk/2012/01/applying-card-emulation-patch-to_03.html

以下是原始论坛帖子的链接,其中包含用于启用它的 2.3.4 补丁:
http://forum.xda-developers.com/showthread.php?t=1281946 http://forum.xda-developers.com/showthread.php?t=1281946

以及原始讨论的链接,其中不同的开发人员正在尝试使其工作,具体取决于您对 Android 和 NFC 的技术知识,这可能或多或少有趣:https://groups.google.com/forum/#!msg/android-developers/1fw1qfFqpGc/6dlzvTqExN4J https://groups.google.com/forum/#!msg/android-developers/1fw1qfFqpGc/6dlzvTqExN4J

注意:根据 NFCGuy 的回答,“如果运行 ICS,则不必费心将手机降级到 GB。您无法将 NFC 固件降级以再次与 GB 兼容,因此如果您用以下设备刷新设备,NFC 将无法工作英国”。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Android 手机上模拟 NFC 标签 的相关文章

  • 如何对这个字符串进行子串化

    我想得到这个字符串的 4 个部分 String string 10 trillion 896 billion 45 million 56873 我需要的4个部分是 10万亿 8960亿 4500万 和 56873 我所做的是删除所有空格 然
  • android中向sqlite中插入大量数据

    目前 我必须一次向我的 Android 中插入超过 100 亿条数据 然而 内存不足的问题会使程序崩溃 sqlite 插入测试非常简单 只需使用 for 循环生成 sql 插入命令并通过 开始 和 提交 进行包装 private Array
  • 卸载后 Web 应用程序不显示“添加到主屏幕”

    这是我第一次创建网络应用程序 我设法解决了这个问题 所以我得到了实际的 chrome 提示 将其添加到主屏幕 然后我从手机上卸载了该网络应用程序 因为我想将其展示给我的同事 但是 屏幕上不再出现提示 问题 这是有意为之的行为还是我的应用程序
  • 找不到 com.google.firebase:firebase-core:9.0.0 [重复]

    这个问题在这里已经有答案了 在遵循有些不一致的指示之后here https firebase google com docs admob android quick start name your project and here http
  • Android 后退按钮无法与 Flutter 选项卡内的导航器配合使用

    我需要在每个选项卡内有一个导航器 因此当我推送新的小部件时 选项卡栏会保留在屏幕上 代码运行得很好 但是 android 后退按钮正在关闭应用程序而不是运行 Navigator pop import package flutter mate
  • 无法获取log.d或输出Robolectrict + gradle

    有没有人能够将 System out 或 Log d 跟踪从 robolectric 测试输出到 gradle 控制台 我在用Robolectric Gradle 测试插件 https github com robolectric robo
  • 谷歌坐标认证

    当我尝试连接到 Google 坐标时 总是出现异常GoogleAuthException 我拥有 Google 地图协调中心许可证 我确实使用我的包应用程序名称和 SHA1 在 google 控制台中创建了我的客户端 ID 我将权限添加到清
  • android xamarin 中的 reCaptcha

    我想在 Xamarin android 应用程序中实现验证码 我抓住了这个在 Android 中集成 googles reCaptcha 验证 https www c sharpcorner com article how to integ
  • 是否必须删除 Intent extra?

    这可能是一个愚蠢的问题 但是是否有一条规则规定消费活动必须显式删除 Intent 额外内容 或者只有在回收 Intent 对象时才如此 换句话说 如果我总是通过执行以下操作来链接到下一个活动 Intent i new Intent MyCu
  • Android:捕获的图像未显示在图库中(媒体扫描仪意图不起作用)

    我遇到以下问题 我正在开发一个应用程序 用户可以在其中拍照 附加到帖子中 并将图片保存到外部存储中 我希望这张照片也显示在图片库中 并且我正在使用媒体扫描仪意图 但它似乎不起作用 我在编写代码时遵循官方的Android开发人员指南 所以我不
  • 控制Android的前置LED灯

    我试图在用户按下某个按钮时在前面的 LED 上实现 1 秒红色闪烁 但我很难找到有关如何访问和使用前置 LED 的文档 教程甚至代码示例 我的意思是位于 自拍 相机和触摸屏附近的 LED 我已经看到了使用手电筒和相机类 已弃用 的示例 但我
  • 获取当前 android.intent.category.LAUNCHER 活动的实例

    我创建了一个库项目 并在多个应用程序之间共享 我实现了一个简单的会话过期功能 该功能将在一段时间后将用户踢回到登录屏幕 登录屏幕活动是我的主要活动 因此在清单中它看起来像这样
  • 如何使用 IF 检查 TextView 可见性

    我有一个 onCheckedChangeListener 来根据选择的单选按钮显示文本视图 我有 1 个疑问和 1 个难题 想知道是否有人可以帮助我 问题 您能否将单选组默认检查值设置为 否 单选按钮 以便一开始就不会检查任何内容 问题 如
  • Ubuntu 16.04 - Genymotion:找不到 /dev/hw_random

    I install Genymotion on the Ubuntu 16 04 64Bit I created a virtual emulator for Android 6 0 then I run this emulator but
  • 尝试在 ubuntu 中编译 android 内核时出错

    我正在尝试从源代码编译 Android 内核 并且我已经下载了所有正确的软件包来执行此操作 但由于某种原因我收到此错误 arm linux androideabi gcc error unrecognized command line op
  • Android访问远程SQL数据库

    我可以直接从 Android 程序访问远程 SQL 数据库 在网络服务器上 吗 即简单地打开包含所有必需参数的连接 然后执行 SQL 查询 这是一个私人程序 不对公众开放 仅在指定的手机上可用 因此我不担心第三方获得数据库访问权限 如果是这
  • 我的设备突然没有显示在“Android 设备选择器”中

    我正在使用我的三星 Galaxy3 设备来测试过去两个月的应用程序 它运行良好 但从今天早上开始 当我将设备连接到系统时 它突然没有显示在 Android 设备选择器 窗口中 我检查过 USB 调试模式仅在我的设备中处于选中状态 谁能猜出问
  • 如何根据 gradle 风格设置变量

    我想传递一个变量test我为每种风格设置了不同的值作为 NDK 的定义 但出于某种原因 他总是忽略了最后味道的价值 这是 build gradle apply plugin com android library def test andr
  • 一次显示两条Toast消息?

    我希望在一个位置显示一条 Toast 消息 并在另一位置同时显示另一条 Toast 消息 多个 Toast 消息似乎总是按顺序排队和显示 是否可以同时显示两条消息 是否有一种解决方法至少可以提供这种外观并且不涉及扰乱活动布局 Edit 看来
  • 将两个文本视图并排放置在布局中

    我有两个文本视图 需要在布局中并排放置 并且必须遵守两条规则 Textview2 始终需要完整显示 如果布局中没有足够的空间 则必须裁剪 Textview1 例子 文本视图1 文本视图2 Teeeeeeeeeeeeeeeeeextview1

随机推荐

  • 计算跨浏览器 iframe 高度

    我的 JavaScript 经验中最困难的问题之一是正确 即 跨浏览器 计算iframe 高度 在我的应用程序中 我有很多动态生成的 iframe 我希望它们都在加载事件结束时执行某种自动调整大小以调整其高度和宽度 如果是height计算我
  • 为什么不能在 osx 中原生安装 docker?

    我希望能够在 OSX 中的 Vagrant 之外使用 docker 目前这是不可能的 导致它不只限于linux安装的具体原因是什么 Docker 只是系统提供的容器之上的一个抽象和自动化层 技术限制是 OS X 不支持操作系统级虚拟化 ht
  • 如何添加添加图像作为下拉箭头?

    我创建了一个带有下拉箭头的应用程序 但箭头的尺寸太小 所以我决定放大箭头的大小 我需要添加图像而不是箭头 是否可以添加图像或调整箭头大小 我当前的 CSS 如下 custom select after content content siz
  • Play框架会话和cookie如何工作?

    play 如何验证 cookie 我注意到重新启动服务器后我仍然登录 即使我 不要在数据库中保存任何会话数据 我也注意到了 我可以将服务器上的日期设置为大于到期日 cookie 的日期 但我仍然登录 我退出了 将 cookie 保存到文本文
  • 简单文件上传返回NULL?

    我正在尝试在 MVC 5 中进行第一个简单的文件上传 我正在遵循我找到的一堆示例 但由于某种原因 在我的 创建 ActionResult 中 uploadFile 始终为 NULL 因此上传代码为从不运行 有人看到我可能做错了什么吗 Vie
  • 单独类库中数据注释的本地化

    我们正在尝试为我们的域模型实现本地化 这些模型存在于我们的解决方案中的单独的类库项目中 然而 我们无法让它工作 因为我们的模型数据注释属性根本没有被翻译 项目结构 Solution Web project 资源文件夹 包含 resx 文件
  • 如何制作一个永不结束的迭代器?

    我只是想知道无限期地迭代集合的最简单方法是什么 即当它到达末尾时next 调用第一个对象 我假设这不是 Java 中预定义的函数 所以只是寻找在 Java 中实现它的最简单方法 有一个方法很优秀谷歌收藏 https github com g
  • 如何使用 conda 或 virtualenv 在虚拟环境之间共享包?

    我有多个 python 项目 每个项目都有自己的虚拟环境 另外我有一个全局 python 环境 我想在虚拟 全局环境之间共享相同的包文件 而不需要多次复制它们 如果可能 Environment Packages GLOBAL A B C D
  • 在编译时完全枚举 D 维数组的索引

    为了测试一些多维结构 需要生成编译时多维索引以完全覆盖所有可能的情况 我寻找编译时廉价的方法来实现上述目的 我目前所做的 include
  • java 10 中使用局部变量类型推断的限制

    Java 10引入了局部变量类型推断特征JEP 286 http openjdk java net jeps 286 我们可以使用局部变量类型推断var这是保留类型名称 但使用它有一些限制 有人可以总结一下在哪些情况下我将无法使用 var
  • 如何在android的城市飞艇中注册apid?

    I have completed client side code by download sample from git for push notification in android After execute of app i go
  • 有条件地更改 Razor 视图中的 CSS 类

    我需要更改 CSS 类 div 带有 forumChild 类的标签 它必须每 3 个循环更改一次 foreach 循环 有没有办法在控制范围内做到这一点 div class Forum p The Forum p foreach var
  • 是否可以在同一帧中打开新的 fxml 文件

    我在锚点窗格中创建了 fxml 文件 但每次我单击按钮时 我都会在新框架中得到下一个 fxml 我希望它在同一帧中打开 public void baropen ActionEvent event handle the event here
  • 导航栏按钮和项目未在 swift 3 中显示

    我在 swift 中以编程方式使用导航栏 但无法在导航栏中显示栏按钮项目 这是我所做的代码 override func viewDidLoad super viewDidLoad let navBar UINavigationBar UIN
  • 存在主义类型。为异构映射编写类的实例

    使用以下类型和类定义 我不明白为什么在创建时会出现错误instance below 我需要 MyMap 来保存异构值的映射 LANGUAGE ExistentialQuantification module Scratch SO Extis
  • 在 Three.js 中将材质分配给 OBJLoader 模型

    我使用以下代码导入了 OBJ 模型 var loader new THREE OBJLoader loader addEventListener load function geometry object geometry content
  • 卸载前检查应用程序是否在 NSIS 中运行

    我是 NSIS 新手 我需要知道在卸载程序中 如何检查应用程序 C 中的 是否正在运行并在卸载之前将其关闭 这是一个稍微更友好的使用版本NS进程 http nsis sourceforge net NsProcess plugin请求应用程
  • 如何在 React 中创建可重用的自定义模态组件?

    我对 React 中的模态概念有疑问 当使用带有 jQ uery 的服务器端渲染模板时 我习惯于有一个始终可用的空全局模态模板 包含在始终扩展的基本模板中 然后 当进行 AJAX 调用时 我只是填充模态 如下所示 modal global
  • 如何在 Flutter 中设置折叠元素的动画

    当用户用动画点击不同的小部件 同级或父级 时 如何展开和折叠小部件 new Column children
  • 如何在 Android 手机上模拟 NFC 标签

    我有一部 Android 手机 nexus s sdk v15 它应使用标签仿真将字符串发送到在 nfc 读取器 写入器模式下运行的开发板 我知道这不是 Android 官方支持的 所以我可以通过直接访问驱动程序来本地完成它 是否有任何人以