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 */; };
188814BC2C85BB76009299A9 /* AiBkzhAuthManager.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AiBkzhAuthManager.m; sourceTree = "<group>"; };
188814C02C85C2BA009299A9 /* AESCBCHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AESCBCHelper.h; sourceTree = "<group>"; };
188814C12C85C2BA009299A9 /* AESCBCHelper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AESCBCHelper.m; sourceTree = "<group>"; };
- 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 = "<absolute>"; };
189365522CEB115200023B62 /* KeyboardHidManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = KeyboardHidManager.h; sourceTree = "<group>"; };
189365532CEB115200023B62 /* KeyboardHidManager.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = KeyboardHidManager.m; sourceTree = "<group>"; };
189365562CEB153000023B62 /* MSUtilis.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSUtilis.h; sourceTree = "<group>"; };
18AD83282BFB22DE009BDE3B /* AiSender.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AiSender.m; sourceTree = "<group>"; };
18D57A002C917385003D5714 /* NMouseSdk.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = NMouseSdk.h; sourceTree = "<group>"; };
18D57A012C917385003D5714 /* NMouseSdk.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = NMouseSdk.m; sourceTree = "<group>"; };
+ 18E0C5872D0FF87C0093BA8F /* stb_identify.so */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; path = stb_identify.so; sourceTree = "<group>"; };
+ 18E0C5882D0FF87C0093BA8F /* stb_app.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = stb_app.h; sourceTree = "<group>"; };
+ 18E0C5892D0FF87C0093BA8F /* stb_identify.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = stb_identify.a; sourceTree = "<group>"; };
+ 18E0C58F2D0FF8E30093BA8F /* stb_identify.so */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; path = stb_identify.so; sourceTree = "<group>"; };
+ 18E0C5902D0FF8E30093BA8F /* stb_app.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = stb_app.h; sourceTree = "<group>"; };
+ 18E0C5912D0FF8E30093BA8F /* stb_identify.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = stb_identify.a; sourceTree = "<group>"; };
+ 18E0C5952D1000DF0093BA8F /* ByteDanceSdk.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ByteDanceSdk.h; sourceTree = "<group>"; };
+ 18E0C5962D1000DF0093BA8F /* ByteDanceSdk.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ByteDanceSdk.m; sourceTree = "<group>"; };
18EF7AEA2C7603E800AC5223 /* adpcm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = adpcm.h; sourceTree = "<group>"; };
18EF7AEB2C7603E800AC5223 /* TlwMouseSdk.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TlwMouseSdk.m; sourceTree = "<group>"; };
18EF7AEC2C7603E800AC5223 /* TlwTools.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TlwTools.m; sourceTree = "<group>"; };
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 */,
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 */,
);
180E7A9D2BD7BB12008558E8 = {
isa = PBXGroup;
children = (
+ 18E0C5842D0FF84A0093BA8F /* ByteDance */,
1899600D2CEAD78B0042505F /* Keyboard */,
18D579FF2C91733E003D5714 /* NMouseSdk */,
18862A172C8064E300D3564D /* Manager */,
180E7AA82BD7BB12008558E8 /* AiMouseSdk */,
180E7AA72BD7BB12008558E8 /* Products */,
180E7D092BD8FEB2008558E8 /* Frameworks */,
- 189365512CEB0C3700023B62 /* libAiMouseSdk copy.a */,
);
sourceTree = "<group>";
};
path = NMouseSdk;
sourceTree = "<group>";
};
+ 18E0C5842D0FF84A0093BA8F /* ByteDance */ = {
+ isa = PBXGroup;
+ children = (
+ 18E0C58D2D0FF8E30093BA8F /* x86_64 */,
+ 18E0C5852D0FF87C0093BA8F /* arm */,
+ 18E0C5952D1000DF0093BA8F /* ByteDanceSdk.h */,
+ 18E0C5962D1000DF0093BA8F /* ByteDanceSdk.m */,
+ );
+ path = ByteDance;
+ sourceTree = "<group>";
+ };
+ 18E0C5852D0FF87C0093BA8F /* arm */ = {
+ isa = PBXGroup;
+ children = (
+ 18E0C5862D0FF87C0093BA8F /* lib */,
+ );
+ path = arm;
+ sourceTree = "<group>";
+ };
+ 18E0C5862D0FF87C0093BA8F /* lib */ = {
+ isa = PBXGroup;
+ children = (
+ 18E0C5872D0FF87C0093BA8F /* stb_identify.so */,
+ 18E0C5882D0FF87C0093BA8F /* stb_app.h */,
+ 18E0C5892D0FF87C0093BA8F /* stb_identify.a */,
+ );
+ path = lib;
+ sourceTree = "<group>";
+ };
+ 18E0C58D2D0FF8E30093BA8F /* x86_64 */ = {
+ isa = PBXGroup;
+ children = (
+ 18E0C58E2D0FF8E30093BA8F /* lib */,
+ );
+ path = x86_64;
+ sourceTree = "<group>";
+ };
+ 18E0C58E2D0FF8E30093BA8F /* lib */ = {
+ isa = PBXGroup;
+ children = (
+ 18E0C58F2D0FF8E30093BA8F /* stb_identify.so */,
+ 18E0C5902D0FF8E30093BA8F /* stb_app.h */,
+ 18E0C5912D0FF8E30093BA8F /* stb_identify.a */,
+ );
+ path = lib;
+ sourceTree = "<group>";
+ };
18EF7AE72C7603E800AC5223 /* TlwMouseSdk */ = {
isa = PBXGroup;
children = (
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 */,
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 */,
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 */,
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 */,
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)";
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)";
--- /dev/null
+//
+// ByteDanceSdk.h
+// AiMouseManager
+//
+// Created by incar on 2024/12/16.
+//
+
+#import <Foundation/Foundation.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface ByteDanceSdk : NSObject
+
++(ByteDanceSdk *)shared;
+
+@end
+
+NS_ASSUME_NONNULL_END
--- /dev/null
+//
+// 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
--- /dev/null
+/* 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 <stdint.h>
+
+#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
+
--- /dev/null
+/* 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 <stdint.h>
+
+#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
+
#import "AiMouseConfig.h"
#import "KeyboardHidManager.h"
#import "KeyboardSdk.h"
+#import "ByteDanceSdk.h"
@interface DeviceManger()<TlwMouseDelegate,AiMouseDelegate,NMouseSdkDelegate,KeyboardSdkDelegate>
[self setupHid];
[self setupTimer];
// [self setupKeyboard];
+ [[ByteDanceSdk shared] init];
}
return self;
}
</Locations>
</BreakpointContent>
</BreakpointProxy>
+ <BreakpointProxy
+ BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
+ <BreakpointContent
+ uuid = "CA89549A-270E-4CEC-9288-E1E21DC98E28"
+ shouldBeEnabled = "Yes"
+ ignoreCount = "0"
+ continueAfterRunningActions = "No"
+ filePath = "AiMouseSdk/ByteDance/ByteDanceSdk.m"
+ startingColumnNumber = "9223372036854775807"
+ endingColumnNumber = "9223372036854775807"
+ startingLineNumber = "32"
+ endingLineNumber = "32"
+ landmarkName = "eventCallBack(type, report, data_len)"
+ landmarkType = "9">
+ </BreakpointContent>
+ </BreakpointProxy>
</Breakpoints>
</Bucket>