Files
2023-04-10 18:48:16 +08:00

111 lines
2.1 KiB
Objective-C
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//
// MOBFLogService.h
// MOBFoundation
//
// Created by 冯鸿杰 on 17/2/16.
// Copyright © 2017年 MOB. All rights reserved.
//
#import <Foundation/Foundation.h>
@class MOBFLogService;
/**
日志服务协议
*/
@protocol MOBFLogServiceDelegate <NSObject>
/**
是否需要发送日志
@param logService 日志服务
@param logs 已有日志信息集合
@return YES 表示需要发送日志NO 表示不需要发送日志
*/
- (BOOL)logService:(MOBFLogService *)logService
needsSendLogs:(NSArray *)logs;
/**
发送日志
@param logService 日志服务
@param logs 需要发送的日志信息集合
@param result 发送完成回调成功时传入YES否则传入NO
*/
- (void)logService:(MOBFLogService *)logService
didSendLogs:(NSArray *)logs
result:(void (^)(BOOL succeed, NSArray *sentLogs))result;
@end
/**
日志服务
*/
@interface MOBFLogService : NSObject
/**
委托对象
*/
@property (nonatomic, weak) id<MOBFLogServiceDelegate> delegate;
/**
失败最大重试次数
*/
@property (nonatomic) NSInteger failRetryMaxCount;
/**
初始化
@param name 日志服务名称
@return 日志服务对象
*/
- (instancetype)initWithName:(NSString *)name;
/**
初始化
@param name 日志服务名称
@param secretKey 密钥AES
@return 日志服务对象
*/
- (instancetype)initWithName:(NSString *)name
secretKey:(NSString *)secretKey;
/**
写入数据
@param data 日志数据
*/
- (void)writeData:(id<NSCoding>)data;
/**
写入数据数组
@param data 日志数据
*/
- (void)writeDatas:(NSArray *)data;
/**
同步写入数据
@param data 日志数据
*/
- (void)syncWriteData:(id<NSCoding>)data;
/**
需要发送日志,服务会对当前日志进行检测,如果发现存在日志会跟委托进行确认是否需要发送,然后再进行后续操作
*/
- (void)needsSendLog;
/**
需要发送日志,服务会对当前日志进行检测,如果发现存在日志会跟委托进行确认是否需要发送,然后再进行后续操作
@param time 延时检测时间
*/
- (void)needsSendLogAfterTime:(NSTimeInterval)time;
@end