#import <TDOS_Diagnose/TDOS_Diagnose.h> // 日志 SDK 模块#import <TDOS_Diagnose/TDMMKVFactoryImpl.h> // MMKV 模块#import <TDOS_Diagnose/TDOSLoggerProxy.h> // 打印日志模块#import <TDOS_Diagnose/TDLogFilePackerImp.h> // 文件压缩模块// 使用 SDK 提供的默认模块TDOSLoggerProxy *loggerProxy = [TDOSLoggerProxy defaultProxy];TDMMKVFactory *kvFactory = [TDMMKVFactoryImpl sharedInstance];TDLogFilePackerImp *filePacker = [[TDLogFilePackerImp alloc] init];// 创建一个 TDIAGDepends 实例子TDIAGDepends *depends = [TDIAGDepends dependsWithLogImp:loggerProxykvFactoryImp:kvFactoryandFilePackerImp:filePacker];
// appid & appKey, 平台生成NSString *appID = BUGLY_APPID;NSString *appKey = BUGLY_APPKEY;
- (NSString *)guidForTDLog; 方法,该方法返回用户唯一ID,平台下发命令时填写此 ID。// 生成捞日志模块配置实例,并初始化TDLogSDKConfig *config = [TDLogSDKConfig configWithAppId:appIDappKey:appKeydataSource:selfdepends:depends];
/// 设置服务域名类型@property (nonatomic,assign)TDLogServerHostType serverHostType;/// 设置上报域名https://cloud.bugly.qq.com/// 自定义服务器域名@property(nonatomic,strong)NSString *customServerHost;
// 开启频率控制(默认不限制),传空表示使用 SDK 默认频控策略:2次/5min,也可传入自定义策略;被限制后自动上报接口会回调失败。// 举例:10min内最多只允许3次上报(采用令牌桶算法)// TDLogFrequencyControlStrategy *strategy = [TDLogFrequencyControlStrategy new];// strategy.times = 3;// strategy.timeInterval = 10 * 60;// 注意,该接口要求 TDLogSDKDataSource 必须实现 whitelistForAutoUploadTags 协议,提供自动上报 tag 白名单,避免影响必要上报。[config setFrequencyLimitStatusForAutoUpload:YESwithCustomControlStrategy:nil]; // 推荐设置,确保不频繁自动上报// 开启流量控制(默认不限制),传0表示禁止上报,传入负值代表不限制,被限制后自动上报接口会回调失败。// 注意,该接口要求 TDLogSDKDataSource 必须实现 whitelistForAutoUploadTags 协议,提供自动上报 tag 白名单,避免影响必要上报。[config setTrafficQuota24hLimitForAutoUpload:(200 * 1024 * 1024)xgQuota:(50 * 1024 * 1024)]; // 可选,设置自动上报流量限额
[[TDLogSDK sharedInstance] startWithConfig:config];
// 初始化打印日志模块TDOSLoggerConfig *loggerConfig = [TDOSLoggerConfig defaultConfig];TDOSLogger *logger = [[TDOSLogger alloc] initWithConfig:loggerConfig];
TDOSLoggerProxy *loggerProxy = [TDOSLoggerProxy defaultProxy];[loggerProxy setLogger:logger];
post_install do |installer|installer.pods_project.targets.each do |target|if target.name == "MMKV"target.build_configurations.each do |config|config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= ['$(inherited)', 'MMKV_IOS_EXTENSION']endendendend
文档反馈