...
|
...
|
@@ -9,10 +9,120 @@ |
|
|
#ifndef YH_Analytics_YHAnalyticsMacro_h
|
|
|
#define YH_Analytics_YHAnalyticsMacro_h
|
|
|
|
|
|
/**************** Debug Tool ***************/
|
|
|
#ifdef DEBUG
|
|
|
#define DLog(fmt, ...) NSLog((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__);
|
|
|
#else
|
|
|
#define DLog(...)
|
|
|
#endif
|
|
|
|
|
|
/************* General Tool **************/
|
|
|
|
|
|
#define kSafeValue(X) (!(X) ? [NSNull null] : (X))
|
|
|
|
|
|
/*********** App Configuration ************/
|
|
|
|
|
|
#define kYHAnalyticsSDKVersion @"1.0" // 数据分析库版本
|
|
|
#define kDefalutChannelNum @"2119" // 推广渠道号
|
|
|
#define kMinInterval 60 // 间隔发送的最小时间周期,60秒
|
|
|
#define kMaxLocalEventsCount 3000 // 本地持久化event最大条数,3000条
|
|
|
#define kMaxLocalRecoderFileSize (1024 * 300) // 本地持久化文件大小(300KB)
|
|
|
|
|
|
/*********** Path and FileName *************/
|
|
|
|
|
|
#define kPathCaches [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) objectAtIndex:0]
|
|
|
#define kPathLogSystem [kPathCaches stringByAppendingPathComponent:@"YHLogSystem"] // 日志保存路径
|
|
|
|
|
|
#define kLogSystemName @"LogSystem.plist" // 日志文件名称
|
|
|
|
|
|
/********* Service and Interface *********/
|
|
|
|
|
|
#define kURLAnalyticsService @"http://analytics.yhurl.com/" // 数据分析服务器
|
|
|
|
|
|
#define kYASApiMethodUploadData @"yas_mobile" // 上传监测数据接口
|
|
|
#define kYASApiMethodGetNewStrategy @"" // 获取新发送策略,接口名未定
|
|
|
|
|
|
/************ UserDefault Key ************/
|
|
|
|
|
|
#define kKeyUserDefaultsLastUploadTimestamp @"lastSendTimestampKey" // 间隔发送的上次时间
|
|
|
#define kKeyUserDefaultsCustomInterval @"customInterval" // 间隔发送的时间周期
|
|
|
#define kKeyUserDefaultsLogStrategy @"LOGSTRATEGY" // 发送策略
|
|
|
|
|
|
/**************** Json Key ***************/
|
|
|
|
|
|
// 四种数据类型
|
|
|
#define JsonKeyDataTypeDevice @"device" // 终端信息,包括终端的状态
|
|
|
#define JsonKeyDataTypeStatus @"status" // 状态信息,包括一次操作时,用户的位置和网络等信息
|
|
|
#define JsonKeyDataTypeEvents @"events" // 事件信息,包括用户的操作日志
|
|
|
#define JsonKeyDataTypeErrors @"errors" // 错误信息,包括用户在使用过程中发生的错误
|
|
|
|
|
|
// 终端参数
|
|
|
#define JsonKeyDeviceSV @"sv" // 采集数据sdk的版本
|
|
|
#define JsonKeyDeviceAK @"ak" // App key 业务
|
|
|
#define JsonKeyDeviceCH @"ch" // 推广渠道号
|
|
|
#define JsonKeyDeviceOS @"os" // 操作系统
|
|
|
#define JsonKeyDeviceOSV @"osv" // 操作系统版本
|
|
|
#define JsonKeyDeviceDM @"dm" // 设备型号
|
|
|
#define JsonKeyDeviceUDID @"udid" // 设备标识
|
|
|
#define JsonKeyDeviceIFA @"ifa" // idfa
|
|
|
#define JsonKeyDeviceIFV @"ifv" // idfv
|
|
|
#define JsonKeyDeviceRES @"res" // 分辨率
|
|
|
#define JsonKeyDeviceMAC @"mac" // Mac地址
|
|
|
|
|
|
// 状态参数
|
|
|
#define JsonKeyStatusAV @"av" // App版本号
|
|
|
#define JsonKeyStatusAB @"ab" // App Build号
|
|
|
#define JsonKeyStatusNET @"net" // 当前网络状态 0 - 未知, 1 - WiFi, 2 - 2G, 3 - 3G,4 - 4G
|
|
|
#define JsonKeyStatusSID @"sid" // 会话id(由设备标识和启动时间戳md5)
|
|
|
#define JsonKeyStatusCA @"ca" // 运营商 0 - 未知, 1 - 中国移动, 2 - 中国电信, 3 - 中国联通
|
|
|
#define JsonKeyStatusUDID @"udid" // 设备标识
|
|
|
#define JsonKeyStatusCY @"cy" // 国家
|
|
|
#define JsonKeyStatusLN @"ln" // 语言
|
|
|
#define JsonKeyStatusLO @"lo" // 经度
|
|
|
#define JsonKeyStatusLA @"la" // 纬度
|
|
|
|
|
|
// 事件参数
|
|
|
#define JsonKeyEventUID @"uid" // 用户id
|
|
|
#define JsonKeyEventTS @"ts" // 时间戳
|
|
|
#define JsonKeyEventSID @"sid" // 会话id(由设备标识和启动时间戳md5)
|
|
|
#define JsonKeyEventOP @"op" // 操作id
|
|
|
#define JsonKeyEventPARAM @"param" // 操作参数
|
|
|
#define JsonKeyEventINDEX @"index" // 事件序号
|
|
|
|
|
|
// 错误参数
|
|
|
#define JsonKeyErrorUID @"uid" // 用户id
|
|
|
#define JsonKeyErrorTS @"ts" // 时间戳
|
|
|
#define JsonKeyErrorSID @"sid" // 会话id(由设备标识和启动时间戳做md5)
|
|
|
#define JsonKeyErrorET @"et" // 错误类型 error type
|
|
|
#define JsonKeyErrorEC @"ec" // 错误码
|
|
|
#define JsonKeyErrorST @"st" // 错误堆栈(crash log)
|
|
|
#define JsonKeyErrorEI @"ei" // 发生错误接口
|
|
|
#define JsonKeyErrorPARAM @"param" // 错误自定义参数
|
|
|
|
|
|
// 中断和异常参数,文档中没有定义
|
|
|
#define JsonKeyCrashCallstack @"cs" // 中断或异常堆栈
|
|
|
#define JsonKeyCrashSignal @"sig" // 中断信号量
|
|
|
#define JsonKeyCrashSignalName @"sign" // 中断信号名称
|
|
|
#define JsonKeyCrashExceptionName @"exn" // 异常名称
|
|
|
#define JsonKeyCrashExceptionReason @"exr" // 异常原因
|
|
|
|
|
|
/**************** Parameters ***************/
|
|
|
|
|
|
// 当前网络状态
|
|
|
#define kNetWorkStatusUnknow @"0" // 未知
|
|
|
#define kNetWorkStatusWIFI @"1" // WiFi
|
|
|
#define kNetWorkStatus2G @"2" // 2G
|
|
|
#define kNetWorkStatus3G @"3" // 3G
|
|
|
#define kNetWorkStatus4G @"4" // 4G
|
|
|
|
|
|
// 运营商
|
|
|
#define kCarrierCodeChinaUnknown @"0" // 未知
|
|
|
#define kCarrierCodeChinaMobile @"1" // 中国移动
|
|
|
#define kCarrierCodeChinaTelecom @"2" // 中国电信
|
|
|
#define kCarrierCodeChinaUnicom @"3" // 中国联通
|
|
|
#define kCarrierCodeChinaTietong @"4" // 中国铁通
|
|
|
|
|
|
#define kErrorTypeHTTP @"NETWORK" // HTTP返回非200的网络错误(et为NETWORK)
|
|
|
#define kErrorTypeCrash @"CRASH" // 客户端Crash错误(et为CRASH)
|
|
|
|
|
|
#endif |
...
|
...
|
|