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

主机卡仿真阅读器模型

傅啸
2023-03-14

通过阅读《HCE开发者指南》,这里的《HCE开发者指南》似乎可以将android手机用作阅读器。我把卡片信息放在NFC标签上,然后用手机读。我想让手机充当阅读器。你知道这是否可行吗?我创建了一个示例项目,其中包含以下代码行:

import android.nfc.cardemulation.HostApduService;
import android.os.Bundle;


public class MyHostAPDUService extends HostApduService{
@Override
public byte[] processCommandApdu(byte[] apdu, Bundle extras) {
   ...
}
@Override
public void onDeactivated(int reason) {
   ...
}
}

我不知道下一步该去哪里。

共有1个答案

寇景明
2023-03-14

我已经实现了将手机用作阅读器的功能,但方法略有不同:

以一个活动为基础,我创建了一个简单的读卡器应用程序,在该应用程序中,我向一张卡发送了一个select,然后发送了一些后续的APDU

private NfcAdapter mAdapter;
private PendingIntent mPendingIntent;
private String[][] mTechLists;
private IsoDep card;

onCreate(){

...

mAdapter = NfcAdapter.getDefaultAdapter(this);

mPendingIntent = pendingIntent.getActivity(this, 0, new Intent(this, getClass()).addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP),0);

mTechLists = new String[][]{new String[]{IsoDep.class.getName()},new String[]{IsoDep.class.getName()}};


...
}

onPause(){
mAdapter.disableForegroundDispatch(this);
}

onResume(){
mAdapter.enableForegroundDispatch(this,mPendingIntent,null,mTechLists);
}

onNewIntent(Intent intent){

Tag theTag = (Tag)intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);

card = IsoDep.get(theTag);

...

card.connect();
...
byte[] response = card.transceive(apduBytes);
}

我没有在这方面做太多的工作,因为这只是一个概念证明,但我希望它会有所帮助。

 类似资料:
  • HCE是在Android 4.4中实现的,但是关于如何在模拟卡中写入的信息很少。 我有心肺复苏40.30阅读器 这个读者带来了一些样本NFC卡。我使用NFC读卡应用程序读取这些卡。 与CPR 40.30兼容的NFC卡详细信息 IC制造商:恩智浦半导体 我想写HCE代码,希望我的Android手机像一张卡片一样,可以被CPR 40.30阅读器读取。我假设HCE代码应该模拟具有上述规格的卡,因为读卡器

  • 我正在尝试使用ACR1281U NFC标签阅读器在Android设备上进行主机卡仿真。 这就是我想申请的类型。 根据Android文档和示例,需要在Android项目中注册一个AID: 我如何知道我需要在我的Android应用程序中注册哪些AID,以便读者可以阅读HCE Android应用程序? 这里是我发布的另一个关于同样问题的问题:没有找到支持的卡终端ARC1281U nfc读卡器 我参考了以

  • 我开发了一个系统,可以使用带有PN532芯片的阅读器读取NFC标签。它工作正常。我可以阅读米费尔经典和米费尔超轻标签。 现在我想使用带有Android 4.4.2的Nexus平板电脑来模拟标签。我没有Android开发经验,但我认为这是可能的。 我已经在Nexus平板电脑中设置了NFC通信,但我想我必须下载或编写一些应用程序来模拟Tag和NDEF通信。 最简单的方法是什么?

  • 3.3.1.仿真器 vs 真机 在大多数情况下,应用在仿真器上执行,与在真机上是没有区别的。少数的例外情况则往往是因为难以模拟,比如传感器。一般的硬件相关特性比如电话呼叫、地理定位等等,都可以由仿真器模拟。

  • translated_page: https://github.com/PX4/Devguide/blob/master/en/simulation/sitl.md translated_sha: b522243efef9deb5e2d3ae7bd03ae9ed0eee3418 Multi-Vehicle Simulation This tutorial explains how to simul

  • 我刚刚开始制作一个使用主机卡模拟(HCE)的应用程序,我做了各种各样的工作。我需要该应用程序使手机的行为像一张卡,而另一部手机的行为像一个NFC阅读器,并扫描它,反之亦然,以便交换一个非常小的信息-身份证号码。 我已经完成了一些功能单元,如ProcessDirecdApdu和定义AID,但我并不真正理解它是如何工作的。 这是我目前的代码。。。 @TargetApi(19)公共类主要活动扩展Host