CN111737121A - Nfc芯片测试方法、装置、终端设备以及存储介质 - Google Patents

Nfc芯片测试方法、装置、终端设备以及存储介质 Download PDF

Info

Publication number
CN111737121A
CN111737121A CN202010545271.0A CN202010545271A CN111737121A CN 111737121 A CN111737121 A CN 111737121A CN 202010545271 A CN202010545271 A CN 202010545271A CN 111737121 A CN111737121 A CN 111737121A
Authority
CN
China
Prior art keywords
nfc chip
test
nfc
calling
instruction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
CN202010545271.0A
Other languages
English (en)
Inventor
黄儒鸿
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oppo Chongqing Intelligent Technology Co Ltd
Original Assignee
Oppo Chongqing Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oppo Chongqing Intelligent Technology Co Ltd filed Critical Oppo Chongqing Intelligent Technology Co Ltd
Priority to CN202010545271.0A priority Critical patent/CN111737121A/zh
Publication of CN111737121A publication Critical patent/CN111737121A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephone Function (AREA)

Abstract

本申请公开了一种NFC芯片测试方法、装置、终端设备以及存储介质,其方法包括:接收NFC芯片测试请求;根据NFC芯片测试请求,调用对应的功能脚本,向NFC芯片发送测试指令;接收NFC芯片执行所述测试指令后反馈的测试结果。本申请方案可以有效满足在产线上实现NFC测试(比如SPC校准)的需求,解决了当前测试方式无法通过在产线上推广使用的问题,提高了生产效率。

Description

NFC芯片测试方法、装置、终端设备以及存储介质
技术领域
本申请涉及测试技术领域,尤其涉及一种NFC芯片测试方法、装置、终端设备以及存储介质。
背景技术
手机生产商在生产出货时,需要对出厂手机做一个SPC(Self PhaseCompensation,自相位补偿)相位校准,其目的是对不同手机根据硬件的差异进行相位补偿,以达到出厂要求。
目前,对于手机使用的NFC芯片进行SPC相位校准时,通常由厂商提供的测试工厂pnscr(二进制bin文件)作为SPC校准工具。在调试中,实现SPC相位补偿的方法是,在手机上下载可调试的userdebug软件版本,然后连接手机到电脑,通过adb调试工具在电脑上运行adb shell命令,然后使用pnscr-p[CMD]类似的命令,以此实现SPC相位校准。
以上实现SPC相位校准的方法,在程序员开发调试中可行,但是对于工厂产线生产环节,却并不适用,主要有以下几点原因:
1、在工厂产线中,不可能让检测人员执行adb shell类似的调试命令,更无法执行pnscr命令,主要是因为条件不允许,并且产线生产所用的手机软件版本因为安全原因也不允许这么操作。
2、即使公司开发人员开发了一套方法,比如在工模界面来调用pnscr命令,在调试版本上或许可行,但是在用户/生产版本上不行,主要是权限的问题。根据安全规范,在Android上,应用App是无法直接调用/vendor/bin/下面的pnscr来运行的,如果使用超级权限,则存在漏洞,不符合安全规范。
因此,现有技术方案如果使用超级权限,则存在漏洞,不符合安全规范;如果没有超级权限,通过shell终端命令方法,则对开发人员上可行,但是在工厂产线上不适用于场测人员,并且手动操作也不方便快捷。
发明内容
本申请的主要目的在于提供一种NFC芯片测试方法、装置、终端设备以及存储介质,旨在满足NFC功能产线测试需求,解决当前测试方式无法在产线上推广使用的问题。
为实现上述目的,本申请提供一种NFC芯片测试方法,所述NFC芯片测试方法包括以下步骤:
接收NFC芯片测试请求;
根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令;
接收所述NFC芯片执行所述测试指令后反馈的测试结果。
本申请实施例还提出一种NFC芯片测试装置,所述NFC芯片测试装置包括:
请求接收模块,用于接收NFC芯片测试请求;
脚本调用模块,用于根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令;
结果反馈模块,用于接收所述NFC芯片执行所述测试指令后反馈的测试结果。
本申请实施例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的NFC芯片测试程序,所述NFC芯片测试程序被所述处理器执行时实现如上所述的NFC芯片测试方法的步骤。
本申请实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有NFC芯片测试程序,所述NFC芯片测试程序被处理器执行时实现如上所述的NFC芯片测试方法的步骤。
本申请实施例提出的NFC芯片测试方法、装置、终端设备以及存储介质,通过接收NFC芯片测试请求;根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令;接收所述NFC芯片执行所述测试指令后反馈的测试结果。由此,通过功能脚本的调用,本申请实施例方案可以有效满足在产线上实现NFC测试(比如SPC校准)的需求,解决了当前测试方式无法通过在产线上推广使用的问题。本方案不仅可以用于产线上操作,而且操作人员无需专业知识亦可操盘,从而提高了生产效率。
附图说明
图1为本申请NFC芯片测试装置所属终端设备的功能模块示意图;
图2为本申请NFC芯片测试方法一示例性实施例的流程示意图;
图3为本申请NFC芯片测试方法另一示例性实施例的流程示意图;
图4为本申请NFC芯片测试方法又一示例性实施例的流程示意图;
图5为本申请NFC芯片测试方法又一示例性实施例的流程示意图;
图6为本申请实施例SPC校准方案涉及的系统架构示意图;
图7为本申请实施例实现SPC校准的流程示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例的主要解决方案是:通过接收NFC芯片测试请求;根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令;接收所述NFC芯片执行所述测试指令后反馈的测试结果。由此,通过功能脚本的调用,本发明实施例方案可以有效满足在产线上实现NFC测试(比如SPC校准)的需求,解决了当前测试方式无法通过在产线上推广使用的问题。本方案不仅可以用于产线上操作,而且操作人员无需专业知识亦可操盘,从而提高了生产效率。
本申请实施例涉及的技术术语:
SPC,Self Phase Compensation,自相位补偿;
Felica,日本NFC的一种NFC标准。
hidl接口:HAL(HardwareAbstractionLayer,硬件抽象层)接口定义语言(简称HIDL)是用于指定HAL和其用户之间的接口的一种接口描述语言(IDL)。HIDL允许指定类型和方法调用(会汇集到接口和软件包中)。从更广泛的意义上来说,HIDL是用于在可以独立编译的代码库之间进行通信的系统。
本申请实施例考虑到,现有相关方案中,对于手机使用的NFC芯片进行SPC相位校准时,通常由厂商提供的测试工厂pnscr(二进制bin文件)作为SPC校准工具。在调试中,实现SPC相位补偿的方法是,在手机上下载可调试的userdebug软件版本,然后连接手机到电脑,通过adb调试工具在电脑上运行adb shell命令,然后使用pnscr-p[CMD]类似的命令,以此实现SPC相位校准。这种实现SPC相位校准的方法,在程序员开发调试中可行,但是对于工厂产线生产环节,却并不适用。
因此,本申请实施例提出解决方案,可以实现NFC功能产线测试,解决当前测试方式无法在产线上推广使用的问题。
具体地,参照图1,图1为本申请NFC芯片测试装置所属终端设备的功能模块示意图。该NFC芯片测试装置可以为独立于终端设备的、能够实现NFC功能及数据处理的装置,其可以通过硬件或软件的形式承载于终端设备上。该终端设备可以为手机、平板电脑等具有数据处理功能的智能移动终端,还可以为具有数据处理功能的固定终端设备或服务器等。
在本实施例中,该NFC芯片测试装置所属终端设备至少包括输出模块110、处理器120、存储器130以及通信模块140。
存储器130中存储有操作系统以及NFC芯片测试程序,NFC芯片测试装置可以将预置的功能脚本、接收的NFC芯片测试请求、当前运行的功能脚本代码,以及NFC芯片执行当前测试指令后反馈的测试结果等信息存储于该存储器130中;输出模块110可为显示屏、扬声器等。通信模块140可以包括WIFI模块、移动通信模块以及蓝牙模块等,通过通信模块140与外部设备或服务器进行通信。
其中,存储器130中的NFC芯片测试程序被处理器执行时实现以下步骤:
接收NFC芯片测试请求;
根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令;
接收所述NFC芯片执行所述测试指令后反馈的测试结果。
进一步地,存储器130中的NFC芯片测试程序被处理器执行时还实现以下步骤:
进一步地,存储器130中的NFC芯片测试程序被处理器执行时还实现以下步骤:
接收终端上层应用触发的NFC芯片测试请求。
进一步地,存储器130中的NFC芯片测试程序被处理器执行时还实现以下步骤:
判断所述NFC芯片的NFC功能是否关闭;
若所述NFC芯片的NFC功能已关闭,则执行步骤:根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令;
若所述NFC芯片的NFC功能未关闭,则关闭所述NFC芯片的NFC功能。
进一步地,存储器130中的NFC芯片测试程序被处理器执行时还实现以下步骤:
根据所述NFC芯片测试请求,调用预置的hidl接口;
通过所述预置的hidl接口调用预置的核心指令库的API接口,获取对应的功能脚本;
运行所述功能脚本,向所述NFC芯片发送测试指令。
进一步地,存储器130中的NFC芯片测试程序被处理器执行时还实现以下步骤:
获取预设的测试需求;
为所述预设的测试需求配置对应的功能脚本;
将配置的功能脚本存储在终端的所述核心指令库。
本实施例通过上述方案,具体通过接收NFC芯片测试请求;根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令;接收所述NFC芯片执行所述测试指令后反馈的测试结果。由此,通过功能脚本的调用,本申请实施例方案可以有效满足在产线上实现NFC测试(比如SPC校准)的需求,解决了当前测试方式无法通过在产线上推广使用的问题。本方案不仅可以用于产线上操作,而且操作人员无需专业知识亦可操盘,从而提高了生产效率。
基于上述终端设备架构但不限于上述架构,提出本申请方法实施例。
参照图2,图2为本申请NFC芯片测试方法一示例性实施例的流程示意图。所述NFC芯片测试方法包括以下步骤:
步骤S101,接收NFC芯片测试请求;
本实施例方法的执行主体可以是一种NFC芯片测试装置,也可以是一种NFC芯片测试终端设备或服务器,本实施例以NFC芯片测试装置进行举例,该NFC芯片测试装置可以集成在具有数据处理功能的智能手机、平板电脑等终端设备上,该终端设备上配置有NFC芯片,通过NFC芯片实现NFC功能。
其中,NFC芯片是指硬件芯片,NFC近场通信功能的载体。
本实施例方案主要实现但不限于在产线上进行NFC测试,满足在产线上实现NFC测试(比如SPC校准)的需求,解决当前测试方式无法在产线上推广使用的问题。
具体地,在需要对NFC芯片进行测试时,首先获取NFC芯片测试请求,该NFC芯片测试请求可以由测试人员通过终端设备上层应用触发,即可以在终端设备上安装用于测试NFC芯片的应用APP,测试人员点击运行该测试NFC芯片的应用APP触发NFC芯片测试请求。NCF芯片测试装置接收终端上层应用触发的NFC芯片测试请求。
步骤S102,根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令;
NCF芯片测试装置在接收到终端上层应用触发的NFC芯片测试请求后,根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令。
其中,本实施例方案默认NFC芯片的NFC功能处于关闭状态的场景,因为考虑互斥的原因,在进行NFC芯片测试之前,必须要把NFC关闭,即本实施例方案适用于NFC功能不打开进行测试的场景。
在本实施例中,预先根据不同的测试需求,配置有相应的功能脚本。
本实施例方案可以实现对NFC芯片多种特定功能的测试,这些特定功能包括但不限于:SPC校验、读取CPLC(一种数据库),读取NFC FW(固件)版本,设置NFC进入reader状态等。
同时,为对应的NFC芯片特定功能配置相应的功能脚本,即将实现特定功能的相关指令放置在一个脚本中,不同的功能形成不同的脚本,比如SPC校准有其对应的功能脚本,而FW版本也有自己的功能脚本,这样只要设计一套测试软件,通过测试软件来读取功能脚本的内容并与NFC芯片进行交互,由NFC芯片根据功能脚本中的指令执行相应的功能来对NFC芯片进行测试,并将最后测试结果返回给测试调用者(即测试人员),由调用者来决断测试数据是否符合要求。
具体地,作为一种实施方式,本实施例在终端软件架构内设置有实现NFC功能测试的hidl接口,以及核心指令库,其中,核心指令库配置libpnscr.so接口模块。
以Android系统终端为例,在该终端设备上设置实现NFC测试功能的hidl接口,该实现NFC测试功能的hidl接口主要是按照Android O以后标准进行接口封装,对下调用libpnscr.so接口模块,对上提供标准的接口给应用APP调用,比如工模EngineerMode APP可以按Android标准实现直接调用,实现从应用APP层到hal/hidl层的调用转换。
libpnscr.so接口模块是本方案的核心模块,主要是负责与NFC芯片进行交互,包括NCI(Network Command Interpreter,网络命令解释器)指令封装和指令解析、错误异常处理等,同时为了功能调用实现,将不同功能封装成不同API接口给上层Android hidl调用(不同的功能读取对应预置于终端设备上的功能脚本)。
具体实现时,NCF芯片测试装置在接收到终端上层应用触发的NFC芯片测试请求后,根据所述NFC芯片测试请求,调用预置的hidl接口;
通过所述预置的hidl接口调用预置的核心指令库中libpnscr.so接口模块的API接口,获取对应的功能脚本;
然后,运行对应的功能脚本,向所述NFC芯片发送测试指令,由NFC芯片执行测试指令,实现对特定功能的测试,比如SPC校验、读取CPLC,读取NFC FW(固件)版本,设置NFC进入reader状态等,最终得到测试结果。
NFC芯片将测试结果反馈给NCF芯片测试装置。
步骤S103,接收所述NFC芯片执行所述测试指令后反馈的测试结果。
NCF芯片测试装置接收所述NFC芯片执行所述测试指令后反馈的测试结果,将测试结果提供给测试人员。
本实施例通过上述方案,具体通过接收NFC芯片测试请求;根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令;接收所述NFC芯片执行所述测试指令后反馈的测试结果。由此,通过功能脚本的调用,本申请实施例方案可以有效满足在产线上实现NFC测试(比如SPC校准)的需求,解决了当前测试方式无法通过在产线上推广使用的问题。本方案不仅可以用于产线上操作,而且操作人员无需专业知识亦可操盘,从而提高了生产效率。
参照图3,图3为本申请NFC芯片测试方法另一示例性实施例的流程示意图。基于上述图2所示的实施例,在本实施例中,所述方法还包括:
步骤S104,将所述测试结果与预设的测试标准进行比对,根据比对结果校准所述测试结果。
相比上述图2所示的实施例,本实施例还包括判断NFC测试结果是否符合预设要求的方案。
如前所述,本实施例方案可以实现对NFC芯片多种特定功能的测试,这些特定功能包括但不限于:SPC校验、读取CPLC,读取NFC FW(固件)版本,设置NFC进入reader状态等。
同时,为对应的NFC芯片特定功能配置相应的功能脚本,即将实现特定功能的相关指令放置在一个脚本中,不同的功能形成不同的脚本,比如SPC校准有其对应的功能脚本,而FW版本也有自己的功能脚本。
此外,还配置设计一套测试软件,通过该测试软件来读取功能脚本的内容并与NFC芯片进行交互,由NFC芯片根据功能脚本中的指令执行相应的功能来对NFC芯片进行测试,并将最后测试结果返回给测试调用者(即测试人员),由调用者来决断测试数据是否符合要求。
其中,对于不同的NFC功能测试需求,可以由产线测试人员或开发人员设置相应的测试标准,供产线测试人员在调用测试软件对NFC芯片进行测试时,将NFC芯片反馈的测试结果与预设的测试标准进行比对,根据比对结果判断测试数据是否符合要求,如果测试数据不符合预设的要求,则可以根据比对结果校准测试结果,比如修改NFC芯片的相关功能参数或代码。
本实施例通过上述方案,具体通过接收NFC芯片测试请求;根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令;接收所述NFC芯片执行所述测试指令后反馈的测试结果,并将所述测试结果与预设的测试标准进行比对,根据比对结果校准所述测试结果。由此,通过功能脚本的调用,本申请实施例方案可以有效满足在产线上实现NFC测试(比如SPC校准)的需求,解决了当前测试方式无法通过在产线上推广使用的问题。
相比现有技术,本申请实施例方案提出的一种实现NFC测试的方法,通过配置的NFC收发数据核心模块(libpnscr.so接口模块)和xxx.pnscr功能脚本配置不同的需求,可以有效解决类似SPC校准或者其它NFC测试需求,不仅可以用于产线上操作,而且操作人员无需专业知识亦可操盘,提高了生产效率。
参照图4,图4为本申请NFC芯片测试方法又一示例性实施例的流程示意图。基于上述图3所示的实施例,在本实施例中,在上述步骤S102,根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令的步骤之前还包括:
步骤S1021,判断所述NFC芯片的NFC功能是否关闭;
若所述NFC芯片的NFC功能已关闭,则执行步骤S102:根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令;
若所述NFC芯片的NFC功能未关闭,则执行步骤S1022;
步骤S1022,关闭所述NFC芯片的NFC功能,并执行步骤S102。
相比上述图3所示的实施例,本实施例还包括检测NFC芯片的NFC功能是否关闭的方案。
具体地,NFC芯片测试装置在接收到应用上层触发的NFC芯片测试请求后,首先,判断所述NFC芯片的NFC功能是否关闭,若所述NFC芯片的NFC功能已关闭,则执行下一步:根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令。
若所述NFC芯片的NFC功能未关闭,则先关闭所述NFC芯片的NFC功能,然后再执行下一步:根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令。
本实施例方案适用于NFC芯片的NFC功能处于关闭状态的场景,因为考虑互斥的原因,在进行NFC芯片测试之前,必须要把NFC关闭,即本实施例方案适用于NFC功能不打开进行测试的场景。
本实施例通过上述方案,在接收到NFC芯片测试请求时,判断所述NFC芯片的NFC功能是否关闭,在NFC芯片的NFC功能已关闭时,根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令;接收所述NFC芯片执行所述测试指令后反馈的测试结果,并将所述测试结果与预设的测试标准进行比对,根据比对结果校准所述测试结果。由此,通过功能脚本的调用,本申请实施例方案可以有效满足在产线上实现NFC测试(比如SPC校准)的需求,解决了当前测试方式无法通过在产线上推广使用的问题。
相比现有技术,本申请实施例方案提出的一种实现NFC测试的方法,通过配置的NFC收发数据核心模块(libpnscr.so接口模块)和xxx.pnscr功能脚本配置不同的需求,可以有效解决类似SPC校准或者其它NFC测试需求,不仅可以用于产线上操作,而且操作人员无需专业知识亦可操盘,提高了生产效率,而且在进行NFC芯片测试之前,确定NFC功能关闭,从而避免了NFC功能与NFC芯片测试流程互斥造成的不良影响,从而提升了NFC芯片测试准确性和有效性。
参照图5,图5为本申请NFC芯片测试方法又一示例性实施例的流程示意图。基于上述图4所示的实施例,在本实施例中,在上述步骤S102,根据NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令的步骤之前还包括:
步骤S1011,获取预设的测试需求;
步骤S1012,为所述预设的测试需求配置对应的功能脚本;
步骤S1013,将配置的功能脚本存储在终端的所述核心指令库。
相比上述图4所示的实施例,本实施例还包括配置功能脚本的方案。
具体地,在本实施例中,根据不同的测试需求,配置有相应的功能脚本。其中,测试需要可以由开发人员配置,也可以由产线测试人员根据实际需求配置。
本实施例方案可以实现对NFC芯片多种特定功能的测试,这些特定功能包括但不限于:SPC校验、读取CPLC,读取NFC FW(固件)版本,设置NFC进入reader状态等。
同时,为对应的NFC芯片特定功能配置相应的功能脚本,即将实现特定功能的相关指令放置在一个脚本中,不同的功能形成不同的脚本,比如SPC校准有其对应的功能脚本,而FW版本也有自己的功能脚本等,并将配置的功能脚本存储在终端的核心指令库中。
这样只要设计一套测试软件,通过测试软件来读取功能脚本的内容并与NFC芯片进行交互,由NFC芯片根据功能脚本中的指令执行相应的功能来对NFC芯片进行测试,并将最后测试结果返回给测试调用者(即测试人员),由调用者来决断测试数据是否符合要求。
本实施例通过上述方案,根据不同的测试需求配置对应的功能脚本,在接收到NFC芯片测试请求时,判断所述NFC芯片的NFC功能是否关闭,在NFC芯片的NFC功能已关闭时,根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令;接收所述NFC芯片执行所述测试指令后反馈的测试结果,并将所述测试结果与预设的测试标准进行比对,根据比对结果校准所述测试结果。由此,通过功能脚本的调用,本申请实施例方案可以有效满足在产线上实现NFC测试(比如SPC校准)的需求,解决了当前测试方式无法通过在产线上推广使用的问题。
相比现有技术,本申请实施例方案提出的一种实现NFC测试的方法,通过配置的NFC收发数据核心模块(libpnscr.so接口模块)和xxx.pnscr功能脚本配置不同的需求,可以有效解决类似SPC校准或者其它NFC测试需求,不仅可以用于产线上操作,而且操作人员无需专业知识亦可操盘,提高了生产效率,而且在进行NFC芯片测试之前,确定NFC功能关闭,从而避免了NFC功能与NFC芯片测试流程互斥造成的不良影响,从而提升了NFC芯片测试准确性和有效性。
以下通过对NFC芯片进行自相位补偿SPC校准为例,对本申请实施例方案进行详细阐述。
如上所述,当前相关方案只适用于开发人员操作,无法在产线售后等非开发环境下推广使用。而本申请实施例方案实现一种NFC SPC校准方法,其基本实现原理如下:
通过提供很多功能源代码,并进行标准接口封装给第三方调用,这样第三方可以按照标准方式进行函数调用,从而可以在Android上实现各种各样的丰富功能,而不用管底层如何实现。本方案的实现也是基于这个基本原理实施的。
参照图6,图6为申请本实施例SPC校准方案涉及的系统架构示意图。
如图6所示,系统架构由下到上包括:
101:NFC芯片,这里指硬件芯片,NFC近场通信功能的载体。
102:NFC驱动对外的节点设备,HAL软件可通过这个节点与NFC交互来收发数据,可以认为它是负责与NFC芯片交互的一个节点。
103:功能脚本,可以认为是实现某个特定功能的脚本,比如:读取CPLC,读取NFCFW版本,设置NFC进入reader状态等。一个脚本一般由多条NFC NCI指令构成。
将SPC实现功能的相关指令放到一个脚本中,不同的功能形成不同的脚本,比如SPC校准有自己的功能脚本,而FW版本也有自己的功能脚本,这样只要设计一套软件,通过软件来读取脚本的内容并与NFC芯片进行交互,同时把最后结果返回给调用者,由调用者来判断测试数据是否符合要求(如图104模块)。
其中,调用者通过调用功能脚本,并判断测试数据是否符合要求的实现过程可以如下:
调用者通过上层应用APP触发调用对应的功能脚本,向NFC芯片发送测试指令,获取校准结果,将该校准结果与代码设计时的阈值范围进行比较,判断校准结果是否符合要求。
104:libpnscr.so接口模块,是本方案的核心,它主要是负责与NFC芯片进行交互,包括NCI指令封装和指令解析,错误异常处理,同时为了功能调用实现,将不同功能封装成不同API给上层Android hidl调用(不同的功能读取对应预置于终端设备上的功能脚本)。
105:实现pnscr功能的hidl接口,这里主要是按照Android O以后标准进行接口封装,对下调用libpnscr.so接口,对上提供标准的接口给应用APP调用,比如工模EngineerMode APP可以按Android标准实现直接调用,实现从应用APP层到hal/hidl层的调用转换。
106:NFC Hal,可以认为是NFC hidl接口,向下直接与设备节点/dev/nq-nci交互,向上则主要是NfcService(NFC服务)调用,是实现NFC功能的核心协议。
107:NFC服务,Nfcservice,是应用APP调用NFC接口所要经过的一个服务程序。
108:SPC服务(spc service),这里主要是为了给第三方调用方便,将添加的spcservice添加到systemserver中,不必单独实现一个service。
109:工模APP,EngineerMode APP,这里是产线测试用户操作入口,产线人员通过操作手机进入工模APP,可以选择是否进行SPC相位补偿校准。
如图7所示,图7是本申请实施例一种基于上述系统架构实现SPC校准的流程示意图。
在工模APP启动进入SPC校验流程后,在进行SPC校准操作之前要先关闭NFC功能,这是是因为软件互斥原因,否则2个进程同时与NFC芯片交互,后来者将无法正常与NFC进行交互。
之后,调用SPC hidl接口,进而调用libpnscr.so接口模块中spc API接口获取对应的功能脚本,并通过libpnscr.so接口模块与NFC芯片进行交互对NFC芯片进行测试,获得测试结果,同时把测试结果返回给调用者,由调用者来判断测试数据是否符合要求。
相比现有相关方案,本实施例方案中,对pnscr服务,厂商可以自定义它的权限,通过OEM配置,可以实现在NFC之间发送或者接收指令数据,而且本方案将SPC功能接口已经封装成API,以代码调用的形式存在,所以上层应用就可以按照Android指定的标准接口调用形式来调用这些API,进而通过libpnscr指令库等完成SPC校准。
由上可知,本申请方案可以有效满足在产线上实现NFC SPC校准的需求,解决了当前测试方式无法通过在产线上推广使用的问题。
本方案也适用于其它NFC不打开也要进行测试的场景。比如,用户手机返回到厂商维修中心维修,维修完成之后,一般检测人员都要对手机进行全功能检测(避免维修过程中把其它模块弄坏)。但是现在手机上点开机且未曾锁屏之前(用户手机一般都会设置锁屏密码来保护安全),Android系统定义了NFC服务被限制启动,但是如果有需求要验证NFC功能,则此种场景下,可以根据如上所述方案,只要对NFC检测的指令进行封装,放在/vendor/etc/下面,然后再在hidl里面添加相应的接口,以提供给应用调用,这样就实现了NFC服务不启动的情况下也可以检验NFC功能是否正常。
此外,本申请实施例还提出一种NFC芯片测试装置,所述NFC芯片测试装置包括:
请求接收模块,用于接收NFC芯片测试请求;
脚本调用模块,用于根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令;
结果反馈模块,用于接收所述NFC芯片执行所述测试指令后反馈的测试结果。
本实施例实现NFC芯片测试的原理及实施过程,请参照上述各实施例,在此不再赘述。
此外,本申请实施例还提出一种终端设备,其特征在于,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的NFC芯片测试程序,所述NFC芯片测试程序被所述处理器执行时实现如上述实施例所述的NFC芯片测试方法的步骤。
由于本NFC芯片测试程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
此外,本申请实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有NFC芯片测试程序,所述NFC芯片测试程序被处理器执行时实现如上述实施例所述的NFC芯片测试方法的步骤。
由于本NFC芯片测试程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
相比现有技术,本申请实施例提出的NFC芯片测试方法、装置、终端设备以及存储介质,通过接收NFC芯片测试请求;根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令;接收所述NFC芯片执行所述测试指令后反馈的测试结果。由此,通过功能脚本的调用,本申请实施例方案可以有效满足在产线上实现NFC测试(比如SPC校准)的需求,解决了当前测试方式无法通过在产线上推广使用的问题。本方案不仅可以用于产线上操作,而且操作人员无需专业知识亦可操盘,从而提高了生产效率。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,被控终端,或者网络设备等)执行本申请每个实施例的方法。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

Claims (10)

1.一种NFC芯片测试方法,其特征在于,所述NFC芯片测试方法包括以下步骤:
接收NFC芯片测试请求;
根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令;
接收所述NFC芯片执行所述测试指令后反馈的测试结果。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述测试结果与预设的测试标准进行比对,根据比对结果校准所述测试结果。
3.根据权利要求1所述的方法,其特征在于,所述接收NFC芯片测试请求的步骤包括:
接收终端上层应用触发的NFC芯片测试请求。
4.根据权利要求1所述的方法,其特征在于,所述根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令的步骤之前还包括:
判断所述NFC芯片的NFC功能是否关闭;
若所述NFC芯片的NFC功能已关闭,则执行步骤:根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令;
若所述NFC芯片的NFC功能未关闭,则关闭所述NFC芯片的NFC功能。
5.根据权利要求3所述的方法,其特征在于,所述根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令的步骤包括:
根据所述NFC芯片测试请求,调用预置的hidl接口;
通过所述预置的hidl接口调用预置的核心指令库的API接口,获取对应的功能脚本;
运行所述功能脚本,向所述NFC芯片发送测试指令。
6.根据权利要求5所述的方法,其特征在于,所述根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令的步骤之前还包括:
获取预设的测试需求;
为所述预设的测试需求配置对应的功能脚本;
将配置的功能脚本存储在终端的所述核心指令库。
7.根据权利要求1-6中任一项所述的方法,其特征在于,所述NFC芯片测试至少包括:对所述NFC芯片进行自相位补偿SPC校准。
8.一种NFC芯片测试装置,其特征在于,所述NFC芯片测试装置包括:
请求接收模块,用于接收NFC芯片测试请求;
脚本调用模块,用于根据所述NFC芯片测试请求,调用对应的功能脚本,向所述NFC芯片发送测试指令;
结果反馈模块,用于接收所述NFC芯片执行所述测试指令后反馈的测试结果。
9.一种终端设备,其特征在于,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的NFC芯片测试程序,所述NFC芯片测试程序被所述处理器执行时实现如权利要求1-8中任一项所述的NFC芯片测试方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有NFC芯片测试程序,所述NFC芯片测试程序被处理器执行时实现如权利要求1-8中任一项所述的NFC芯片测试方法的步骤。
CN202010545271.0A 2020-06-15 2020-06-15 Nfc芯片测试方法、装置、终端设备以及存储介质 Withdrawn CN111737121A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010545271.0A CN111737121A (zh) 2020-06-15 2020-06-15 Nfc芯片测试方法、装置、终端设备以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010545271.0A CN111737121A (zh) 2020-06-15 2020-06-15 Nfc芯片测试方法、装置、终端设备以及存储介质

Publications (1)

Publication Number Publication Date
CN111737121A true CN111737121A (zh) 2020-10-02

Family

ID=72649323

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010545271.0A Withdrawn CN111737121A (zh) 2020-06-15 2020-06-15 Nfc芯片测试方法、装置、终端设备以及存储介质

Country Status (1)

Country Link
CN (1) CN111737121A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112560082A (zh) * 2020-12-01 2021-03-26 Oppo(重庆)智能科技有限公司 一种锁定终端设备的方法及终端设备
CN112817872A (zh) * 2021-02-26 2021-05-18 苏州挚途科技有限公司 开发测试系统及方法
CN115002815A (zh) * 2022-07-18 2022-09-02 北京紫光青藤微系统有限公司 一种nfc系统的测试方法、装置、可读介质及电子设备
CN118054867A (zh) * 2024-01-17 2024-05-17 无锡宇宁智能科技有限公司 针对多型号nfc的功能检验方法、装置、设备及介质

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112560082A (zh) * 2020-12-01 2021-03-26 Oppo(重庆)智能科技有限公司 一种锁定终端设备的方法及终端设备
CN112560082B (zh) * 2020-12-01 2023-09-08 Oppo(重庆)智能科技有限公司 一种锁定终端设备的方法及终端设备
CN112817872A (zh) * 2021-02-26 2021-05-18 苏州挚途科技有限公司 开发测试系统及方法
CN112817872B (zh) * 2021-02-26 2024-05-28 苏州挚途科技有限公司 开发测试系统及方法
CN115002815A (zh) * 2022-07-18 2022-09-02 北京紫光青藤微系统有限公司 一种nfc系统的测试方法、装置、可读介质及电子设备
CN118054867A (zh) * 2024-01-17 2024-05-17 无锡宇宁智能科技有限公司 针对多型号nfc的功能检验方法、装置、设备及介质

Similar Documents

Publication Publication Date Title
CN111737121A (zh) Nfc芯片测试方法、装置、终端设备以及存储介质
US7363033B2 (en) Method of and system for testing equipment during manufacturing
CN110580154A (zh) 基于h5接入方式的接入方法及其接入组件和移动终端
CN104978263A (zh) 一种移动端应用程序测试方法及系统
CN111651169B (zh) 基于web容器的区块链智能合约运行方法及系统
US12153907B2 (en) Method for operating second system application on first system, terminal device and storage medium
CN107463407B (zh) 指纹芯片初始化方法及装置
CN105302722A (zh) Cts自动测试方法及装置
KR20140106857A (ko) 프로토콜 적합성 검증 방법, 이를 실행하는 장치 및 이를 실행하는 시스템
KR20090122665A (ko) 테스트 라이브러리를 이용하는 휴대폰 어플리케이션 검증시스템 및 그 방법
CN106681925A (zh) 基于UIAutomator的自动化测试方法及装置
CN113099439A (zh) Ota升级压力测试的方法、装置、计算机设备和存储介质
CN112231206A (zh) 应用程序测试的脚本编辑方法、计算机可读存储介质及测试平台
CN103699485B (zh) 应用程序调试方法和装置
CN109347578B (zh) 射频性能测试方法、装置、计算机设备和可读存储介质
CN106294119B (zh) 测试调度系统、方法及终端设备
CN115577359A (zh) 安卓应用程序隐私权限安全检测方法、装置、设备及介质
CN113127329B (zh) 脚本调试方法、装置及计算机存储介质
CN115002548A (zh) 电视平台应用接口调用方法、装置、终端设备及存储介质
CN108958785A (zh) 一种应用程序升级方法及装置
CN108536607B (zh) Ui测试方法、设备及可读存储介质
CN111209036A (zh) 配置系统自助模式的方法和装置
US20060248403A1 (en) Method and apparatus for testing communication software
CN112596751B (zh) 应用程序安装包的编译方法、终端、服务器及存储介质
CN115934156A (zh) Api接口版本自动匹配方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication

Application publication date: 20201002

WW01 Invention patent application withdrawn after publication