1、V
SIM 功能说明
开机 VSIM 注册鉴权流程主要包含开机实体卡注册、实体卡建立数据连接、虚拟卡初始化、虚拟卡处理鉴权请求、虚拟卡完成鉴权、虚拟卡建立数据连接等过程。具体流程如图 1-1。
此鉴权流程可以选择 lib
ATCI 接口和 APK 接口进行初始化,libatci 接口适用于没有
Android 系统且无法安 装 APK 的情况。
使用 libatci 接口初始化
步骤 1
APP 设置卡槽模式
如果需要设置指定卡槽为虚拟卡,请先使用 VSIM_query_virtual 查询当前卡槽模式,然后使用VSIM_set_virtual 设置卡槽模式。推荐使用卡 2 作为 VSIM 卡槽,卡 1 作为实体卡槽。
步骤 1 配置
APN 到
Modem
APP 在确定虚拟卡信息后,将当前卡使用的 APN 信息配置到 Modem(需要同步配置到 Android APN数据库中),Modem 在开协议栈后使用该 APN 做网络注册,能够降低 APN 配置被拒的概率。配置 APN 需要执行的 AT 命令如下:
AT+CGDCONT=1,"IPV4V6","APN","",0,0 AT+CGPCO=0,"user","password",1,authtype
其中"IPV4V6"、"APN"、"user"、"password"请根据实际 APN 信息配置。authtype 没有指定时请默认为 3;可以调用接口 7 直接发送 AT,AT 命令中的引号需要保留。
步骤 2 VSIM 初始化
VSIM 卡 APN 配置完成后,使用 VSIM_init 接口进行 VSIM 初始化。
步骤 3 鉴权请求响应
APP 在收到鉴权请求后,首先通过 VSIM_set_authid 接口设置发送鉴权数据使用的数据连接卡,然后切换数据连接到对应的实体卡上。
----结束
使用 APK 接口初始化
步骤 1 设置卡槽模式
通过接口 VSIMSetVirtual 设置卡槽模式。
步骤 2 配置 APN 到 Modem
通过接口 attachAPN 配置 APN 到 Modem。此接口只将 APN 发送到 Modem,需要客户 APK 实现将 APN 添加到 APN 数据库中。
步骤 3 VSIM 初始化
VSIM 卡 APN 配置完成后,使用 VSIMInit 接口进行 VSIM 初始化。
步骤 4 鉴权请求响应
APP 在收到鉴权请求后,首先通过 VSIMSetAuthid 接口设置发送鉴权数据使用的数据连接卡,然后切换数据连接到对应的实体卡上。
----结束
2、接口定义
2.1 libatci 接口定义
2.1.1 VSIM_init
【函数功能】
对应卡槽的 VSIM 初始化。
【函数原型】
int VSIM_init(int phoneId, VSIM_COMMAND pfnCommand, int mode)
【参数说明】
●phoneId:初始化的卡槽 id,0 ≤ phoneId ≤ 1。
●pfnCommand:传入调用方处理鉴权请求的函数
指针。展锐 VSIM
模块调用该函数将鉴权数据传递给 APP 处理,需要调用方定义该函数或使用展锐现有通用接口定义,在APP 处理完鉴权后将鉴权结果返回给展锐 VSIM 模块。
●mode:VSIM 初始化方式。
- 0:VSIM 全初始化,应用在 VSIM 无卡状态下初始化。
- 1:VSIM 卡状态正常情况下,应用 APP 进程异常退出时,只初始化 APP 和展锐 VSIM 模块通信
SOCket,不重启 VSIM。
【返回值】
-操作成功:返回 1。
-操作失败:返回-1。
VSIM_COMMAND
【定义】
typedef unsigned char u8;
typedef unsigned short u16;
typedef int (*VSIM_COMMAND) (u8 slot, u8 *apdu_req, u16 apdu_req_len, u8 *apdu_rsp, u16 apdu_rsp_len);
【参数说明】
slot:鉴权请求卡槽 id。
apdu_req:鉴权请求数据指针。
apdu_req_len:鉴权请求数据长度。
apdu_rsp:鉴权响应数据指针。
apdu_rsplen:鉴权请求数据指针申请内存长度。
【返回值】
鉴权响应数据实际长度。
更多详细内容请下载附件查看
VSIM功能说明及接口定义介绍V1.0_nowatermark.pdf
(1.43 MB, 下载次数: 7, 售价: 1 RD币)