1.引入公开的头文件(IDCardControl.h)
#import "MainBle.framework/Headers/IDCardControl.h"
2.初始化IDCardControl
_mIDCardControl = [[IDCardControl alloc] initWithHost:@"你的ip地址" Port:端口];
3.签协议
_mIDCardControl.delegate = self;
4.扫描设备
[_mIDCardControl scanDevices];
// 扫描成功调用代理方法
#pragma mark - 扫描完成执行
-(void)didScanBleDevice:(NSMutableDictionary*) deviceList {
if (deviceList.count == 0) { // 没有扫描到设备
}
else
{
// 获得扫描到的设备列表(NSMutableDictionary*) deviceList, 处理结果
NSEnumerator *enumerator = [deviceList keyEnumerator];
// 设备名
NSString* key;
while (key = [enumerator nextObject]) {
//获取设备
CBPeripheral* p = [deviceList objectForKey:key];
// 做你要的处理
NSLog(@"设备:%@", p);
}
}
}
- 获取设备列表后连接设备
// 如果是身份证
[_mIDCardControl readIdCardInfo:@"连接的设备名"];
// 如果是sim卡
[_mIDCardControl readSimInfo:@"连接的设备名"];
6.获取卡的信息
// 成功会走协议方法
[_mIDCardControl getUserData];
7.是否为白卡
[_mIDCardControl isWhiteSIM];
8.写短信中心
[_mIDCardControl writeMessageCenterwithMessageCenterNum:@"短信中心号码"];
9.写IMSI
[_mIDCardControl writeIMSINum:@"IMSI号码"];
用到的协议方法(请全部实现), 可以做相应处理
- 蓝牙连接成功调用
- (void)connectBleSucess;
- 读取身份信息完成后调用
- (void) didReadCardInfo:(CardInfo*) cardInfo;
3.读取sim信息完成后调用
- (void) didReadSimInfo:(SimInfo*)simInfo;
4.失败时调用
- (void)executingTheCurrentOperationIsFailWithErrorCode:(ErrorCode)code withMessage:(NSString *)message;
5.写入成功时调用
- (void)writeSucessWithMessage:(NSString *)message;
不清楚的地方可以留言问我, 感谢您的使用.