mergemilitary/Assets/Plugins/ToukaGames/AnalyticsSDK/Tools/UMRemoteConfig.framework/Headers/UMRemoteConfig.h

116 lines
3.4 KiB
Objective-C
Raw 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.

//
// UMRemoteConfig.h
// myFireBase
//
// Created by 张军华 on 2019/12/30.
// Copyright © 2019年 张军华. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "UMRemoteConfigEnum.h"
NS_ASSUME_NONNULL_BEGIN
typedef void (^UMRemoteConfigFetchCompletion)(UMRemoteConfigFetchStatus status,
NSError *_Nullable error);
typedef void (^UMRemoteConfigActivateCompletion)(NSError *_Nullable error);
@protocol UMRemoteConfigDelegate<NSObject>
@optional
/**
* @brief 获取服务器的网络请求的回调
* @param status see UMRemoteConfigFetchStatus
* @param error 错误信息
* @param userInfo 该回调的扩展信息
* @note 调用函数触发此回调
* fetchWithCompletionHandler
* fetchAndActivateWithCompletionHandler
*/
-(void)remoteConfigFetched:(UMRemoteConfigFetchStatus)status
error:(nullable NSError*)error
userInfo:(nullable id)userInfo;
/**
* @brief 远程配置被激活的回调
* @param status see UMRemoteConfigActiveStatus
* @param error 错误信息
* @param userInfo 该回调的扩展信息
* @note 调用函数触发此回调
* fetchAndActivateWithCompletionHandler
* activateWithCompletionHandler
*/
-(void)remoteConfigActivated:(UMRemoteConfigActiveStatus)status
error:(nullable NSError*)error
userInfo:(nullable id)userInfo;
/**
* @brief 配置已经准备就绪
* @param status see UMRemoteConfigActiveStatus
* @param error 错误信息
* @param userInfo 该回调的扩展信息
* @note 调用函数触发此回调
* fetchWithCompletionHandler
*/
-(void)remoteConfigReady:(UMRemoteConfigActiveStatus)status
error:(nullable NSError*)error
userInfo:(nullable id)userInfo;
@end
@class UMRemoteConfigSettings;
@interface UMRemoteConfig : NSObject
@property(nonatomic,weak)id<UMRemoteConfigDelegate> remoteConfigDelegate;
@property(nonatomic, readwrite, strong) UMRemoteConfigSettings *configSettings;
#pragma mark - init
/**
* @brief 远程配置单例
* @param delegate see UMRemoteConfigDelegate
* @note 用户初始化时候,
先调用 remoteConfigWithDelegate:(id<UMRemoteConfigDelegate>)delegate可以保证上次ready的数据可以回调给用户。
*/
+ (UMRemoteConfig *)remoteConfigWithDelegate:(nullable id<UMRemoteConfigDelegate>)delegate
withConfigSettings:(nullable UMRemoteConfigSettings*)configSettings;
+ (UMRemoteConfig *)remoteConfig;
#pragma mark - activate
/**
* @brief 激活本地配置
* @param completionHandler 回调
*/
+ (void)activateWithCompletionHandler:(nullable UMRemoteConfigActivateCompletion)completionHandler;
#pragma mark - Get Config
/**
* @brief 获取配置信息
* @param key 对应的key
* @note 获取配置的有限顺利,远程配置->Defaults
*/
+ (nullable id)configValueForKey:(nullable NSString *)key;
#pragma mark - Defaults
/**
* @brief 设置本地默认配置
* @param defaults 对应的本地配置
*/
+ (void)setDefaults:(nullable NSDictionary<NSString *, NSObject *> *)defaults;
/**
* @brief 设置本地默认配置
* @param fileName 包含本地配置的plist文件
*/
+ (void)setDefaultsFromPlistFileName:(nullable NSString *)fileName;
+(NSString*)sdkVersion;
@end
NS_ASSUME_NONNULL_END