导航:首页 > 软件知识 > nfc如何写程序

nfc如何写程序

发布时间:2022-11-28 17:30:34

㈠ 门禁卡写入手机nfc 门禁卡写入手机nfc的方法

如果您使用的是华为手机,您可以通过以下方法将实体门钥匙添加到华为钱包,添加成功后相当于将实体门禁卡装进了手机,刷手机即可开门。
提示:仅支持具备NFC功能机型。
添加的方法:
1、确保手机连接网络,并开启NFC开关。(开启方法:进入设置 > 更多连接 > NFC开启NFC)
2、点击华为钱包> 卡包 >钥匙 > 门禁卡 > 模拟实体门禁卡。
3、将实体门禁卡贴在手机NFC感应部位,读卡成功后自动模拟门禁卡。
4、模拟成功后编辑门禁卡样式和名称,点击完成添加成功。
提示:退出华为帐号时,会提示是否保留钱包卡片在当前设备。若您选择保留,重新登录帐号后可正常使用; 选择不保留,门禁卡将会从当前设备删除。

㈡ 华为nfc怎么用

nfc 主要有三种运行模式:卡模拟模式、读写模式和点对点模式,分别可以实现设备支付、门禁功能;读身份证信息,给公交卡充值功能;实现设备间的数据传输功能。使用方法如下:
通过 nfc 功能支付:
1、运营商支持的 nfc-sim 卡支付。在手机上安装支持 nfc-sim 功能的 sim 卡,在支持 nfc 的公交刷卡器、pos 机上都可以使用手机支付,详情可咨询商家和运营商。
2、hce (host-based card emulation)支付。在银行卡应用程序中模拟一张实体银行卡的替身卡,在非接触式 pos 机的实体店都可以使用手机支付,快速、便捷又安全。
3、华为钱包支付。华为钱包将银行卡/公交卡信息置于手机的安全芯片中,为您带来安全和便利的支付体验。
通过nfc给实物充值:
1、保证nfc功能处于开启状态:请进入“设置 > 更多 > nfc”,保证开关处于开启状态。
2、下载对应的应用,如微信,支付宝,翼支付等。
3、找到手机nfc的感应区。
4、将公交卡放置在手机背面nfc感应区。
5、在弹出的可识别应用中选择对应的应用。如:北京公交卡请选择微信,支付宝,e乐充等;武汉公交卡可以选择武汉通行等。
通过nfc传输文件:
1、首先需要在nfc设置界面打开nfc开关,打开“huawei beam”开关(如有“读写/点对点”开关,也请一并开启)。
2、在图库打开一张图片,或者联系人中打开单个联系人详情。然后将两部手机的 nfc 天线感应区互相靠近。
3、当手机检测到另外一台nfc手机靠近后,当前图片或者联系人界面会缩小,并显示触摸发送。此时点击缩小的界面即可传输到另一台手机。
4、当传输开始后,即可将两部靠近的手机分开。

㈢ Android手机中如何写入NFC程序怎么能读到一张卡

Android读写NFC的步骤:x0dx0a1.首先要在AndroidManifest.xml中声明如下配置信息:x0dx0a使用元素允许设备访问NFC硬件:x0dx0a x0dx0ax0dx0a2.使用元素设置最小SDK版本:x0dx0a x0dx0ax0dx0a3.NFC TAG的发布系统:x0dx0a当android设备扫描到一个NFC标签时,会自动寻找最适合的Activity来处理这个TAG,如果有多个Activity满足条件的话,会让用户来选择到底使用哪一个Activity来处理,可以理解为就是简单的事件响应与事件处理。x0dx0ax0dx0a4.如何让一个Activity监听 ”当扫描到NFC标签时” 的这一个事件呢?使用intent filter。x0dx0a可以理解为当检测到一个NFC标签时,系统自动创建一个相关的Intent对象,含有响应intent filter的Activity将处理这个Intent。x0dx0a其中,intent filter声明如下:x0dx0a x0dx0a x0dx0a x0dx0a x0dx0a x0dx0ax0dx0a5.读取NFC标签中NDEF格式的文本信息:x0dx0a先判断手机支不支持NFC功能,若支持,是否已设置开启状态。x0dx0a@Override x0dx0aprotected void onCreate(Bundle savedInstanceState) { x0dx0a super.onCreate(savedInstanceState); x0dx0a setContentView(R.layout.activity_write); x0dx0a nfcTView=(TextView)findViewById(R.id.info_tv); x0dx0a nfcAdapter = NfcAdapter.getDefaultAdapter(this); x0dx0a if (nfcAdapter == null) { x0dx0a nfcTView.setText("设备不支持NFC!"); x0dx0a finish(); x0dx0a return; x0dx0a } x0dx0a if (nfcAdapter!=null&&!nfcAdapter.isEnabled()) { x0dx0a nfcTView.setText("请在系统设置中先启用NFC功能!"); x0dx0a finish(); x0dx0a return; x0dx0a } x0dx0a} x0dx0ax0dx0a6.读取NFC卡的内容x0dx0aprivate boolean readFromTag(Intent intent){ x0dx0a Parcelable[] rawArray = intent.getParcelableArrayExtra(NfcAdapter.EXTRA_NDEF_MESSAGES); x0dx0a NdefMessage mNdefMsg = (NdefMessage)rawArray[0]; x0dx0a NdefRecord mNdefRecord = mNdefMsg.getRecords()[0]; x0dx0a try { x0dx0a if(mNdefRecord != null){ x0dx0a readResult = new String(mNdefRecord.getPayload(),"UTF-8"); x0dx0a return true; x0dx0a } x0dx0a } x0dx0a catch (UnsupportedEncodingException e) { x0dx0a e.printStackTrace(); x0dx0a }; x0dx0a return false; x0dx0a }

㈣ Android手机中如何写入NFC程序怎么能读到一张卡

Android读写NFC的步骤:
1.首先要在AndroidManifest.xml中声明如下配置信息:
使用<uses-permission>元素允许设备访问NFC硬件:
<uses-permission android:name="android.permission.NFC" />

2.使用<uses-sdk>元素设置最小SDK版本:
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="14" />

3.NFC TAG的发布系统:
当android设备扫描到一个NFC标签时,会自动寻找最适合的Activity来处理这个TAG,如果有多个Activity满足条件的话,会让用户来选择到底使用哪一个Activity来处理,可以理解为就是简单的事件响应与事件处理。

4.如何让一个Activity监听 ”当扫描到NFC标签时” 的这一个事件呢?使用intent filter。
可以理解为当检测到一个NFC标签时,系统自动创建一个相关的Intent对象,含有响应intent filter的Activity将处理这个Intent。
其中,intent filter声明如下:
<intent-filter>
<action android:name="android.nfc.action.NDEF_DISCOVERED" ></action>
<category android:name="android.intent.category.DEFAULT" ></category>
<data android:mimeType="text/plain" ></data>
</intent-filter>

5.读取NFC标签中NDEF格式的文本信息:
先判断手机支不支持NFC功能,若支持,是否已设置开启状态。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_write);
nfcTView=(TextView)findViewById(R.id.info_tv);
nfcAdapter = NfcAdapter.getDefaultAdapter(this);
if (nfcAdapter == null) {
nfcTView.setText("设备不支持NFC!");
finish();
return;
}
if (nfcAdapter!=null&&!nfcAdapter.isEnabled()) {
nfcTView.setText("请在系统设置中先启用NFC功能!");
finish();
return;
}
}

6.读取NFC卡的内容
private boolean readFromTag(Intent intent){
Parcelable[] rawArray = intent.getParcelableArrayExtra(NfcAdapter.EXTRA_NDEF_MESSAGES);
NdefMessage mNdefMsg = (NdefMessage)rawArray[0];
NdefRecord mNdefRecord = mNdefMsg.getRecords()[0];
try {
if(mNdefRecord != null){
readResult = new String(mNdefRecord.getPayload(),"UTF-8");
return true;
}
}
catch (UnsupportedEncodingException e) {
e.printStackTrace();
};
return false;
}

㈤ 手机上的nfc怎么用

很多用途,比如快速连接别的设备。例如,第一种我们要链接蓝牙设备,一般的步骤是,打开蓝牙,选择设备。需要时间大概是5秒。而假设设备第一次连接,你还得配对,操作:1打开蓝牙设备,然后点击配对,2手机打开蓝牙,搜索设备,点击。而nfc可以做到,你解锁屏幕后,靠近设备,听见提示音,ok。1秒左右。无论第一次还是第二次都一样。或者是传输文件app等,app最简单,选择app,然后碰一下。文件最多碰两次,节省还需要打开蓝牙的程序。打个比方就是你要分享一个文件之类的东西,你只需要打开这个文件,然后碰一下另外一台打开nfc bream的手机,然后提示你下一步之类的就完成了,省去你又要打开蓝牙或者用流量分享。第二种快速的执行命令,比如说在会议室,我要求静音的同时,连接wifi,打开某程序(比如说同步画面到投影仪)。nfc只需要靠近标签,解锁,读取。换成家庭,门口两个nfc标签,出门碰一下,关闭wifi,关闭蓝牙,执行省电程序。进门碰另外一个,打开wifi,打开蓝牙,关闭省电程序。第三种读取信息,比如说我要给你我的电子名片,你手机靠近,读取。完毕。用二维码,你还得打开二维码扫描软件。当然,还有例如读取银行卡业务,方便。第四种,移动支付。这个不多说了。第五种,模拟卡,你想象下现在是不是有过这样头疼的情况,家里有门禁,小区停车场有门禁,公司有门禁。最少的情况你都得有两个:家里和公司的门禁。如果模拟了,你就可以做到出门不带那么多的门禁卡。比如说我:我家里一个门禁,办事处一个,停车场一个,还有老家小区门禁一个,老家停车场门禁一个。一共五个门禁,有时候就只想下楼买包烟,结果发现忘记带哪张卡,难受。当然,还有交通卡。你看,公交卡,停车卡,地铁卡,都整合在一起,出门你就不用在一直掏钱包了。

㈥ 怎样基于NFC做文本编辑器

1、进入设置—NFC—NFC场景标签,选择需要的场景标签,开始进行编辑,编辑完成后,单独把NFC标签贴近手机背面,以写入数据;
2、写入成功后会有提示。成功后,退出到主界面。再次把NFC标签靠近手机背面,即可进入之前编辑好的场景模式。

㈦ NFC标签的内容写入,需要搭配软件嘛

NFC标签贴纸的芯片都是可读可写的芯片,所谓可读可写就是你可以读取里面的内容,也可以重新向里面写入数据,我们的NFC手机,一般都支持向芯片写入新内容,不过有些功能的实现需要搭配一些软件,比较想要快速启动一个程序,可以使用飞云快启,一般一个芯片的擦写次数是10万次,也就说,如果你更改数据超过10万次,这个标签一般情况下就会坏。

㈧ NFC开发(一)——HCE基于主机的卡模拟简述

许多提供NFC功能的基于Android的设备已经支持NFC卡模拟。在大多数情况下,该卡由设备中的单独芯片模拟,称为 安全元件(Secure Element) 。无线运营商提供的许多SIM卡还包含安全元件(Secure Element)。

Android 4.4引入了另一种卡模拟方法,它不涉及SE,称为 基于主机的卡模拟 。这允许任何Android应用程序模拟卡并直接与NFC读卡器通话。本文档描述了基于主机的卡仿真(HCE)如何在Android上工作,以及如何使用此技术开发模拟NFC卡的应用程序。

当使用安全元件(Secure Element)提供NFC卡模拟时,将通过Android应用程序将要模拟的卡提供到设备上的安全元件(Secure Element)中。然后,当用户通过NFC终端握住设备时,设备中的NFC控制器将来自读卡器(NFC Reader)的所有数据直接路由到安全元件(Secure Element)。图1说明了这个概念。

安全元件(Secure Element)本身执行与NFC终端的通信,并且完全不涉及Android应用。交易完成后,Android应用程序可以直接查询SE的交易状态并通知用户。

当使用基于主机的卡仿真来仿真NFC卡时,数据将被路由到直接运行Android应用程序的主机CPU,而不是将NFC协议帧路由到SE。图2展示了基于主机的卡仿真如何工作。

NFC标准提供对许多不同协议的支持,并且可以模拟不同类型的卡。

Android 4.4支持当今市场上常见的几种协议。许多现有的非接触式卡已经基于这些协议,例如非接触式支付卡。这些协议也得到了当今市场上众多NFC读卡器的支持,其中包括Android NFC设备可以自己作为读卡器(请参见 IsoDep 课程)。这使您可以仅使用基于Android的设备在HCE周围构建和部署端到端NFC解决方案。

具体而言,Android 4.4支持基于NFC-Forum ISO-DEP规范(基于ISO / IEC 14443-4)的仿真卡,并处理ISO / IEC 7816-4规范中定义的应用协议数据单元(APDU)。Android只强制在Nfc-A(ISO / IEC 14443-3 Type A)技术之上模拟ISO-DEP。支持Nfc-B(ISO / IEC 14443-4 Type B)技术是可选的。所有这些规格的分层如图3所示。

Android中的HCE体系结构基于Android Service 组件(称为“HCE服务”)。服务的一个关键优势是它可以在没有任何用户界面的情况下在后台运行。这对于许多HCE应用程序来说非常合适,例如会员卡或公交卡,用户不需要启动应用程序即可使用它。相反,通过NFC读卡器轻敲设备将启动正确的服务(如果尚未运行)并在后台执行该事务。当然,如果有意义的话,您可以自由地从您的服务中启动额外的UI(例如用户通知)。

当用户将设备连接到NFC读取器时,Android系统需要知道NFC读取器实际想要与哪个HCE服务通话。这就是ISO / IEC 7816-4规范的出处:它定义了一种选择应用程序的方式,以应用程序ID(AID)为中心。一个AID最多由16个字节组成。如果您正在模拟现有NFC读卡器基础架构的卡片,那么这些读卡器所寻找的AID通常是众所周知的并且是公开注册的(例如Visa和MasterCard等支付网络的AID)。

如果您想为自己的应用程序部署新的读卡器基础结构,则需要注册您自己的AID。AID的注册程序在ISO / IEC 7816-5规范中定义。如果您要为Android部署HCE应用程序,Google建议按照7816-5注册AID,因为它可以避免与其他应用程序发生冲突。

在某些情况下,HCE服务可能需要注册多个AID才能实现某个应用程序,并且需要确保它是所有这些AID的默认处理程序(而不是组中的某些AID转到其他服务) 。

一个AID组是应该被OS视为一起归属的AID列表。对于AID组中的所有AID,Android会保证以下其中一项:

换句话说,没有中间状态,组中的一些AID可以路由到一个HCE服务,另一些AID可路由到另一个。

每个AID组都可以与一个类别关联。这允许Android按类别将HCE服务组合在一起,并且反过来又允许用户在类别的级别而不是AID级别设置默认值。通常,避免在应用程序的任何面向用户的部分提及AID:它们对普通用户没有任何意义。

Android 4.4支持两种类别: CATEGORY_PAYMENT (涵盖行业标准支付应用程序)和 CATEGORY_OTHER (对于所有其他HCE应用程序)。

要使用基于主机的卡仿真来模拟NFC卡,您需要创建一个 Service 处理NFC事务的组件。

您的应用程序可以通过检查 FEATURE_NFC_HOST_CARD_EMULATION 功能来检查设备是否支持HCE 。您应该 <uses-feature> 在应用程序清单中使用该标记来声明您的应用程序使用HCE功能,以及该应用程序是否需要运行。

Android 4.4带有一个便利的 Service 类,可以作为实现HCE服务的基础: HostApService 类。

因此,第一步要扩大 HostApService 。

HostApService 声明了两个需要重写和实现的抽象方法。

processCommandAp() 只要NFC读卡器将应用协议数据单元(APDU)发送到您的服务,就会调用它。APDU也在ISO / IEC 7816-4规范中定义。APDU是在NFC读卡器和您的HCE服务之间交换的应用级数据包。该应用级协议是半双工的:NFC读卡器会向您发送命令APDU,并等待您发送响应APDU作为回报。

如前所述,Android使用AID来确定读者想要与哪个HCE服务交谈。通常,NFC读卡器向您的设备发送的第一个APDU是“SELECT AID”APDU; 这个APDU包含读卡器想与之交谈的AID。Android从APDU中提取AID,将其解析为HCE服务,然后将该APDU转发给已解析的服务。

您可以通过返回响应APDU的字节来发送响应APDU [processCommandAp()]( https://developer.android.com/reference/android/nfc/cardemulation/HostApService.html#processCommandAp(byte[] , android.os.Bundle))。请注意,此方法将在应用程序的主线程中调用,该线程不应被阻止。所以如果你不能立即计算并返回一个响应APDU,那么返回null。然后,您可以在另一个线程上完成必要的工作,并 sendResponseAp() 在完成后使用 HostApService 该类中定义的方法发送响应。

Android会继续将新的APDU从读取器转发到您的服务,直到:

在这两种情况下,你的类的 onDeactivated() 实现都是通过一个参数来调用的,这个参数指出了两者中的哪一个发生了。

如果您正在使用现有的读卡器基础架构,则需要实现读卡器在您的HCE服务中期望的现有应用程序级协议。

如果您正在部署您控制的新读卡器基础架构,则可以定义自己的协议和APDU序列。通常,尝试限制APDU数量和需要交换的数据大小:这样可以确保用户只需将设备通过NFC读取器持续一段时间即可。合理的上限约为1KB的数据,通常可以在 300ms 内交换。

您的服务必须像往常一样在清单中声明,但还必须在服务声明中添加一些附加件。

首先,为了告诉平台它是一个实现 HostApService 接口的HCE服务 ,你的服务声明必须包含一个 SERVICE_INTERFACE 动作的 Intent Filter 。

另外,为了告知平台哪个AIDs组被这个服务请求,一个 SERVICE_META_DATA <meta-data> 标签必须包含在服务的声明中,指向一个XML资源和关于HCE服务的附加信息。

最后,您必须将该 android:exported 属性设置为true,并且 "android.permission.BIND_NFC_SERVICE" 在服务声明中要求权限。前者确保服务可以被外部应用程序绑定。后者然后强制只有拥有该 "android.permission.BIND_NFC_SERVICE" 权限的外部应用程序 才能绑定到您的服务。既然 "android.permission.BIND_NFC_SERVICE" 是一个系统权限,这有效地强制只有Android OS可以绑定到你的服务。

这是一个 HostApService 清单声明的例子:

这个元数据标签指向一个 apservice.xml 文件。下面显示了具有包含两个专有AID的单个AID组声明的此类文件的示例:

该 <host-ap-service> 标签需要包含一个 <android:description> 属性,该属性包含可能在UI中显示的用户友好的服务描述。该 requireDeviceUnlock 属性可用于指定在调用此服务来处理APDU之前必须先解锁设备。

在 <host-ap-service> 必须包含一个或多个 <aid-group> 标签。每个 <aid-group> 标签都需要:

最后,您的应用程序还需要拥有 NFC 可以注册为HCE服务的 权限。

多个 HostApService 组件可以安装在单个设备上,并且可以由多个服务注册相同的AID。Android平台根据AID属于哪个类别来解决AID冲突。每个类别可能有不同的冲突解决策略。

例如,对于某些类别(如付款),用户可能能够在Android设置UI中选择默认服务。对于其他类别,策略可能总是要求用户在冲突情况下调用哪个服务。要查询特定类别的冲突解决策略,请参阅 getSelectionModeForCategory() 。

应用程序可以使用[isDefaultServiceForCategory(ComponentName, String)]( https://developer.android.com/reference/android/nfc/cardemulation/CardEmulation.html#isDefaultServiceForCategory(android.content.ComponentName , java.lang.String))API 检查其HCE服务是否是某个类别的默认服务。

如果您的服务不是默认设置,则可以请求将其设置为默认设置。看 ACTION_CHANGE_DEFAULT 。

Android会将AID组为“payment”的类别,声明的HCE服务视为支付应用程序。Android 4.4版本包含一个名为“tap&pay”的top-level设置菜单条目,它列举了所有这些支付应用程序。在此设置菜单中,用户可以选择在点按付款终端时将调用的默认支付应用程序。

为了提供更具视觉吸引力的用户体验,HCE支付应用程序需要为其服务提供额外的resource:所谓的服务标记。

这个asset的大小应该是260x96 dp,并且可以在元数据(meta-data)XML文件中通过添加指向drawable resource android:apServiceBanner 的 <host-ap-service> 标签的属性来指定 。一个例子如下所示:

当设备的屏幕关闭时,当前的Android实施将NFC控制器和应用程序处理器完全关闭。因此,当屏幕关闭时,HCE服务将无法工作。

然而,HCE服务可以从锁定屏幕中起作用:这由HCE服务标记中的 android:requireDeviceUnlock 属性控制 <host-ap-service> 。默认情况下,不需要设备解锁,即使设备被锁定,您的服务也会被调用。

如果您将 android:requireDeviceUnlock HCE服务的属性设置为“true”,Android会提示用户在您靠近NFC读卡器时解锁设备,NFC读卡器会选择已解析为您的服务的AID。解锁后,Android会显示一个对话框,提示用户再次点击以完成交易。这是必要的,因为用户可能已经将设备从NFC读卡器移开以便解锁它。

本部分对于已经部署依赖SE进行卡模拟的应用程序的开发人员很感兴趣。Android的HCE实现旨在与其他实现卡仿真的方法并行工作,包括使用SE。

这种共存基于一种称为“AID路由”的原则:NFC控制器保留一个由(有限)路由规则列表组成的路由表。每个路由规则都包含一个AID和一个目的地。目标可以是主机CPU(Android应用程序正在运行的地方),也可以是连接的SE。

当NFC读卡器发送具有“SELECT AID”的APDU时,NFC控制器解析它并检查AID是否与其路由表中的任何AID匹配。如果匹配,那么APDU和其后的所有APDU将被发送到与AID相关联的目的地,直到收到另一个“SELECT AID” APDU或NFC链路断开。

图4说明了这种架构。

NFC控制器通常还包含APDU的默认路由。在路由表中找不到AID时,将使用默认路由。尽管此设置可能因设备而异,但Android设备需要确保您的应用注册的AID已正确路由到主机。

实现HCE服务或使用SE的Android应用程序不必担心配置路由表 - 这是由Android自动处理的。Android只需要知道哪些AID可以由HCE服务处理,哪些可以由SE处理。基于哪些服务已安装,以及哪些用户已配置为首选服务,路由表会自动配置。

我们已经介绍了如何声明HCE服务的AID。以下部分说明如何为使用SE进行卡模拟的应用程序声明AID。

使用SE进行卡模拟的应用程序可以在其清单中声明所谓的“关闭主机服务”。这种服务的声明几乎与宣布HCE服务相同。以下情况例外:

相应 apservice.xml 文件注册两个AID 的示例:

该 android:requireDeviceUnlock 属性不适用于脱离主机服务,因为主机CPU不参与事务,因此无法阻止SE在设备锁定时执行事务。

该 android:apServiceBanner 属性必须用于作为支付应用程序的关闭主机服务,以便作为默认支付应用程序进行选择。

Android本身永远不会启动或绑定到声明为“脱离主机”的服务。这是因为实际交易由SE执行,而不是由Android服务本身执行。服务声明仅允许应用程序注册安全元件(Secure Element)上存在的AID。

HCE体系结构本身提供了一个核心安全性:因为您的服务受到 BIND_NFC_SERVICE 系统权限的保护,所以只有操作系统可以绑定到您的服务并与之通信。这可以确保您收到的任何APDU实际上都是OS从NFC控制器接收到的APDU,并且您发回的任何APDU只会发送到操作系统,而操作系统会直接将APDU转发给NFC控制器。

剩下的核心部分就是您获取应用程序发送给NFC读卡器的数据的位置。这在HCE设计中有意解耦:它不关心数据来自何处,它只是确保将其安全地传送到NFC控制器并传送到NFC读取器。

为了安全地存储和检索您希望从HCE服务发送的数据,例如,您可以依靠Android应用程序沙箱,将应用程序的数据与其他应用程序隔离。有关Android安全性的更多详细信息,请阅读 安全提示 。

这部分内容对于希望了解HCE设备在NFC协议的防冲突和激活阶段使用何种协议参数的开发人员很感兴趣。这允许构建与Android HCE设备兼容的读卡器基础结构。

作为Nfc-A协议激活的一部分,交换多个帧。

在交换的第一部分,HCE设备将呈现其UID; HCE设备应该被假定为具有随机的UID。这意味着在每个抽头中,呈现给读卡器的UID将是随机生成的UID。因此,NFC读卡器不应依赖HCE设备的UID作为身份验证或身份验证的一种形式。

NFC读取器可以随后通过发送SEL_REQ命令来选择HCE设备。HCE设备的SEL_RES响应将至少设置第6位(0x20),表示设备支持ISO-DEP。注意,SEL_RES中的其他位也可以被设置,表示例如对NFC-DEP(p2p)协议的支持。由于可以设置其他位,所以想要与HCE设备交互的读者应该明确检查第6位,并且<stront style="box-sizing: inherit;">不要将完整的SEL_RES与值0x20进行比较。</stront>

Nfc-A协议激活后,NFC读取器启动ISO-DEP协议激活。它发送一个“RATS”(请求选择应答)命令。RATS响应(ATS)完全由NFC控制器生成,不能由HCE服务配置。然而,HCE实现需要满足NFC论坛对ATS响应的要求,因此NFC读卡器可以根据NFC论坛对任何HCE设备的要求设置这些参数。

以下部分提供了有关NFC控制器在HCE设备上提供的ATS响应的各个字节的更多详细信息:

请注意,许多HCE设备可能符合EMVCo联合的支付网络在其“非接触式通信协议”规范中指定的协议要求。尤其是:

如前所述,HCE实现仅支持单个逻辑通道。尝试在不同的逻辑通道上选择应用程序将不适用于HCE设备。

本文 翻译自 谷歌开发者文档,已由本人仔细校对。如有错误,请联系我,以便修改。

㈨ 专业问题:NFC标签贴片,怎么写入打开手机中的某个应用

NFC可以通过近距离非接触方式交换数据,而NFC贴片里所存储的内容一般是一些简单的指令,比如,在会议室门口放一个贴片,然后在里面写入关闭铃声的的设置指令,那进会议室只需扫一下贴片便可以让手机进入会议模式

㈩ nfc贴纸怎么写入

用nfc写入软件写入数据,如:TagWriter、NFC标签助手、NFC Tools pro、Trigger、Mifare Class Tool、NFC百宝箱等等。

阅读全文

与nfc如何写程序相关的资料

热点内容
怎么做委托交易 浏览:186
产品目录册设计怎么选 浏览:155
佳木斯质检技术多少钱 浏览:427
招聘信息中介员怎么赚钱 浏览:502
市场下滑该怎么办 浏览:500
产品销售怎么分类 浏览:657
如何清空宝塔数据库 浏览:924
注册steam需要用到什么信息 浏览:332
做家养生代理店多少钱 浏览:83
实体黄金交易市场在哪里 浏览:503
如何通过modbus发送数据 浏览:486
异性如何发信息问候 浏览:420
信息咨询式培训费用多少 浏览:762
女孩学习哪些技术比较好 浏览:768
有了ip地址怎么挂代理 浏览:545
40年产权公寓交易税怎么算 浏览:970
宁波体检信息哪里查 浏览:160
数据线联保是什么意思 浏览:673
我国金融产品的市场有哪些 浏览:789
哪些东西可以碳交易 浏览:370