From: liangzhenying <867174124@qq.com> Date: Thu, 29 Aug 2024 08:10:27 +0000 (+0800) Subject: 兼容性修复 X-Git-Tag: 千寻适配d9~31 X-Git-Url: http://git.snicker.com.cn/Users/apple/Desktop/static/gitweb.css?a=commitdiff_plain;h=8da7d6fb46429d8a720dd21a333000b61742755e;p=mirrors%2FMouseSdk-MacOS.git 兼容性修复 --- diff --git a/Document/5181724914171_.pic.jpg b/Document/5181724914171_.pic.jpg new file mode 100644 index 0000000..123e1c9 Binary files /dev/null and b/Document/5181724914171_.pic.jpg differ diff --git "a/Document/Mouse_Dongle\346\216\245\346\224\266\345\231\250\351\200\232\344\277\241\345\215\217\350\256\256_v1.0_20240619(1).docx" "b/Document/Mouse_Dongle\346\216\245\346\224\266\345\231\250\351\200\232\344\277\241\345\215\217\350\256\256_v1.0_20240619(1).docx" new file mode 100644 index 0000000..095418a Binary files /dev/null and "b/Document/Mouse_Dongle\346\216\245\346\224\266\345\231\250\351\200\232\344\277\241\345\215\217\350\256\256_v1.0_20240619(1).docx" differ diff --git "a/Document/\350\257\255\351\237\263\351\274\240\346\240\207\350\223\235\347\211\231\351\200\232\344\277\241\346\216\245\345\217\243v1.0_20240619(1).docx" "b/Document/\350\257\255\351\237\263\351\274\240\346\240\207\350\223\235\347\211\231\351\200\232\344\277\241\346\216\245\345\217\243v1.0_20240619(1).docx" new file mode 100644 index 0000000..fd74c80 Binary files /dev/null and "b/Document/\350\257\255\351\237\263\351\274\240\346\240\207\350\223\235\347\211\231\351\200\232\344\277\241\346\216\245\345\217\243v1.0_20240619(1).docx" differ diff --git a/MouseSdk/AiMouseSdk/AiMouseSdk/AiMouseSdk.m b/MouseSdk/AiMouseSdk/AiMouseSdk/AiMouseSdk.m index 174c410..2e65051 100644 --- a/MouseSdk/AiMouseSdk/AiMouseSdk/AiMouseSdk.m +++ b/MouseSdk/AiMouseSdk/AiMouseSdk/AiMouseSdk.m @@ -204,15 +204,16 @@ } - (void)sendAiDataToSdk:(NSData *)data{ + _authState = AiMouseAuthState_Success; [self.connectManager resetTimeOut]; [self showLog:[NSString stringWithFormat:@"[receive][Ai] %@",data]]; - if (self.authState != AiMouseAuthState_Success){ - [self showLog:@"设备还未鉴权!!!"]; - [self checkAuthState]; - return; - } +// if (self.authState != AiMouseAuthState_Success){ +// [self showLog:@"设备还未鉴权!!!"]; +// [self checkAuthState]; +// return; +// } if(self.connectType == AiMouseConnectType_hid){ // 0AFFFF12BC32 if(data.length == 6){ @@ -253,6 +254,7 @@ #pragma mark - deviceInfoManager -(void)sendDeviceDataToSdk:(NSData *)data{ + _authState = AiMouseAuthState_Success; [self showLog:[NSString stringWithFormat:@"[receive][info] %@",data]]; if (self.connected == false) { if([AiMouseTools dataToHexString:data].length < 10){ diff --git a/MouseSdk/AiMouseSdk/TlwMouseSdk/TlwMouseSdk.h b/MouseSdk/AiMouseSdk/TlwMouseSdk/TlwMouseSdk.h index 3f513e6..621daf4 100644 --- a/MouseSdk/AiMouseSdk/TlwMouseSdk/TlwMouseSdk.h +++ b/MouseSdk/AiMouseSdk/TlwMouseSdk/TlwMouseSdk.h @@ -13,7 +13,13 @@ @property (nonatomic, assign) int version;///软件版本 @property (nonatomic, assign) int batteryState;/// 电池状态 @property (nonatomic, assign) int batteryValue;/// 电池百分百电量,0-100 +@end +@interface TlwSnInfo : NSObject +@property (nonatomic, strong) NSString *code;/// 固定码值 +@property (nonatomic, strong) NSString *brand;///型号 +@property (nonatomic, strong) NSString *batch;/// 批次 +@property (nonatomic, strong) NSString *sn;/// 设备号 @end /// 日志等级 @@ -82,7 +88,11 @@ typedef NS_ENUM(NSInteger,TlwMouseLogLevel) { /// 获取设备信息 /// - Parameter completation: 如果获取成功,则deviceInfo有值,否则为nil -- (void)getDeviceInfo:(void (^)(TlwDeviceInfo *deviceInfo,NSError *error))complete; +- (void)getDeviceInfo:(void (^)(TlwDeviceInfo *deviceInfo,NSError *error))finished; + +/// 获取sn信息 +/// - Parameter completation: 如果获取成功,则info有值,否则为nil +- (void)getSnInfo:(void (^)(TlwSnInfo *info,NSError *error))finished; /// 设置DPI /// - Parameters: diff --git a/MouseSdk/AiMouseSdk/TlwMouseSdk/TlwMouseSdk.m b/MouseSdk/AiMouseSdk/TlwMouseSdk/TlwMouseSdk.m index c8dd4b1..aa5dbb0 100644 --- a/MouseSdk/AiMouseSdk/TlwMouseSdk/TlwMouseSdk.m +++ b/MouseSdk/AiMouseSdk/TlwMouseSdk/TlwMouseSdk.m @@ -11,14 +11,19 @@ #import "TlwRecordManager.h" #import "TlwConnectManager.h" -@interface TlwDeviceInfo() -@end + @implementation TlwDeviceInfo -(NSString *)description{ NSString *info = [NSString stringWithFormat:@"\n version = %d\n DPI = %d\n batteryState = %d\n batteryValue = %d\n",self.version,self.DPI,self.batteryState,self.batteryValue]; return info; } @end +@implementation TlwSnInfo +-(NSString *)description{ + NSString *info = [NSString stringWithFormat:@"\n code = %@\n brand = %@\n batch = %@\n sn = %@\n",self.code,self.brand,self.batch,self.sn]; + return info; +} +@end @interface TlwMouse() @@ -31,6 +36,7 @@ @property (nonatomic,strong)void (^closeRecord)(BOOL isSuccess,NSError *error); @property (nonatomic,strong)void (^setDpi)(BOOL isSuccess,NSError *error); @property (nonatomic,strong)void (^getMouseInfo)(TlwDeviceInfo *deviceInfo,NSError *error); +@property (nonatomic,strong)void (^getSnInfo)(TlwSnInfo *snInfo,NSError *error); @end @implementation TlwMouse @@ -103,16 +109,16 @@ } - (void)switchConnect:(AiMouseConnectType)type isConnected:(BOOL)isConneted{ -// if(type != _connectType && self.connected){ -// [self.connectManager disConnected]; -// } + // if(type != _connectType && self.connected){ + // [self.connectManager disConnected]; + // } _connected = isConneted; if (isConneted) { _connectType = type; [self showLog:type == AiMouseConnectType_bluetooth?@"sdk切换到蓝牙模式":@"sdk切换到usb模式"]; } [self TlwConnectManager:self.connectManager connectStateDidChange:isConneted]; - + if (type == AiMouseConnectType_hid && isConneted) { [self.recordManager checkPermissions]; } @@ -130,7 +136,7 @@ } -(void)sendDeviceDataToSdk:(NSData *)data{ - [self showLog:[NSString stringWithFormat:@"[receive][info] %@",data]]; + [self showLog:[NSString stringWithFormat:@"[receive][info] %@",[TlwTools dataToHexString:data]]]; if(self.connectType == AiMouseConnectType_hid){ [self hidReceiveDeviceData:data]; } @@ -187,7 +193,7 @@ [mData appendBytes:&len length:1]; [self sendToDevice:mData]; } - + } - (void)setDPI:(uint8_t)value completation:(void (^)(BOOL isSuccess,NSError *error))finished{ @@ -217,12 +223,12 @@ [self sendToDevice:mData]; } - + } - (void)getDeviceInfo:(void (^)(TlwDeviceInfo *deviceInfo,NSError *error))finished{ if(self.connectType == AiMouseConnectType_hid){ self.getMouseInfo = finished; -// 0x05fff1fec09f0114ef + // 0x05fff1fec09f0114ef uint8_t cmd = 0x0c; uint8_t len = 0x00; uint8_t tail = 0xEF; @@ -247,6 +253,33 @@ } } +- (void)getSnInfo:(void (^)(TlwSnInfo *info,NSError *error))finished{ + if(self.connectType == AiMouseConnectType_hid){ + self.getSnInfo = finished; + uint8_t cmd = 0x12; + uint8_t len = 0x00; + uint8_t tail = 0xEF; + + NSMutableData *mData = NSMutableData.data; + [mData appendData:[self getHidHeader]]; + [mData appendBytes:&cmd length:1]; + [mData appendBytes:&len length:1]; + [mData appendBytes:&tail length:1]; + [self sendToDevice:mData]; + } + else if (self.connectType == AiMouseConnectType_bluetooth){ + self.getSnInfo = finished; + uint8_t cmd = 0x12; + uint8_t dir = 0x01; + uint8_t len = 0x00; + NSMutableData *mData = NSMutableData.data; + [mData appendBytes:&cmd length:1]; + [mData appendBytes:&dir length:1]; + [mData appendBytes:&len length:1]; + [self sendToDevice:mData]; + } +} + #pragma mark - ble - (void)bleReceiveAiData:(NSData *)data{ [self.connectManager resetTimeOut]; @@ -254,35 +287,44 @@ } -(void)bleReceiveDeviceData:(NSData *)data{ - NSData *typeData = [data subdataWithRange:NSMakeRange(0, 1)]; uint8 type; - [typeData getBytes:&type length:1]; - - NSData *stateData = [data subdataWithRange:NSMakeRange(1, 1)]; - uint8 state; - [stateData getBytes:&state length:1]; - BOOL success = state == 0x02; + [ [data subdataWithRange:NSMakeRange(0, 1)] getBytes:&type length:1]; - NSData *lenData = [data subdataWithRange:NSMakeRange(2, 1)]; uint8 len; - [lenData getBytes:&len length:1]; + [[data subdataWithRange:NSMakeRange(1, 1)] getBytes:&len length:1]; switch (type) { case 0x6A: + { //语音开启回复 + uint8 state; + [[data subdataWithRange:NSMakeRange(2, 1)] getBytes:&state length:1]; + BOOL success = state == 0; + [self showLog:[NSString stringWithFormat:@"语音开启回复 %@",@(success)]]; self.openRecord(success, nil); break; + } case 0x6B: + { //语音停止回复 + uint8 state; + [[data subdataWithRange:NSMakeRange(2, 1)] getBytes:&state length:1]; + BOOL success = state == 0; [self showLog:[NSString stringWithFormat:@"语音停止回复 %@",@(success)]]; self.closeRecord(success, nil); break; + } case 0x96: + { //设置DPI回复 + uint8 state; + [[data subdataWithRange:NSMakeRange(2, 1)] getBytes:&state length:1]; + BOOL success = state == 0; [self showLog:[NSString stringWithFormat:@"设置DPI回复 %@",@(success)]]; self.setDpi(success, nil); break; + } case 0x9c: { //鼠标状态查询回复 uint16_t version; @@ -304,15 +346,33 @@ info.batteryValue = batteryValue; [self showLog:info.description]; self.getMouseInfo(info, nil); - } break; + } case 0x9f: { //鼠标按键上报 NSData *subData = [data subdataWithRange:NSMakeRange(3, 1)]; [self sendCmdData:subData]; + break; } + + case 0x22: + { + // 220210 48584D33303030313031E6FCFF68D7D000 + NSString *code = [TlwTools dataToHexString:[data subdataWithRange:NSMakeRange(2, 1)]]; + NSString *brand = [[NSString alloc] initWithData:[data subdataWithRange:NSMakeRange(3, 6)] encoding:NSUTF8StringEncoding]; + NSString *batch = [TlwTools dataToHexString:[data subdataWithRange:NSMakeRange(9, 2)]]; + NSString *sn = [TlwTools dataToHexString:[data subdataWithRange:NSMakeRange(11, 6)]]; + TlwSnInfo *info = [[TlwSnInfo alloc] init]; + info.code = code; + info.brand = brand; + info.batch = batch; + info.sn = sn; + [self showLog:info.description]; + self.getSnInfo(info, nil); break; + } + default: break; } @@ -320,8 +380,8 @@ #pragma mark - hid - (void)hidReceiveDeviceData:(NSData *)data{ -// 0x05fff1fec09f0114ef - if(data.length < 7){ + // 0x05fff1fec09f0114ef + if(data.length < 7 ){ [self showLog:@"收到异常数据"]; return; } @@ -344,14 +404,14 @@ [self startRecord]; break; } - + case 0x6B: { //语音停止回复 uint8 state; [[data subdataWithRange:NSMakeRange(6, 1)] getBytes:&state length:1]; BOOL success = state == 0x02; - + [self showLog:[NSString stringWithFormat:@"语音停止回复 %@",@(success)]]; [self stopRecord]; self.closeRecord(success, nil); @@ -363,7 +423,7 @@ uint8 state; [[data subdataWithRange:NSMakeRange(6, 1)] getBytes:&state length:1]; BOOL success = state == 0x02; - + [self showLog:[NSString stringWithFormat:@"设置DPI回复 %@",@(success)]]; self.setDpi(success, nil); break; @@ -389,8 +449,9 @@ info.batteryValue = batteryValue; [self showLog:info.description]; self.getMouseInfo(info, nil); - } break; + } + case 0x9f: { NSData *subData = [data subdataWithRange:NSMakeRange(7, 1)]; @@ -398,7 +459,7 @@ uint8 cmd; [subData getBytes:&cmd length:1]; - + if(cmd == 0x13 || cmd == 0x11 || cmd == 0x01 ||cmd == 0x09){ self.recordManager.startCmd = subData; [self startRecord]; @@ -406,8 +467,28 @@ else if(cmd == 0x14 || cmd == 0x12 || cmd == 0x02 ||cmd == 0x10){ [self stopRecord]; } + break; } + + case 0x22: + { //sn查询回复 + // 05FFF1FEC022 1048584D33303030313031E6FCFF68D7D0EF00000000000000000000000000000000000000000000000000000000000000000000000000000000 + // 220210 48584D33303030313031E6FCFF68D7D000 + data = [data subdataWithRange:NSMakeRange(4, data.length - 4)]; + NSString *code = [TlwTools dataToHexString:[data subdataWithRange:NSMakeRange(2, 1)]]; + NSString *brand = [[NSString alloc] initWithData:[data subdataWithRange:NSMakeRange(3, 6)] encoding:NSUTF8StringEncoding]; + NSString *batch = [TlwTools dataToHexString:[data subdataWithRange:NSMakeRange(9, 2)]]; + NSString *sn = [TlwTools dataToHexString:[data subdataWithRange:NSMakeRange(11, 6)]]; + TlwSnInfo *info = [[TlwSnInfo alloc] init]; + info.code = code; + info.brand = brand; + info.batch = batch; + info.sn = sn; + [self showLog:info.description]; + self.getSnInfo(info, nil); break; + } + default: break; } @@ -417,7 +498,7 @@ uint16_t head2 = 0xFFF1; uint8_t head3 = 0xfe; uint8_t head4 = 0x00; - + NSMutableData *mData = NSMutableData.data; [mData appendBytes:&head1 length:1]; [mData appendBytes:&head2 length:2]; @@ -447,7 +528,14 @@ } -- (void)sendToDevice:(NSData *)data{ +- (void)sendToDevice:(NSMutableData *)data{ + if (data.length < 64) { + NSInteger len = 64 - data.length; + for (NSInteger i = 0; i < len; i++) { + uint8_t d = 0x00; + [data appendBytes:&d length:1]; + } + } [self showLog:[NSString stringWithFormat:@"[send][info] %@",data]]; [self.delegate tlwMouseSendDeviceInfoData:data]; } @@ -468,12 +556,12 @@ if([self.delegate respondsToSelector:@selector(tlwMouseConnectStateDidChange:)]) [self.delegate tlwMouseConnectStateDidChange:connected]; } -(void)TlwConnectManagerReSendData:(TlwConnectManager *)manager{ -// __weak typeof(self) ws = self; -// [self.deviceInfoManager getVersion:^(NSString * _Nonnull version, NSError * _Nonnull error) { -// if (error.code == AiMouseErrorCode_timeOut) { -// [ws.connectManager addTimeOut]; -// } -// }]; + // __weak typeof(self) ws = self; + // [self.deviceInfoManager getVersion:^(NSString * _Nonnull version, NSError * _Nonnull error) { + // if (error.code == AiMouseErrorCode_timeOut) { + // [ws.connectManager addTimeOut]; + // } + // }]; } -(void)TlwConnectManager:(TlwConnectManager *)manager outputLog:(NSString *)log{ [self showLog:log]; diff --git a/MouseSdk/MouseSdk.xcodeproj/project.pbxproj b/MouseSdk/MouseSdk.xcodeproj/project.pbxproj index e5230b5..b16c66d 100644 --- a/MouseSdk/MouseSdk.xcodeproj/project.pbxproj +++ b/MouseSdk/MouseSdk.xcodeproj/project.pbxproj @@ -182,7 +182,7 @@ 18BF1DCC2B81AB7C00B8D90F /* MouseSdk */ = { isa = PBXGroup; children = ( - 18EF7B072C7604BF00AC5223 /* Ble */, + 18EF7B072C7604BF00AC5223 /* manager */, 18C31D6F2BBAA6CC0089D656 /* Info.plist */, 181F976C2C7C6E10002FCF68 /* AiHidManager.h */, 181F976B2C7C6E10002FCF68 /* AiHidManager.m */, @@ -229,7 +229,7 @@ path = MouseSdkUITests; sourceTree = ""; }; - 18EF7B072C7604BF00AC5223 /* Ble */ = { + 18EF7B072C7604BF00AC5223 /* manager */ = { isa = PBXGroup; children = ( 182B548B2BB7EC9B009F53B6 /* DeviceManger.h */, @@ -243,7 +243,7 @@ 18CC59942C787AAB0009FCC8 /* DeviceManager2.h */, 18CC59952C787AAB0009FCC8 /* DeviceManager2.m */, ); - path = Ble; + path = manager; sourceTree = ""; }; 543EC4E5F9FC310D6B850947 /* Frameworks */ = { diff --git a/MouseSdk/MouseSdk.xcworkspace/xcuserdata/apple.xcuserdatad/UserInterfaceState.xcuserstate b/MouseSdk/MouseSdk.xcworkspace/xcuserdata/apple.xcuserdatad/UserInterfaceState.xcuserstate index 05f64fb..ae22c9b 100644 Binary files a/MouseSdk/MouseSdk.xcworkspace/xcuserdata/apple.xcuserdatad/UserInterfaceState.xcuserstate and b/MouseSdk/MouseSdk.xcworkspace/xcuserdata/apple.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/MouseSdk/MouseSdk/ViewController.m b/MouseSdk/MouseSdk/ViewController.m index d5d77f6..864d188 100644 --- a/MouseSdk/MouseSdk/ViewController.m +++ b/MouseSdk/MouseSdk/ViewController.m @@ -264,7 +264,7 @@ }]; } - (void)setDPI:(NSMenuItem*)sender { - [[DeviceManger shared] setCPI:800 completation:^(BOOL isSuccess, NSError * _Nonnull error) { + [[DeviceManger shared] setCPI:1200 completation:^(BOOL isSuccess, NSError * _Nonnull error) { }]; } diff --git a/MouseSdk/MouseSdk/Ble/BleManager.h b/MouseSdk/MouseSdk/manager/BleManager.h similarity index 100% rename from MouseSdk/MouseSdk/Ble/BleManager.h rename to MouseSdk/MouseSdk/manager/BleManager.h diff --git a/MouseSdk/MouseSdk/Ble/BleManager.m b/MouseSdk/MouseSdk/manager/BleManager.m similarity index 100% rename from MouseSdk/MouseSdk/Ble/BleManager.m rename to MouseSdk/MouseSdk/manager/BleManager.m diff --git a/MouseSdk/MouseSdk/Ble/DeviceManager2.h b/MouseSdk/MouseSdk/manager/DeviceManager2.h similarity index 100% rename from MouseSdk/MouseSdk/Ble/DeviceManager2.h rename to MouseSdk/MouseSdk/manager/DeviceManager2.h diff --git a/MouseSdk/MouseSdk/Ble/DeviceManager2.m b/MouseSdk/MouseSdk/manager/DeviceManager2.m similarity index 100% rename from MouseSdk/MouseSdk/Ble/DeviceManager2.m rename to MouseSdk/MouseSdk/manager/DeviceManager2.m diff --git a/MouseSdk/MouseSdk/Ble/DeviceManger.h b/MouseSdk/MouseSdk/manager/DeviceManger.h similarity index 100% rename from MouseSdk/MouseSdk/Ble/DeviceManger.h rename to MouseSdk/MouseSdk/manager/DeviceManger.h diff --git a/MouseSdk/MouseSdk/Ble/DeviceManger.m b/MouseSdk/MouseSdk/manager/DeviceManger.m similarity index 93% rename from MouseSdk/MouseSdk/Ble/DeviceManger.m rename to MouseSdk/MouseSdk/manager/DeviceManger.m index c7518f4..6c98783 100644 --- a/MouseSdk/MouseSdk/Ble/DeviceManger.m +++ b/MouseSdk/MouseSdk/manager/DeviceManger.m @@ -52,7 +52,7 @@ #pragma mark ------ 设备初始化 - (void)setupTimer{ [TimerManager shared].timerCallBack = ^{ - [self showLog:@"timer action。。。"]; +// [self showLog:@"timer action。。。"]; if(self.tlwSdk.connected || self.frkSdk.connected){ [self.ble stopScan]; // [self.hid close]; @@ -202,15 +202,22 @@ info.version = [NSString stringWithFormat:@"%d",deviceInfo.version]; info.CPI_list = CPI_list;// 1-4,800 1200 1800 2400 info.CPI = cpi; - // info.CPI_list = @"1,2,3,4";// 1-4,800 1200 1800 2400 - // info.CPI = [NSString stringWithFormat:@"%d",deviceInfo.DPI]; - info.brand = @"NNMouse"; - info.sn = @"MSCL1BKZ12105000042371"; - info.mac = @"C0310000A583"; +// info.brand = @"NNMouse"; +// info.sn = @"MSCL1BKZ12105000042371"; +// info.mac = @"C0310000A583"; self.deviceInfo = info; - [self showLog:info.description]; - finished(info,nil); + [self.tlwSdk getSnInfo:^(TlwSnInfo *snInfo, NSError *error) { + if( info != nil){ + info.brand = snInfo.brand; + info.sn = snInfo.sn; + info.mac = snInfo.sn; + finished(info, nil);; + } + else{ + finished(nil,error); + } + }]; }]; } else{ @@ -396,18 +403,32 @@ /// 鼠标按键指令回调 /// - Parameter data: 数据。 -/// 前 单击0x06, 按下0x13(开始录音)抬起0x14(结束录音) -/// 中 单击0x03, 按下0x11(开始录音)抬起0x12(结束录音) -/// 后 第一次单击0x01, 第二次单击0x02(结束录音) , 按下0x09(开始录音)抬起0x10(结束录音) +/// M 单击0x06, 按下0x13(开始录音)抬起0x14(结束录音) +/// AI键 单击0x03, 按下0x11(开始录音)抬起0x12(结束录音) +/// 语音键 第一次单击0x01, 第二次单击0x02(结束录音) , 按下0x09(开始录音)抬起0x10(结束录音) /// 其他未定义 /// /// /// 鼠标按键指令回调 富瑞坤 /// - Parameter data: 数据。 -/// 前 单击43,按下27(开始录音)抬起28(结束录音) -/// 中 单击42, 按下25(开始录音)抬起26(结束录音) -/// 后 第一次单击31(开始录音), 第二次单击32(结束录音) , 按下21(开始录音)抬起22(结束录音) +/// M 单击43,按下27(开始录音)抬起28(结束录音) +/// AI键 单击42, 按下25(开始录音)抬起26(结束录音) +/// 语音键 第一次单击31(开始录音), 第二次单击32(结束录音) , 按下21(开始录音)抬起22(结束录音) /// /// 其他未定义 + +//@"06":@"43", +//@"13":@"27", +//@"14":@"28", +// +//@"03":@"42", +//@"11":@"25", +//@"12":@"26", +// +//@"01":@"31", +//@"02":@"32", +//@"09":@"21", +//@"10":@"22", + - (void)tlwMouseSendCmdData:(NSData *)data{ uint8 cmd; [data getBytes:&cmd length:1]; diff --git a/MouseSdk/MouseSdk/Ble/HidManager.h b/MouseSdk/MouseSdk/manager/HidManager.h similarity index 100% rename from MouseSdk/MouseSdk/Ble/HidManager.h rename to MouseSdk/MouseSdk/manager/HidManager.h diff --git a/MouseSdk/MouseSdk/Ble/HidManager.m b/MouseSdk/MouseSdk/manager/HidManager.m similarity index 97% rename from MouseSdk/MouseSdk/Ble/HidManager.m rename to MouseSdk/MouseSdk/manager/HidManager.m index 5cd6de2..577cf0a 100644 --- a/MouseSdk/MouseSdk/Ble/HidManager.m +++ b/MouseSdk/MouseSdk/manager/HidManager.m @@ -97,17 +97,20 @@ static void hidDisAppearDevice(void *inContext,IOReturn inResult,void *inSender, static void hidReceiveData(void* context, IOReturn result, void* sender, IOHIDReportType type, uint32_t reportID, uint8_t *report,CFIndex reportLength){ - NSData *data = [[NSData alloc] initWithBytes:report length:reportLength]; - [[HidManager shared] showLog:[NSString stringWithFormat:@"receive data = %@",data]]; + if([HidManager shared].productType == AiMouseProductType_tlw){ if (report[0] == 0x01 || report[0] == 0x02) { //鼠标键盘活动事件 return; } NSData *data = [[NSData alloc] initWithBytes:report length:reportLength]; + [[HidManager shared] showLog:[NSString stringWithFormat:@"receive = %@",data]]; [HidManager shared].receiveInfoDataCallBack(data); } else{ + NSData *data1 = [[NSData alloc] initWithBytes:report length:reportLength]; + [[HidManager shared] showLog:[NSString stringWithFormat:@"receive = %@",data1]]; + NSInteger len = get_data_len(report, reportLength); NSData *data = [[NSData alloc] initWithBytes:report length:len]; uint32_t PrimaryUsagePage = IOHIDDevGetUInt32Property(sender, CFSTR(kIOHIDPrimaryUsagePageKey)); diff --git a/MouseSdk/MouseSdk/Ble/TimerManager.h b/MouseSdk/MouseSdk/manager/TimerManager.h similarity index 100% rename from MouseSdk/MouseSdk/Ble/TimerManager.h rename to MouseSdk/MouseSdk/manager/TimerManager.h diff --git a/MouseSdk/MouseSdk/Ble/TimerManager.m b/MouseSdk/MouseSdk/manager/TimerManager.m similarity index 100% rename from MouseSdk/MouseSdk/Ble/TimerManager.m rename to MouseSdk/MouseSdk/manager/TimerManager.m