|
@@ -0,0 +1,149 @@
|
|
|
+//
|
|
|
+// BuglyConfig.h
|
|
|
+// Bugly
|
|
|
+//
|
|
|
+// Copyright (c) 2016年 Tencent. All rights reserved.
|
|
|
+//
|
|
|
+
|
|
|
+#pragma once
|
|
|
+
|
|
|
+#define BLY_UNAVAILABLE(x) __attribute__((unavailable(x)))
|
|
|
+
|
|
|
+#if __has_feature(nullability)
|
|
|
+#define BLY_NONNULL __nonnull
|
|
|
+#define BLY_NULLABLE __nullable
|
|
|
+#define BLY_START_NONNULL _Pragma("clang assume_nonnull begin")
|
|
|
+#define BLY_END_NONNULL _Pragma("clang assume_nonnull end")
|
|
|
+#else
|
|
|
+#define BLY_NONNULL
|
|
|
+#define BLY_NULLABLE
|
|
|
+#define BLY_START_NONNULL
|
|
|
+#define BLY_END_NONNULL
|
|
|
+#endif
|
|
|
+
|
|
|
+#import <Foundation/Foundation.h>
|
|
|
+
|
|
|
+#import "BuglyLog.h"
|
|
|
+
|
|
|
+BLY_START_NONNULL
|
|
|
+
|
|
|
+@protocol BuglyDelegate <NSObject>
|
|
|
+
|
|
|
+@optional
|
|
|
+/**
|
|
|
+ * 发生异常时回调
|
|
|
+ *
|
|
|
+ * @param exception 异常信息
|
|
|
+ *
|
|
|
+ * @return 返回需上报记录,随异常上报一起上报
|
|
|
+ */
|
|
|
+- (NSString * BLY_NULLABLE)attachmentForException:(NSException * BLY_NULLABLE)exception;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 发生sigkill时回调
|
|
|
+ *
|
|
|
+ * @param exception 异常信息
|
|
|
+ *
|
|
|
+ * @return 返回需上报记录,随sigkill异常上报一起上报,返回值由app开发者决定
|
|
|
+ */
|
|
|
+- (NSString * BLY_NULLABLE)attachmentForSigkill;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 策略激活时回调
|
|
|
+ *
|
|
|
+ * @param tacticInfo
|
|
|
+ *
|
|
|
+ * @return app是否弹框展示
|
|
|
+ */
|
|
|
+- (BOOL) h5AlertForTactic:(NSDictionary *)tacticInfo;
|
|
|
+
|
|
|
+@end
|
|
|
+
|
|
|
+@interface BuglyConfig : NSObject
|
|
|
+
|
|
|
+/**
|
|
|
+ * SDK Debug信息开关, 默认关闭
|
|
|
+ */
|
|
|
+@property (nonatomic, assign) BOOL debugMode;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 设置自定义渠道标识
|
|
|
+ */
|
|
|
+@property (nonatomic, copy) NSString *channel;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 设置自定义版本号
|
|
|
+ */
|
|
|
+@property (nonatomic, copy) NSString *version;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 设置自定义设备唯一标识
|
|
|
+ */
|
|
|
+@property (nonatomic, copy) NSString *deviceIdentifier;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 卡顿监控开关,默认关闭
|
|
|
+ */
|
|
|
+@property (nonatomic) BOOL blockMonitorEnable;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 卡顿监控判断间隔,单位为秒
|
|
|
+ */
|
|
|
+@property (nonatomic) NSTimeInterval blockMonitorTimeout;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 设置 App Groups Id (如有使用 Bugly iOS Extension SDK,请设置该值)
|
|
|
+ */
|
|
|
+@property (nonatomic, copy) NSString *applicationGroupIdentifier;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 进程内还原开关,默认开启
|
|
|
+ */
|
|
|
+@property (nonatomic) BOOL symbolicateInProcessEnable;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 非正常退出事件记录开关,默认关闭
|
|
|
+ */
|
|
|
+@property (nonatomic) BOOL unexpectedTerminatingDetectionEnable;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 页面信息记录开关,默认开启
|
|
|
+ */
|
|
|
+@property (nonatomic) BOOL viewControllerTrackingEnable;
|
|
|
+
|
|
|
+/**
|
|
|
+ * Bugly Delegate
|
|
|
+ */
|
|
|
+@property (nonatomic, assign) id<BuglyDelegate> delegate;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 控制自定义日志上报,默认值为BuglyLogLevelSilent,即关闭日志记录功能。
|
|
|
+ * 如果设置为BuglyLogLevelWarn,则在崩溃时会上报Warn、Error接口打印的日志
|
|
|
+ */
|
|
|
+@property (nonatomic, assign) BuglyLogLevel reportLogLevel;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 崩溃数据过滤器,如果崩溃堆栈的模块名包含过滤器中设置的关键字,则崩溃数据不会进行上报
|
|
|
+ * 例如,过滤崩溃堆栈中包含搜狗输入法的数据,可以添加过滤器关键字SogouInputIPhone.dylib等
|
|
|
+ */
|
|
|
+@property (nonatomic, copy) NSArray *excludeModuleFilter;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 控制台日志上报开关,默认开启
|
|
|
+ */
|
|
|
+@property (nonatomic, assign) BOOL consolelogEnable;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 崩溃退出超时,如果监听到崩溃后,App一直没有退出,则到达超时时间后会自动abort进程退出
|
|
|
+ * 默认值 5s, 单位 秒
|
|
|
+ * 当赋值为0时,则不会自动abort进程退出
|
|
|
+ */
|
|
|
+@property (nonatomic, assign) NSUInteger crashAbortTimeout;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 设置自定义联网、crash上报域名
|
|
|
+ */
|
|
|
+@property (nonatomic, copy) NSString *crashServerUrl;
|
|
|
+
|
|
|
+@end
|
|
|
+BLY_END_NONNULL
|