From: liangzhenying <867174124@qq.com> Date: Tue, 17 Dec 2024 07:28:31 +0000 (+0800) Subject: 添加字节库 X-Git-Url: http://git.snicker.com.cn/Users/apple/Desktop/static/gitweb.css?a=commitdiff_plain;h=756d092444a088eaefc0eb867b06f4e55a975c39;p=mirrors%2FMouseSdk-MacOS.git 添加字节库 --- diff --git a/MouseSdk/AiMouseSdk/AiMouseSdk.xcodeproj/project.pbxproj b/MouseSdk/AiMouseSdk/AiMouseSdk.xcodeproj/project.pbxproj index d26c6d8..60fcca3 100644 --- a/MouseSdk/AiMouseSdk/AiMouseSdk.xcodeproj/project.pbxproj +++ b/MouseSdk/AiMouseSdk/AiMouseSdk.xcodeproj/project.pbxproj @@ -409,6 +409,14 @@ 18AD832A2BFB22DE009BDE3B /* AiSender.m in Sources */ = {isa = PBXBuildFile; fileRef = 18AD83282BFB22DE009BDE3B /* AiSender.m */; }; 18D57A022C917385003D5714 /* NMouseSdk.h in Headers */ = {isa = PBXBuildFile; fileRef = 18D57A002C917385003D5714 /* NMouseSdk.h */; }; 18D57A032C917385003D5714 /* NMouseSdk.m in Sources */ = {isa = PBXBuildFile; fileRef = 18D57A012C917385003D5714 /* NMouseSdk.m */; }; + 18E0C58A2D0FF87C0093BA8F /* stb_identify.so in Frameworks */ = {isa = PBXBuildFile; fileRef = 18E0C5872D0FF87C0093BA8F /* stb_identify.so */; }; + 18E0C58B2D0FF87C0093BA8F /* stb_app.h in Headers */ = {isa = PBXBuildFile; fileRef = 18E0C5882D0FF87C0093BA8F /* stb_app.h */; }; + 18E0C58C2D0FF87C0093BA8F /* stb_identify.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 18E0C5892D0FF87C0093BA8F /* stb_identify.a */; }; + 18E0C5922D0FF8E30093BA8F /* stb_identify.so in Frameworks */ = {isa = PBXBuildFile; fileRef = 18E0C58F2D0FF8E30093BA8F /* stb_identify.so */; }; + 18E0C5932D0FF8E40093BA8F /* stb_app.h in Headers */ = {isa = PBXBuildFile; fileRef = 18E0C5902D0FF8E30093BA8F /* stb_app.h */; }; + 18E0C5942D0FF8E40093BA8F /* stb_identify.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 18E0C5912D0FF8E30093BA8F /* stb_identify.a */; }; + 18E0C5972D1000DF0093BA8F /* ByteDanceSdk.h in Headers */ = {isa = PBXBuildFile; fileRef = 18E0C5952D1000DF0093BA8F /* ByteDanceSdk.h */; }; + 18E0C5982D1000DF0093BA8F /* ByteDanceSdk.m in Sources */ = {isa = PBXBuildFile; fileRef = 18E0C5962D1000DF0093BA8F /* ByteDanceSdk.m */; }; 18EF7AF92C7603E800AC5223 /* adpcm.h in Headers */ = {isa = PBXBuildFile; fileRef = 18EF7AEA2C7603E800AC5223 /* adpcm.h */; }; 18EF7AFA2C7603E800AC5223 /* TlwMouseSdk.m in Sources */ = {isa = PBXBuildFile; fileRef = 18EF7AEB2C7603E800AC5223 /* TlwMouseSdk.m */; }; 18EF7AFB2C7603E800AC5223 /* TlwTools.m in Sources */ = {isa = PBXBuildFile; fileRef = 18EF7AEC2C7603E800AC5223 /* TlwTools.m */; }; @@ -613,7 +621,7 @@ 188814BC2C85BB76009299A9 /* AiBkzhAuthManager.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AiBkzhAuthManager.m; sourceTree = ""; }; 188814C02C85C2BA009299A9 /* AESCBCHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AESCBCHelper.h; sourceTree = ""; }; 188814C12C85C2BA009299A9 /* AESCBCHelper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AESCBCHelper.m; sourceTree = ""; }; - 189365512CEB0C3700023B62 /* libAiMouseSdk copy.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libAiMouseSdk copy.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 189365512CEB0C3700023B62 /* libAiMouseSdk copy.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libAiMouseSdk copy.a"; path = "/Users/apple/Desktop/code/MouseSdk-MacOS/MouseSdk/AiMouseSdk/build/Debug/libAiMouseSdk copy.a"; sourceTree = ""; }; 189365522CEB115200023B62 /* KeyboardHidManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = KeyboardHidManager.h; sourceTree = ""; }; 189365532CEB115200023B62 /* KeyboardHidManager.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = KeyboardHidManager.m; sourceTree = ""; }; 189365562CEB153000023B62 /* MSUtilis.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSUtilis.h; sourceTree = ""; }; @@ -626,6 +634,14 @@ 18AD83282BFB22DE009BDE3B /* AiSender.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AiSender.m; sourceTree = ""; }; 18D57A002C917385003D5714 /* NMouseSdk.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = NMouseSdk.h; sourceTree = ""; }; 18D57A012C917385003D5714 /* NMouseSdk.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = NMouseSdk.m; sourceTree = ""; }; + 18E0C5872D0FF87C0093BA8F /* stb_identify.so */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; path = stb_identify.so; sourceTree = ""; }; + 18E0C5882D0FF87C0093BA8F /* stb_app.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = stb_app.h; sourceTree = ""; }; + 18E0C5892D0FF87C0093BA8F /* stb_identify.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = stb_identify.a; sourceTree = ""; }; + 18E0C58F2D0FF8E30093BA8F /* stb_identify.so */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; path = stb_identify.so; sourceTree = ""; }; + 18E0C5902D0FF8E30093BA8F /* stb_app.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = stb_app.h; sourceTree = ""; }; + 18E0C5912D0FF8E30093BA8F /* stb_identify.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = stb_identify.a; sourceTree = ""; }; + 18E0C5952D1000DF0093BA8F /* ByteDanceSdk.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ByteDanceSdk.h; sourceTree = ""; }; + 18E0C5962D1000DF0093BA8F /* ByteDanceSdk.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ByteDanceSdk.m; sourceTree = ""; }; 18EF7AEA2C7603E800AC5223 /* adpcm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = adpcm.h; sourceTree = ""; }; 18EF7AEB2C7603E800AC5223 /* TlwMouseSdk.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TlwMouseSdk.m; sourceTree = ""; }; 18EF7AEC2C7603E800AC5223 /* TlwTools.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TlwTools.m; sourceTree = ""; }; @@ -646,8 +662,11 @@ buildActionMask = 2147483647; files = ( 180E7D152BD8FF5C008558E8 /* liblzma.5.tbd in Frameworks */, + 18E0C5942D0FF8E40093BA8F /* stb_identify.a in Frameworks */, 180E7D132BD8FF3A008558E8 /* libiconv.tbd in Frameworks */, 180E7D112BD8FF11008558E8 /* libbz2.tbd in Frameworks */, + 18E0C5922D0FF8E30093BA8F /* stb_identify.so in Frameworks */, + 18E0C58C2D0FF87C0093BA8F /* stb_identify.a in Frameworks */, 180E7D0F2BD8FEF5008558E8 /* libz.tbd in Frameworks */, 180E7D0D2BD8FED8008558E8 /* CoreAudio.framework in Frameworks */, 180E7D0B2BD8FEB3008558E8 /* VideoToolbox.framework in Frameworks */, @@ -656,6 +675,7 @@ 180E7D022BD8FC4F008558E8 /* libavfilter.a in Frameworks */, 180E7D012BD8FC4F008558E8 /* libavutil.a in Frameworks */, 180E7D032BD8FC4F008558E8 /* libavcodec.a in Frameworks */, + 18E0C58A2D0FF87C0093BA8F /* stb_identify.so in Frameworks */, 180E7D062BD8FC4F008558E8 /* libswresample.a in Frameworks */, 180E7D042BD8FC4F008558E8 /* libavformat.a in Frameworks */, ); @@ -687,6 +707,7 @@ 180E7A9D2BD7BB12008558E8 = { isa = PBXGroup; children = ( + 18E0C5842D0FF84A0093BA8F /* ByteDance */, 1899600D2CEAD78B0042505F /* Keyboard */, 18D579FF2C91733E003D5714 /* NMouseSdk */, 18862A172C8064E300D3564D /* Manager */, @@ -694,7 +715,6 @@ 180E7AA82BD7BB12008558E8 /* AiMouseSdk */, 180E7AA72BD7BB12008558E8 /* Products */, 180E7D092BD8FEB2008558E8 /* Frameworks */, - 189365512CEB0C3700023B62 /* libAiMouseSdk copy.a */, ); sourceTree = ""; }; @@ -1031,6 +1051,53 @@ path = NMouseSdk; sourceTree = ""; }; + 18E0C5842D0FF84A0093BA8F /* ByteDance */ = { + isa = PBXGroup; + children = ( + 18E0C58D2D0FF8E30093BA8F /* x86_64 */, + 18E0C5852D0FF87C0093BA8F /* arm */, + 18E0C5952D1000DF0093BA8F /* ByteDanceSdk.h */, + 18E0C5962D1000DF0093BA8F /* ByteDanceSdk.m */, + ); + path = ByteDance; + sourceTree = ""; + }; + 18E0C5852D0FF87C0093BA8F /* arm */ = { + isa = PBXGroup; + children = ( + 18E0C5862D0FF87C0093BA8F /* lib */, + ); + path = arm; + sourceTree = ""; + }; + 18E0C5862D0FF87C0093BA8F /* lib */ = { + isa = PBXGroup; + children = ( + 18E0C5872D0FF87C0093BA8F /* stb_identify.so */, + 18E0C5882D0FF87C0093BA8F /* stb_app.h */, + 18E0C5892D0FF87C0093BA8F /* stb_identify.a */, + ); + path = lib; + sourceTree = ""; + }; + 18E0C58D2D0FF8E30093BA8F /* x86_64 */ = { + isa = PBXGroup; + children = ( + 18E0C58E2D0FF8E30093BA8F /* lib */, + ); + path = x86_64; + sourceTree = ""; + }; + 18E0C58E2D0FF8E30093BA8F /* lib */ = { + isa = PBXGroup; + children = ( + 18E0C58F2D0FF8E30093BA8F /* stb_identify.so */, + 18E0C5902D0FF8E30093BA8F /* stb_app.h */, + 18E0C5912D0FF8E30093BA8F /* stb_identify.a */, + ); + path = lib; + sourceTree = ""; + }; 18EF7AE72C7603E800AC5223 /* TlwMouseSdk */ = { isa = PBXGroup; children = ( @@ -1098,6 +1165,7 @@ 184A710F2BDA4C050025A332 /* AFHTTPSessionManager.h in Headers */, 18EF7B052C7603E800AC5223 /* TlwConnectManager.h in Headers */, 180E7CF92BD8FC4F008558E8 /* dirac.h in Headers */, + 18E0C5932D0FF8E40093BA8F /* stb_app.h in Headers */, 184A71032BDA4C050025A332 /* AFNetworkReachabilityManager.h in Headers */, 184A71242BDE2DA60025A332 /* AiSecretModel.h in Headers */, 180E7CCF2BD8FC4E008558E8 /* video_enc_params.h in Headers */, @@ -1107,6 +1175,7 @@ 180E7CD62BD8FC4E008558E8 /* pixfmt.h in Headers */, 18862A262C8064E300D3564D /* BleManager.h in Headers */, 180E7CC82BD8FC4E008558E8 /* lzo.h in Headers */, + 18E0C58B2D0FF87C0093BA8F /* stb_app.h in Headers */, 180E7C9F2BD8FC4E008558E8 /* xtea.h in Headers */, 188814BD2C85BB76009299A9 /* AiBkzhAuthManager.h in Headers */, 180E7C9C2BD8FC4E008558E8 /* lfg.h in Headers */, @@ -1150,6 +1219,7 @@ 180E7CD12BD8FC4E008558E8 /* parseutils.h in Headers */, 180E7CEC2BD8FC4E008558E8 /* codec_par.h in Headers */, 180E7BE22BD7BD84008558E8 /* AiAudioManager.h in Headers */, + 18E0C5972D1000DF0093BA8F /* ByteDanceSdk.h in Headers */, 180E7CC52BD8FC4E008558E8 /* rc4.h in Headers */, 180E7CB52BD8FC4E008558E8 /* display.h in Headers */, 180E7CB22BD8FC4E008558E8 /* tx.h in Headers */, @@ -1479,6 +1549,7 @@ 184A710C2BDA4C050025A332 /* AFNetworkReachabilityManager.m in Sources */, 180E7BE42BD7BD84008558E8 /* AiRecordManager.m in Sources */, 18EF7B042C7603E800AC5223 /* TlwAudioManager.m in Sources */, + 18E0C5982D1000DF0093BA8F /* ByteDanceSdk.m in Sources */, 189960112CEAD7B50042505F /* KeyboardSdk.m in Sources */, 180E7BE72BD7BD84008558E8 /* AiAudioManager.m in Sources */, 18EF7AFB2C7603E800AC5223 /* TlwTools.m in Sources */, @@ -1666,6 +1737,8 @@ LIBRARY_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/AiMouseSdk/ffmpeg/lib", + "$(PROJECT_DIR)/zijie/arm/lib", + "$(PROJECT_DIR)/zijie/x86_64/lib", ); MACOSX_DEPLOYMENT_TARGET = 13.0; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -1683,6 +1756,8 @@ LIBRARY_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/AiMouseSdk/ffmpeg/lib", + "$(PROJECT_DIR)/zijie/arm/lib", + "$(PROJECT_DIR)/zijie/x86_64/lib", ); MACOSX_DEPLOYMENT_TARGET = 13.0; PRODUCT_NAME = "$(TARGET_NAME)"; diff --git a/MouseSdk/AiMouseSdk/ByteDance/ByteDanceSdk.h b/MouseSdk/AiMouseSdk/ByteDance/ByteDanceSdk.h new file mode 100644 index 0000000..a06ccc9 --- /dev/null +++ b/MouseSdk/AiMouseSdk/ByteDance/ByteDanceSdk.h @@ -0,0 +1,18 @@ +// +// ByteDanceSdk.h +// AiMouseManager +// +// Created by incar on 2024/12/16. +// + +#import + +NS_ASSUME_NONNULL_BEGIN + +@interface ByteDanceSdk : NSObject + ++(ByteDanceSdk *)shared; + +@end + +NS_ASSUME_NONNULL_END diff --git a/MouseSdk/AiMouseSdk/ByteDance/ByteDanceSdk.m b/MouseSdk/AiMouseSdk/ByteDance/ByteDanceSdk.m new file mode 100644 index 0000000..510a131 --- /dev/null +++ b/MouseSdk/AiMouseSdk/ByteDance/ByteDanceSdk.m @@ -0,0 +1,34 @@ +// +// ByteDanceSdk.m +// AiMouseManager +// +// Created by incar on 2024/12/16. +// + +#import "ByteDanceSdk.h" +#import "stb_app.h" + +@implementation ByteDanceSdk + ++(ByteDanceSdk *)shared{ + static ByteDanceSdk *manager = nil; + static dispatch_once_t oncePredicate; + dispatch_once(&oncePredicate, ^{ + manager = [[ByteDanceSdk alloc]init]; + [manager initSdk]; + }); + return manager; +} + +- (void)initSdk{ + NSString *appId = @""; + int code = stb_app_init([appId UTF8String]); + stb_app_event_callback_register(eventCallBack); +} + + +static void eventCallBack(uint32_t type,uint8_t *report, uint32_t data_len){ + NSData *data = [[NSData alloc] initWithBytes:report length:data_len]; + NSLog(@"type = ,data = %@,data_len = %d",type,data,data_len); +} +@end diff --git a/MouseSdk/AiMouseSdk/ByteDance/arm/lib/stb_app.h b/MouseSdk/AiMouseSdk/ByteDance/arm/lib/stb_app.h new file mode 100644 index 0000000..21fb305 --- /dev/null +++ b/MouseSdk/AiMouseSdk/ByteDance/arm/lib/stb_app.h @@ -0,0 +1,200 @@ +/* Copyright [the year of release] VE Starburst. All rights reserved. + * + * NOTICE:All information contained herein is, and remains the property of VE + * Starburst. The intellectual and technical concepts contained herein are + * proprietary to VE Starburst. and may be covered by patents, patents in process, + * and are protected by trade secret or copyright law. Dissemination of this + * information or reproduction of this material is strictly forbidden unless prior + * written permission is obtained from VE Starburst. + */ +#ifndef _STB_APP_H_ +#define _STB_APP_H_ +#include + +#if defined(__cplusplus) +extern "C" { +#endif + +#if (defined(WIN32) || defined(WIN64) || defined(_MSC_VER) || defined(_WIN32)) +#define DLL_EXPORTS __declspec(dllexport) +#define STB_STDCALL __stdcall +#else +#define DLL_EXPORTS +#define STB_STDCALL +#endif + +//回调函数TYPE定义 +/* 激活相关TYPE*/ +#define STB_DYNREG_SUCCESS 0xFF000000 +#define STB_DYNREG_FAIL 0xFF000001 +/* MQTT连云相关TYPE*/ +#define STB_MQTT_CONNECT_SUCCESS 0xFF010000 +#define STB_MQTT_CONNECT_FAIL 0xFF010001 +#define STB_MQTT_CONNECT_TIMEOUT 0xFF010002 +#define STB_MQTT_CONNECT_OFFLINE 0xFF010003 +#define STB_MQTT_CONNECT_ONLINE 0xFF010004 +#define STB_MQTT_CONNECT_STOP 0xFF010005 //认证退出,待设备重新连接后需要重新调用stb_app_start_identify + +/*业务数据*/ +#define STB_DM_DATA_ARRIVED_TOKEN 0xFF020000 +#define STB_DM_DATA_ARRIVED_TOKEN_TIMEOUT 0xFF020001 +#define STB_DM_DATA_ARRIVED_HOST 0xFF020002 +#define STB_DM_DATA_ARRIVED_PARAMS_SIGN 0xFF020003 + + +/* 事件回调函数类型定义 */ +typedef void (STB_STDCALL *stb_event_callback_func)(uint32_t type,uint8_t *data, uint32_t data_len); +/* 日志打印函数类型定义 */ +typedef void (STB_STDCALL *stb_debug_func)(const char *format,...); +/* 日志打印函数类型定义 */ +typedef void(STB_STDCALL *stb_debug_only_str_func)(char *str); +/* 数据发送函数类型定义 */ +typedef int32_t (STB_STDCALL *stb_data_send_to_device)(uint8_t *data, uint32_t len); + + +/* + * 函数名称: stb_app_init + * 参数: + * - appid: 应用ID,字符串类型 + * 返回值: + * - 返回一个整数,表示初始化结果 + * 函数说明: + * - 该函数用于初始化应用,传入应用ID进行初始化操作,appid由字节火山提供。 + */ +DLL_EXPORTS int STB_STDCALL stb_app_init(char*appid); + +/* + * 函数名称: stb_app_deinit + * 参数: + * - 无 + * 返回值: + * - 返回一个整数,表示反初始化结果 + * 函数说明: + * - 该函数用于反初始化应用,释放资源并清理状态。 + */ +DLL_EXPORTS int STB_STDCALL stb_app_deinit(void); + +/* + * 函数名称: stb_app_event_callback_register + * 参数: + * - callback: 事件回调函数指针 + * 返回值: + * - 返回一个整数,表示注册结果 + * 函数说明: + * - 该函数用于注册事件回调函数,当STB_XXX事件发生时,将调用该回调函数。 + */ + +DLL_EXPORTS int STB_STDCALL stb_app_event_callback_register(stb_event_callback_func callback); + + +/* + * 函数名称: stb_app_printf_register + * 参数: + * - print_func: 自定义打印函数,stb_debug_func是带可变参数的 + * 返回值: + * - 返回一个整数,表示注册结果 + * 函数说明: + * - 指定日志输出注册函数 + */ + +DLL_EXPORTS int STB_STDCALL stb_app_printf_register(stb_debug_func print_func); +/* + * 函数名称: stb_app_printf_str_register + * 参数: + * - print_func: 自定义打印函数,与stb_debug_func不同,stb_debug_only_str_func的参数只有char,无可变参数 + * 返回值: + * - 返回一个整数,表示注册结果 + * 函数说明: + * - 指定日志输出注册函数,与stb_app_printf_register类似,只需要实现一个函数即可 + * - stb_debug_only_str_func 是解决某些平台或者语言可变参数兼容性问题 + */ + +DLL_EXPORTS int STB_STDCALL stb_app_printf_str_register(stb_debug_only_str_func print_str_func); + +/* + * 函数名称: stb_app_send_data_to_device_register + * 参数: + * - send_func: 自定义发送数据到蓝牙设备的函数 + + * 返回值: + * - 返回一个整数,表示注册结果 + * 函数说明: + * - SDK需要发送给蓝牙设备的数据通过该API注册,SDK内部会调用该函数发送数据到设备端。 + */ +DLL_EXPORTS int STB_STDCALL stb_app_send_data_to_device_register(stb_data_send_to_device send_func); + +/* +* 函数名称: stb_app_recv_data_from_device +* 参数: + * - data: 数据指针 + * - len: 数据长度 + * 返回值: + * - 返回0表示成功,返回-1表示失败 + * 函数说明: + * - 该函数用于接收从蓝牙设备SDK发送过来的数据,由应用调用,前提是设备已经连上。 + +*/ +DLL_EXPORTS int32_t STB_STDCALL stb_app_recv_data_from_device(uint8_t *data, uint32_t len); + +/* + * 函数名称: stb_app_start_identify + * 参数: + * - 无 + * 返回值: + * - 返回一个整数,表示设备识别启动结果 + * 函数说明: + * - 该函数用于启动设备鉴权过程,由应用调用,前提是设备已经连上边,并且HAL层的收发函数已经对接。 + */ +DLL_EXPORTS int STB_STDCALL stb_app_start_identify(void); + + +/* + * 函数名称: stb_app_stop_identify + * 参数: + * - 无 + * 返回值: + * - 返回一个整数 + * 函数说明: + * - 该函数用于停止已鉴权流程 + */ +DLL_EXPORTS int STB_STDCALL stb_app_stop_identify(void); + + +/* + * 函数名称: stb_app_set_device_connect_status + * 参数: + * - 设备连接状态,1表示已连接,0表示断开。 + * 返回值: + * - 返回0表示成功,返回-1表示失败 + * 函数说明: + * - 该函数用于设置设备连接状态,由应用调用,用来通知SDK设备连接状态。 + */ +DLL_EXPORTS int STB_STDCALL stb_app_set_device_connect_status(uint8_t status); + +/* + * 函数名称: stb_app_get_token_async + * 参数: + * - 无 + * 返回值: + * - 返回一个整数,表示异步获取令牌结果 + * 函数说明: + * - 该函数用于异步获取令牌,用于访问AI应用使用。 + */ +DLL_EXPORTS int STB_STDCALL stb_app_get_token_async(); + + +//测试函数,无需调用 +DLL_EXPORTS int STB_STDCALL stb_app_identify_test(uint8_t *pk, uint8_t *dn, uint8_t *ps); + + +//如需使用产线激活,使用该接口 +DLL_EXPORTS char* STB_STDCALL device_register(char* product_key, char* device_name, char* product_secret); +//如需使用产线激活,使用该接口 +DLL_EXPORTS int STB_STDCALL device_active(char*product_key, char* device_name, char*device_secret); + +#if defined(__cplusplus) +} +#endif + +#endif + diff --git a/MouseSdk/AiMouseSdk/ByteDance/arm/lib/stb_identify.a b/MouseSdk/AiMouseSdk/ByteDance/arm/lib/stb_identify.a new file mode 100644 index 0000000..dfd8d67 Binary files /dev/null and b/MouseSdk/AiMouseSdk/ByteDance/arm/lib/stb_identify.a differ diff --git a/MouseSdk/AiMouseSdk/ByteDance/arm/lib/stb_identify.so b/MouseSdk/AiMouseSdk/ByteDance/arm/lib/stb_identify.so new file mode 100644 index 0000000..408e324 Binary files /dev/null and b/MouseSdk/AiMouseSdk/ByteDance/arm/lib/stb_identify.so differ diff --git a/MouseSdk/AiMouseSdk/ByteDance/x86_64/lib/stb_app.h b/MouseSdk/AiMouseSdk/ByteDance/x86_64/lib/stb_app.h new file mode 100644 index 0000000..21fb305 --- /dev/null +++ b/MouseSdk/AiMouseSdk/ByteDance/x86_64/lib/stb_app.h @@ -0,0 +1,200 @@ +/* Copyright [the year of release] VE Starburst. All rights reserved. + * + * NOTICE:All information contained herein is, and remains the property of VE + * Starburst. The intellectual and technical concepts contained herein are + * proprietary to VE Starburst. and may be covered by patents, patents in process, + * and are protected by trade secret or copyright law. Dissemination of this + * information or reproduction of this material is strictly forbidden unless prior + * written permission is obtained from VE Starburst. + */ +#ifndef _STB_APP_H_ +#define _STB_APP_H_ +#include + +#if defined(__cplusplus) +extern "C" { +#endif + +#if (defined(WIN32) || defined(WIN64) || defined(_MSC_VER) || defined(_WIN32)) +#define DLL_EXPORTS __declspec(dllexport) +#define STB_STDCALL __stdcall +#else +#define DLL_EXPORTS +#define STB_STDCALL +#endif + +//回调函数TYPE定义 +/* 激活相关TYPE*/ +#define STB_DYNREG_SUCCESS 0xFF000000 +#define STB_DYNREG_FAIL 0xFF000001 +/* MQTT连云相关TYPE*/ +#define STB_MQTT_CONNECT_SUCCESS 0xFF010000 +#define STB_MQTT_CONNECT_FAIL 0xFF010001 +#define STB_MQTT_CONNECT_TIMEOUT 0xFF010002 +#define STB_MQTT_CONNECT_OFFLINE 0xFF010003 +#define STB_MQTT_CONNECT_ONLINE 0xFF010004 +#define STB_MQTT_CONNECT_STOP 0xFF010005 //认证退出,待设备重新连接后需要重新调用stb_app_start_identify + +/*业务数据*/ +#define STB_DM_DATA_ARRIVED_TOKEN 0xFF020000 +#define STB_DM_DATA_ARRIVED_TOKEN_TIMEOUT 0xFF020001 +#define STB_DM_DATA_ARRIVED_HOST 0xFF020002 +#define STB_DM_DATA_ARRIVED_PARAMS_SIGN 0xFF020003 + + +/* 事件回调函数类型定义 */ +typedef void (STB_STDCALL *stb_event_callback_func)(uint32_t type,uint8_t *data, uint32_t data_len); +/* 日志打印函数类型定义 */ +typedef void (STB_STDCALL *stb_debug_func)(const char *format,...); +/* 日志打印函数类型定义 */ +typedef void(STB_STDCALL *stb_debug_only_str_func)(char *str); +/* 数据发送函数类型定义 */ +typedef int32_t (STB_STDCALL *stb_data_send_to_device)(uint8_t *data, uint32_t len); + + +/* + * 函数名称: stb_app_init + * 参数: + * - appid: 应用ID,字符串类型 + * 返回值: + * - 返回一个整数,表示初始化结果 + * 函数说明: + * - 该函数用于初始化应用,传入应用ID进行初始化操作,appid由字节火山提供。 + */ +DLL_EXPORTS int STB_STDCALL stb_app_init(char*appid); + +/* + * 函数名称: stb_app_deinit + * 参数: + * - 无 + * 返回值: + * - 返回一个整数,表示反初始化结果 + * 函数说明: + * - 该函数用于反初始化应用,释放资源并清理状态。 + */ +DLL_EXPORTS int STB_STDCALL stb_app_deinit(void); + +/* + * 函数名称: stb_app_event_callback_register + * 参数: + * - callback: 事件回调函数指针 + * 返回值: + * - 返回一个整数,表示注册结果 + * 函数说明: + * - 该函数用于注册事件回调函数,当STB_XXX事件发生时,将调用该回调函数。 + */ + +DLL_EXPORTS int STB_STDCALL stb_app_event_callback_register(stb_event_callback_func callback); + + +/* + * 函数名称: stb_app_printf_register + * 参数: + * - print_func: 自定义打印函数,stb_debug_func是带可变参数的 + * 返回值: + * - 返回一个整数,表示注册结果 + * 函数说明: + * - 指定日志输出注册函数 + */ + +DLL_EXPORTS int STB_STDCALL stb_app_printf_register(stb_debug_func print_func); +/* + * 函数名称: stb_app_printf_str_register + * 参数: + * - print_func: 自定义打印函数,与stb_debug_func不同,stb_debug_only_str_func的参数只有char,无可变参数 + * 返回值: + * - 返回一个整数,表示注册结果 + * 函数说明: + * - 指定日志输出注册函数,与stb_app_printf_register类似,只需要实现一个函数即可 + * - stb_debug_only_str_func 是解决某些平台或者语言可变参数兼容性问题 + */ + +DLL_EXPORTS int STB_STDCALL stb_app_printf_str_register(stb_debug_only_str_func print_str_func); + +/* + * 函数名称: stb_app_send_data_to_device_register + * 参数: + * - send_func: 自定义发送数据到蓝牙设备的函数 + + * 返回值: + * - 返回一个整数,表示注册结果 + * 函数说明: + * - SDK需要发送给蓝牙设备的数据通过该API注册,SDK内部会调用该函数发送数据到设备端。 + */ +DLL_EXPORTS int STB_STDCALL stb_app_send_data_to_device_register(stb_data_send_to_device send_func); + +/* +* 函数名称: stb_app_recv_data_from_device +* 参数: + * - data: 数据指针 + * - len: 数据长度 + * 返回值: + * - 返回0表示成功,返回-1表示失败 + * 函数说明: + * - 该函数用于接收从蓝牙设备SDK发送过来的数据,由应用调用,前提是设备已经连上。 + +*/ +DLL_EXPORTS int32_t STB_STDCALL stb_app_recv_data_from_device(uint8_t *data, uint32_t len); + +/* + * 函数名称: stb_app_start_identify + * 参数: + * - 无 + * 返回值: + * - 返回一个整数,表示设备识别启动结果 + * 函数说明: + * - 该函数用于启动设备鉴权过程,由应用调用,前提是设备已经连上边,并且HAL层的收发函数已经对接。 + */ +DLL_EXPORTS int STB_STDCALL stb_app_start_identify(void); + + +/* + * 函数名称: stb_app_stop_identify + * 参数: + * - 无 + * 返回值: + * - 返回一个整数 + * 函数说明: + * - 该函数用于停止已鉴权流程 + */ +DLL_EXPORTS int STB_STDCALL stb_app_stop_identify(void); + + +/* + * 函数名称: stb_app_set_device_connect_status + * 参数: + * - 设备连接状态,1表示已连接,0表示断开。 + * 返回值: + * - 返回0表示成功,返回-1表示失败 + * 函数说明: + * - 该函数用于设置设备连接状态,由应用调用,用来通知SDK设备连接状态。 + */ +DLL_EXPORTS int STB_STDCALL stb_app_set_device_connect_status(uint8_t status); + +/* + * 函数名称: stb_app_get_token_async + * 参数: + * - 无 + * 返回值: + * - 返回一个整数,表示异步获取令牌结果 + * 函数说明: + * - 该函数用于异步获取令牌,用于访问AI应用使用。 + */ +DLL_EXPORTS int STB_STDCALL stb_app_get_token_async(); + + +//测试函数,无需调用 +DLL_EXPORTS int STB_STDCALL stb_app_identify_test(uint8_t *pk, uint8_t *dn, uint8_t *ps); + + +//如需使用产线激活,使用该接口 +DLL_EXPORTS char* STB_STDCALL device_register(char* product_key, char* device_name, char* product_secret); +//如需使用产线激活,使用该接口 +DLL_EXPORTS int STB_STDCALL device_active(char*product_key, char* device_name, char*device_secret); + +#if defined(__cplusplus) +} +#endif + +#endif + diff --git a/MouseSdk/AiMouseSdk/ByteDance/x86_64/lib/stb_identify.a b/MouseSdk/AiMouseSdk/ByteDance/x86_64/lib/stb_identify.a new file mode 100644 index 0000000..42aba62 Binary files /dev/null and b/MouseSdk/AiMouseSdk/ByteDance/x86_64/lib/stb_identify.a differ diff --git a/MouseSdk/AiMouseSdk/ByteDance/x86_64/lib/stb_identify.so b/MouseSdk/AiMouseSdk/ByteDance/x86_64/lib/stb_identify.so new file mode 100644 index 0000000..375ece8 Binary files /dev/null and b/MouseSdk/AiMouseSdk/ByteDance/x86_64/lib/stb_identify.so differ diff --git a/MouseSdk/AiMouseSdk/Manager/DeviceManger.m b/MouseSdk/AiMouseSdk/Manager/DeviceManger.m index d646e61..433ba2d 100644 --- a/MouseSdk/AiMouseSdk/Manager/DeviceManger.m +++ b/MouseSdk/AiMouseSdk/Manager/DeviceManger.m @@ -14,6 +14,7 @@ #import "AiMouseConfig.h" #import "KeyboardHidManager.h" #import "KeyboardSdk.h" +#import "ByteDanceSdk.h" @interface DeviceManger() @@ -53,6 +54,7 @@ [self setupHid]; [self setupTimer]; // [self setupKeyboard]; + [[ByteDanceSdk shared] init]; } return self; } diff --git a/MouseSdk/MouseSdk.xcworkspace/xcuserdata/apple.xcuserdatad/UserInterfaceState.xcuserstate b/MouseSdk/MouseSdk.xcworkspace/xcuserdata/apple.xcuserdatad/UserInterfaceState.xcuserstate index edb1587..d09145a 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.xcworkspace/xcuserdata/apple.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/MouseSdk/MouseSdk.xcworkspace/xcuserdata/apple.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist index c3ddbcd..c572999 100644 --- a/MouseSdk/MouseSdk.xcworkspace/xcuserdata/apple.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +++ b/MouseSdk/MouseSdk.xcworkspace/xcuserdata/apple.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist @@ -40,5 +40,21 @@ + + + +