bonus-material-app/nativeplugins/Mpaas-Scan/ios/APRemoteLogging.framework/Headers/SPMTrackerLog.h

242 lines
11 KiB
C
Raw Normal View History

2024-12-20 09:23:59 +08:00
//
// SPMTrackerLog.h
// SPMTracker
//
// Created by BoTao on 2017/2/3.
// Copyright © 2017年 Alipay. All rights reserved.
//
#import <Foundation/Foundation.h>
#ifndef SPMTrackerLog_h
#define SPMTrackerLog_h
#define kSPMActionOpenPage @"openPage"
#define kSPMActionClicked @"clicked"
#define kSPMActionSlided @"slided"
#define kSPMActionExposure @"exposure"
#define kSPMMonitorChInfoKey @"chInfo"
#define kSPMPageIDKey @"pagets"
#define kSPMPageBackKey @"pageBack"
NS_ASSUME_NONNULL_BEGIN
__deprecated_msg("请使用SPMTracker.framework中的SPMTrackerLog")
@interface SPMTrackerLog : NSObject
///////////////////////////////////////////////////////////////////////////////////////////////////////////
// 行为埋点
/**
* -使
*
* @param spmId SPM埋点ID
* @param entityId scmIdrpcId
* @param bizCode bizType
* @param param4 key-value的字符串计入日志
* @param view viewvc对象最好view对象
* @param loggerLevel (LoggerLevelLow/LoggerLevelMedium/LoggerLevelHigh)LoggerLevelMedium
*/
+ (void)clickedLogWithSpmId:(NSString *)spmId entityId:(NSString *)entityId bizCode:(NSString *)bizCode extParams4:(nullable NSDictionary *)param4 view:(NSObject *)view logLevel:(NSString *)logLevel ;
// 可以明确传递pageId时调用次方法否则调用楼上的方法
+ (void)clickedLogWithSpmId:(NSString *)spmId entityId:(NSString *)entityId bizCode:(NSString *)bizCode extParams4:(nullable NSDictionary *)param4 pageId:(NSString *)pageId logLevel:(NSString *)logLevel ;
+ (void)clickedLogWithSpmId:(NSString *)spmId bizCode:(NSString *)bizCode extParams4:(nullable NSDictionary *)param4 view:(NSObject *)view logLevel:(NSString *)logLevel ;
+ (void)clickedLogWithSpmId:(NSString *)spmId bizCode:(NSString *)bizCode extParams4:(nullable NSDictionary *)param4 view:(NSObject *)view ;
/**
* -使
*
* @param spmId SPM埋点ID
* @param entityId scmIdrpcId
* @param bizCode bizType
* @param param4 key-value的字符串计入日志
* @param view viewvc对象最好view对象
* @param loggerLevel (LoggerLevelLow/LoggerLevelMedium/LoggerLevelHigh)LoggerLevelMedium
*/
+ (void)slideLogWithSpmId:(NSString *)spmId entityId:(NSString *)entityId bizCode:(NSString *)bizCode extParams4:(nullable NSDictionary *)param4 view:(NSObject *)view logLevel:(NSString *)logLevel ;
+ (void)slideLogWithSpmId:(NSString *)spmId bizCode:(NSString *)bizCode extParams4:(nullable NSDictionary *)param4 view:(NSObject *)view logLevel:(NSString *)logLevel ;
+ (void)slideLogWithSpmId:(NSString *)spmId bizCode:(NSString *)bizCode extParams4:(nullable NSDictionary *)param4 view:(NSObject *)view ;
/**
* -使
*
* @param spmId SPM埋点ID
* @param entityId scmIdrpcId
* @param bizCode bizType
* @param param4 key-value的字符串计入日志
* @param view viewvc对象最好view对象
* @param loggerLevel (LoggerLevelLow/LoggerLevelMedium/LoggerLevelHigh)LoggerLevelMedium
*/
+ (void)exposureLogWithSpmId:(NSString *)spmId entityId:(NSString *)entityId bizCode:(NSString *)bizCode extParams4:(nullable NSDictionary *)param4 view:(NSObject *)view logLevel:(NSString *)logLevel ;
// 可以明确传递pageId时调用次方法否则调用楼上的方法
+ (void)exposureLogWithSpmId:(NSString *)spmId entityId:(NSString *)entityId bizCode:(NSString *)bizCode extParams4:(nullable NSDictionary *)param4 pageId:(NSString *)pageId logLevel:(NSString *)logLevel ;
+ (void)exposureLogWithSpmId:(NSString *)spmId bizCode:(NSString *)bizCode extParams4:(nullable NSDictionary *)param4 view:(NSObject *)view logLevel:(NSString *)logLevel ;
+ (void)exposureLogWithSpmId:(NSString *)spmId bizCode:(NSString *)bizCode extParams4:(nullable NSDictionary *)param4 view:(NSObject *)view ;
/*
*
* 使
* https://lark.alipay.com/data/help/willav
*
* @param spmId: SPMID
* @param entityId scmIdrpcId
* @param bizCode bizType
* @param rid: RPC唯一标示traceridrecommondid等
* @param pos: cell索引号SPMID的N
* @param extParams: key-value的字符串计入日志
* @param view: viewvc对象最好view对象
* @param loggerLevel (LoggerLevelLow/LoggerLevelMedium/LoggerLevelHigh)LoggerLevelMedium
*/
+ (void)mergerExposureLogWithSpmId:(NSString *)spmId entityId:(NSString *)entityId rid:(NSString *)rid position:(NSString *)pos bizCode:(NSString *)bizCode extParams:(NSDictionary *)extParams view:(NSObject *)view logLevel:(NSString *)logLevel;
// 可以明确传递pageId时调用次方法否则调用楼上的方法
+ (void)mergerExposureLogWithSpmId:(NSString *)spmId entityId:(NSString *)entityId rid:(NSString *)rid position:(NSString *)pos bizCode:(NSString *)bizCode extParams:(NSDictionary *)extParams pageId:(NSString *)pageId logLevel:(NSString *)logLevel;
+ (void)mergerExposureLogWithSpmId:(NSString *)spmId rid:(NSString *)rid position:(NSString *)pos bizCode:(NSString *)bizCode extParams:(NSDictionary *)extParams view:(NSObject *)view logLevel:(NSString *)logLevel;
+ (void)mergerExposureLogWithSpmId:(NSString *)spmId rid:(NSString *)rid position:(NSString *)pos bizCode:(NSString *)bizCode extParams:(NSDictionary *)extParams view:(NSObject *)view;
/*
*
* pageMonitor的onViewWillDisappear中会调用
*
* @param spmId: SPMIDspmid都上报a13.b42a13.b42.c11a13.b42.c51.d222等合并曝光日志都上报并清除记录
* @param view: viewvc对象最好view对象
*/
+ (void)commiteMergerExposureLogWithSpmId:(NSString *)spmId view:(NSObject *)view;
/**
* @param actionId action ID actionID定义在APMonitorPointDataDefines.h
* @param extParams 4key-value的字符串计入日志
* @param spmId ID@
* @param entityId scmIdrpcId
* @param bizCode bizType
* @param view viewvc对象最好view对象
* @param loggerLevel (LoggerLevelLow/LoggerLevelMedium/LoggerLevelHigh)LoggerLevelMedium
*/
+ (void)writeLogWithActionId:(NSString *)actionId extParams:(NSArray *)extParams spmId:(NSString *)spmId entityId:(NSString *)entityId bizCode:(NSString *)bizCode view:(NSObject *)view logLevel:(NSString *)logLevel;
+ (void)writeLogWithActionId:(NSString *)actionId extParams:(NSArray *)extParams spmId:(NSString *)spmId bizCode:(NSString *)bizCode view:(nonnull NSObject *)view logLevel:(NSString *)logLevel;
///////////////////////////////////////////////////////////////////////////////////////////////////////////
// pageMonitor
/**
* pageMonitorchinfo信息scheme跳转的方法中最后调用该方法logPageEndWithSpmId时使用chinfo信息
*
* @param options scheme参数
* @param viewController当前vckey
*
* @return chinfo时YESNO
*/
+ (BOOL)spliteSchemaOptions:(NSDictionary *)options viewController:(NSObject *)viewController;
/**
* pageMonitorchinfo信息
*
* @param info chInfo值
* @param viewController当前vckey
*
*/
+ (void)updateChInfo:(NSString *)info viewController:(NSObject *)viewController;
/**
* pageMonitorvc获取chInfo
*/
+ (NSString *)chInfoForViewController:(NSObject *)vc;
/**
* pageMonitor
*
* @param spmId spm
* @param view viewvc对象最好view对象
*
*/
+ (void)onViewDidAppear:(NSString *)spmId view:(nonnull NSObject *)view;
/**
* pageMonitor
* @param spmId spm
* @param view viewvc对象最好view对象
* @param bizCode bizCode
* @param param 4key不要使用chInfo
*/
+ (void)onViewWillDisappear:(NSString *)spmId view:(nonnull NSObject *)view bizCode:(NSString *)bizCode param:(NSDictionary *)param;
/**
* pageid对应的所有埋点缓存数据
* @param view viewvc对象最好view对象
*/
+ (void)onDealloc:(nonnull NSObject *)view;
/**
* onViewDidAppear:view:H5专用
*/
+ (void)logPageStartWithSpmId:(NSString *)spmId index:(NSObject *)index;
/**
* onViewWillDisappear:view:bizCode:param:H5专用
*/
+ (void)logPageEndWithSpmId:(NSString *)spmId
index:(NSObject *)index
bizType:(nullable NSString *)bizType
param:(nullable NSDictionary *)param;
///////////////////////////////////////////////////////////////////////////////////////////////////////////
// pagets
/**
* RPC透传pageIdview获得pageId
*
* @param view viewvc对象最好view对象
*
* @return pageId为value的字典
**/
+ (NSDictionary* )headerParamsForPagets:(NSObject *)view;
/**
* view获得miniPageId
*
* @param view viewvc对象最好view对象
*
* @return miniPageId值
**/
+ (NSString *)getMiniPageId:(NSObject *)view;
/**
* view获得pageId
*
* @param view viewvc对象最好view对象
*
* @return pageId值
**/
+ (NSString *)getPageId:(NSObject *)view;
///////////////////////////////////////////////////////////////////////////////////////////////////////////
// pageback
/**
* 退
*
* @param pageBackDicBlack 退spmid4a13.b42
**/
+(void)updatePageBackDicBlack:(NSArray<NSString *> *)pageBackDicBlack;
@end
NS_ASSUME_NONNULL_END
#endif