第一步:接收 JHL SDK
从JHL 工程师手中拿到SDK demo后,请运行相应的demo并且走一遍全流程(搜索,连接,交易,取消交易,断开连接,相应的回调 .......),确保该demo能够正常的运行并且能够达到自己需要的效果。如果在运行demo的时候不能走完全流程,或者不是自己想要的效果,请及时联系 JHL 工程师 将问题尽量详细的描述 并且最好配上图片甚至相应的视频。
第二步:SDK 移植到相应的工程项目
鉴于部分用户在使用 JHL SDK 的时候,没有使用 JHL 的SDK 中的搜索方法进行搜索蓝牙设备,而是使用自己的设备搜索方法进行设备搜索,从而导致部分用户在搜索到设备后连接 JHL 设备出现异常(不能连接上),在此请按照以下两部进行检查
1,请确认在工程项目中使用 JHL 的搜索方法,并且调用 JHL 的设备连接的方法连接搜索到的 JHL 设备。
2,将 JHL 搜索的对象 与 工程项目搜索到的对象进行对比,查看二者的差异性并进行修改。
3,JHL SDK的各种功能的调用没有仅限于同一个控制器与同一个页面,也可以在不同的控制器调用不同的功能,如果出现在不同的控制器之间调用不同的功能的时候,出现功能无法调取的情况,甚至出现崩溃的情况,请确认方法是否调用正确,以及相应的回调方法是否实现。如果方法正确调用,并且回调方法已经实现,请先在同一个页面进行功能调取,然后在进行不同页面的功能调取。
第三步:功能引导
1,刷卡交易
[[JhlblueController sharedInstance] MagnCard:@“参数一”:@“参数一”:@“参数一”];
参数一:默认超时时间(毫秒)
参数二:需要交易的金额
参数三:刷卡的类型0x01 0x02 0x03 0x04
==0x01 设备上输提示输入金额 刷卡 输入密码
==0x02 蓝牙设备上输提 示输入金额 刷卡 无密码
==0x03 蓝牙设备上输提 刷卡 + 输入密码 无输入金额(例如查询余额)
==0x04 蓝牙设备上输提 刷卡 无输入金额 无密码(例如信用卡预授权完成等交易)
2,单独调取输入密码的方法
[[JhlblueController sharedInstance] getEncryPin];
相应的回调:
- (void)onGetEncPINComplete:(NSString*)msg :(NSString*)Data;
有些需求可以通过刷卡交易跟单独调取输入密码两者进行组合实现;