From: liangzhenying <867174124@qq.com>
Date: Thu, 2 Jan 2025 10:06:01 +0000 (+0800)
Subject: 字节兼容usb模式、修复断开连接后无法再次鉴权bug
X-Git-Url: http://git.snicker.com.cn/?a=commitdiff_plain;h=a07e0b6226e72c2fa47e05d7a123b43c9a4bd369;p=mirrors%2FMouseSdk-MacOS.git
字节兼容usb模式、修复断开连接后无法再次鉴权bug
---
diff --git a/MouseSdk/AiMouseSdk/AiMouseSdk.xcodeproj/xcuserdata/yaozuopan.xcuserdatad/xcschemes/xcschememanagement.plist b/MouseSdk/AiMouseSdk/AiMouseSdk.xcodeproj/xcuserdata/yaozuopan.xcuserdatad/xcschemes/xcschememanagement.plist
index 64bd978..27157b9 100644
--- a/MouseSdk/AiMouseSdk/AiMouseSdk.xcodeproj/xcuserdata/yaozuopan.xcuserdatad/xcschemes/xcschememanagement.plist
+++ b/MouseSdk/AiMouseSdk/AiMouseSdk.xcodeproj/xcuserdata/yaozuopan.xcuserdatad/xcschemes/xcschememanagement.plist
@@ -7,7 +7,7 @@
AiMouseSdk copy.xcscheme_^#shared#^_
orderHint
- 2
+ 4
AiMouseSdk.xcscheme_^#shared#^_
diff --git a/MouseSdk/AiMouseSdk/AiMouseSdk/AiMouseSdk.m b/MouseSdk/AiMouseSdk/AiMouseSdk/AiMouseSdk.m
index b860527..fd5fabf 100644
--- a/MouseSdk/AiMouseSdk/AiMouseSdk/AiMouseSdk.m
+++ b/MouseSdk/AiMouseSdk/AiMouseSdk/AiMouseSdk.m
@@ -153,12 +153,13 @@
[ws switchConnect:ws.connectType isConnected:false];
return;
}
- if ([DeviceManger shared].appType == 2 || [DeviceManger shared].appType == 4) {
- [self.byteSdk startAuth:^(ByteDanceInfo *info) {
+// if ([DeviceManger shared].appType == 2 || [DeviceManger shared].appType == 4) {
+ if (([DeviceManger shared].appType == 2 || [DeviceManger shared].appType == 4) && ws.byteSdk.info == nil) {
+ [ws.byteSdk startAuth:^(ByteDanceInfo *info) {
deviceInfo.byteAuthInfo = info;
[ws showLog:deviceInfo.description];
- if([self.delegate respondsToSelector:@selector(aiMouseConnectStateDidChange:)]) [self.delegate aiMouseConnectStateDidChange:self.connected];
- if(self.delegate) [self.delegate aiMouseAuthenticationResult:true];
+ if([ws.delegate respondsToSelector:@selector(aiMouseConnectStateDidChange:)]) [ws.delegate aiMouseConnectStateDidChange:ws.connected];
+ if(ws.delegate) [ws.delegate aiMouseAuthenticationResult:true];
}];
}
else{
diff --git a/MouseSdk/AiMouseSdk/ByteDance/ByteDanceSdk.m b/MouseSdk/AiMouseSdk/ByteDance/ByteDanceSdk.m
index 53e565e..c4deac4 100644
--- a/MouseSdk/AiMouseSdk/ByteDance/ByteDanceSdk.m
+++ b/MouseSdk/AiMouseSdk/ByteDance/ByteDanceSdk.m
@@ -55,10 +55,15 @@
- (void)checkAuthSuccess{
if (self.info.urlParams && self.info.expireTime && self.info.token && self.info.host) {
- if(self.byteDanceAuthInfoCallback)self.byteDanceAuthInfoCallback(self.info);
- stb_app_stop_identify();
+ if(self.byteDanceAuthInfoCallback){
+ self.byteDanceAuthInfoCallback(self.info);
+ }
+// [self performSelector:@selector(stopAuth) withObject:nil afterDelay:5];
}
}
+- (void)stopAuth{
+ stb_app_stop_identify();
+}
- (void)sendCmdToBle:(NSDictionary *)dict{
NSData *data = [AiMouseTools dictionaryToData:dict];
NSString *str = [AiMouseTools dataToUtf8String:data];
@@ -202,10 +207,19 @@ int32_t STB_STDCALL cus_hal_send_data2device(uint8_t* data, uint32_t len)
NSMutableData *fullData = [[NSMutableData alloc] init];
uint8_t head[] = { 0x2d, 0x24, 0x24};
- uint8_t tail[] = {0x24, 0x24,0x2d,0x0a};
+ uint8_t tail[] = {0x24, 0x24,0x2d};
[fullData appendBytes:&head length:3];
[fullData appendData:cmdData];
[fullData appendBytes:&tail length:3];
+
+ if (fullData.length < 64) {
+ NSInteger len = 64 - fullData.length;
+ for (NSInteger i = 0; i < len; i++) {
+ uint8_t d = 0x00;
+ [fullData appendBytes:&d length:1];
+ }
+ }
+
[[AiMouse shared] sendToBle:fullData];
return 0;
}
diff --git a/MouseSdk/AiMouseSdk/Manager/DeviceManger.m b/MouseSdk/AiMouseSdk/Manager/DeviceManger.m
index 18a936a..2f0617f 100644
--- a/MouseSdk/AiMouseSdk/Manager/DeviceManger.m
+++ b/MouseSdk/AiMouseSdk/Manager/DeviceManger.m
@@ -54,7 +54,7 @@
// [self setupBle];
// [self setupHid];
// [self setupTimer];
- self.version = @"MouseSdk_v2024122602";
+ self.version = @"MouseSdk_v2025010301";
}
return self;
}
@@ -296,6 +296,7 @@
}
///è·å设å¤ä¿¡æ¯
- (void)getDeviceInfo:(void (^)(AiMouseDeviceInfo *deviceInfo,NSError *error))finished{
+ [self showLog:@"app主å¨è·å设å¤ä¿¡æ¯ ããã"];
if(self.productType == AiMouseProductType_keyboard){
[self.kbSdk getDeviceInfo:finished];
}
diff --git a/MouseSdk/AiMouseSdk/Manager/HidManager.m b/MouseSdk/AiMouseSdk/Manager/HidManager.m
index 22e4532..fde3c58 100644
--- a/MouseSdk/AiMouseSdk/Manager/HidManager.m
+++ b/MouseSdk/AiMouseSdk/Manager/HidManager.m
@@ -12,7 +12,7 @@
#import
#import
#import "AiDeviceAuthManager.h"
-
+#import "TlwTools.h"
@interface HidManager ()
@property(nonatomic, assign) IOHIDManagerRef hidManager;///hid管ç
@property(nonatomic, assign) IOHIDDeviceRef deviceInfoCha;//设å¤ä¿¡æ¯éé
@@ -199,7 +199,7 @@ static void hidReceiveData(void* context, IOReturn result, void* sender, IOHIDRe
}
else{
NSData *data1 = [[NSData alloc] initWithBytes:report length:reportLength];
- // [[HidManager shared] showLog:[NSString stringWithFormat:@"receive = %@",data1]];
+ [[HidManager shared] showLog:[NSString stringWithFormat:@"æ¶å°usb = %@",[TlwTools dataToHexString:data1]]];
NSInteger len = get_data_len(report, reportLength);
NSData *data = [[NSData alloc] initWithBytes:report length:len];
@@ -288,12 +288,22 @@ static void hidReceiveData(void* context, IOReturn result, void* sender, IOHIDRe
if(self.logCallBack) self.logCallBack(text);
}
+///// å®é
å°æ°æ®é¿åº¦
+//static inline int get_data_len(uint8_t *buf, u_long len) {
+// if (len <= 0 ) return 0;
+// int url_len = 0;
+// while (buf[url_len] != 0x00) url_len++;
+// return url_len;
+//}
+
/// å®é
å°æ°æ®é¿åº¦
-static inline int get_data_len(uint8_t *buf, u_long len) {
+static inline int get_data_len(uint8_t *buf, int len) {
if (len <= 0 ) return 0;
- int url_len = 0;
- while (buf[url_len] != 0x00) url_len++;
- return url_len;
+ int end = len - 1;
+ while (end >= 0 && (buf[end] == 0 || buf[end - 1] == 0)) {
+ end--;
+ }
+ return end + 1;
}
/// è·å对åºå±æ§å¼
diff --git a/MouseSdk/MouseSdk.xcworkspace/xcuserdata/yaozuopan.xcuserdatad/UserInterfaceState.xcuserstate b/MouseSdk/MouseSdk.xcworkspace/xcuserdata/yaozuopan.xcuserdatad/UserInterfaceState.xcuserstate
index d68a1e1..16c4631 100644
Binary files a/MouseSdk/MouseSdk.xcworkspace/xcuserdata/yaozuopan.xcuserdatad/UserInterfaceState.xcuserstate and b/MouseSdk/MouseSdk.xcworkspace/xcuserdata/yaozuopan.xcuserdatad/UserInterfaceState.xcuserstate differ
diff --git a/MouseSdk/MouseSdk.xcworkspace/xcuserdata/yaozuopan.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/MouseSdk/MouseSdk.xcworkspace/xcuserdata/yaozuopan.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
index ab46afa..81258ac 100644
--- a/MouseSdk/MouseSdk.xcworkspace/xcuserdata/yaozuopan.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
+++ b/MouseSdk/MouseSdk.xcworkspace/xcuserdata/yaozuopan.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
@@ -5,19 +5,15 @@
version = "2.0">
+ BreakpointExtensionID = "Xcode.Breakpoint.ExceptionBreakpoint">
+ breakpointStackSelectionBehavior = "1"
+ scope = "1"
+ stopOnStyle = "0">
diff --git a/MouseSdk/MouseSdk/ViewController.m b/MouseSdk/MouseSdk/ViewController.m
index 14ba3ae..2dfccfa 100644
--- a/MouseSdk/MouseSdk/ViewController.m
+++ b/MouseSdk/MouseSdk/ViewController.m
@@ -93,8 +93,8 @@
#pragma mark - action
- (void)setupDeviceManger{
DeviceManger *manager = [DeviceManger shared];
- [manager initSdk:1];
- manager.debugLevel = 1;
+ [manager initSdk:2];
+ manager.debugLevel = 2;
__weak typeof(self) ws = self;
// manager.aiMouseAddLogCallBack = ^(NSString * _Nonnull log) {
diff --git a/MouseSdk/Pods/Pods.xcodeproj/xcuserdata/yaozuopan.xcuserdatad/xcschemes/xcschememanagement.plist b/MouseSdk/Pods/Pods.xcodeproj/xcuserdata/yaozuopan.xcuserdatad/xcschemes/xcschememanagement.plist
index 30f1cdd..c230d1a 100644
--- a/MouseSdk/Pods/Pods.xcodeproj/xcuserdata/yaozuopan.xcuserdatad/xcschemes/xcschememanagement.plist
+++ b/MouseSdk/Pods/Pods.xcodeproj/xcuserdata/yaozuopan.xcuserdatad/xcschemes/xcschememanagement.plist
@@ -7,12 +7,12 @@
Masonry.xcscheme_^#shared#^_
orderHint
- 3
+ 2
Pods-MouseSdk.xcscheme_^#shared#^_
orderHint
- 4
+ 3