BBASMOSSettings.h 3.45 KB
//
//  BBASMOSSettings.h
//  BBAMNP
//
//  Created by baidu on 2019/8/23.
//
#import <Foundation/Foundation.h>
#import <CocoaSettings/CocoaSettings.h>

@protocol BBASMOSSettingsProtocol<NSObject>

@optional

/// debug 模式开关, 兼容部分目前使用 _DEBUGMENU 宏的 debug 代码. 后续应当将 debug 想关的代码逻辑已入 debug 工程目录下, 并废弃这个开关, 而不再与原工程揉在一起.
@property (nonatomic, assign) BOOL debugModeSwitch;
/// 是否使用客户端 JSNative 配置表. 目前仅控制 debug 开关, 后续可考虑把 ABTest 部分也接入CocoaSettings.
@property (nonatomic, assign) BOOL jsNativeDesFromFE;
/// 是否使用多实例视频播放器.
@property (nonatomic, assign) BOOL multitonVideoPlayerSwitch;
/// 是否显示预加载 App core 的版本号
@property (nonatomic, assign) BOOL showPreloadAppCoreVersionSwitch;
/// 摇一摇清除缓存
@property (nonatomic, assign) BOOL shakeToCleanMemorySwitch;
/// 忽略全部鉴权请求, 打开后全部鉴权直接返回通过.
@property (nonatomic, assign) BOOL ignoreAllAuthorizeSwitch;
/// 使用 debug game inner core
@property (nonatomic, assign) BOOL usingDebugGameInnerCoreSwitch;
/// 使用 game debug console
@property (nonatomic, assign) BOOL usingDebugGameConsoleSwitch;
/// 背景音频使用AVPlayer播放
@property (nonatomic, assign) BOOL audioUsingAVPlayerSwitch;


/// 本身就是一个 debug 功能的开关, 调用时不再使用 debugModeSettings, 而统一使用 standard.
/// 使用 debug App core.
@property (nonatomic, assign) BOOL usingDebugAppCoreSwitch;
/// 使用 debug DynamicLib
@property (nonatomic, assign) BOOL usingDebugDynamicLibSwitch;
/// 请求忽略Https校验
@property (nonatomic, assign) BOOL ignoreHttpsSwitch;
/// 使用 debug game core
@property (nonatomic, assign) BOOL usingDebugGameCoreSwitch;
/// 忽略域名校验
@property (nonatomic, assign) BOOL ignoreNetworkDomainCheckSwitch;
/// 显示派发appready的提示,打开后如果是提前派发的appready,会有toast提示
@property (nonatomic, assign) BOOL showDispatchAppReadySwitch;

/// 命中 preload 兜底策略时,弹窗提示
@property (nonatomic, assign) BOOL showDialogWhenRestorePreload;

/// 图片大小超过200k时,弹窗提示
@property (nonatomic, assign) BOOL showToastWhenImageSizeLarge;

/// rtc实时语音通话添加日志
@property (nonatomic, assign) BOOL rtcDebugLog;

/// 小程序分级恢复辅助功能栏
@property (nonatomic, assign) BOOL showRecoveryMenuSwitch;

/// 是否显示NAView预加载 App core 的版本号
@property (nonatomic, assign) BOOL showPreloadNAViewVersionSwitch;

/// 开启稳定性测试开关
@property (nonatomic, assign) BOOL openStabilityCollector;

/// 使用debug扩展库
@property (nonatomic, assign) BOOL usingDebugDependencySwitch;

/// 开启PMS加密请求
@property (nonatomic, assign) BOOL openPMSBdtls;

/// 强制web化降级
@property (nonatomic, assign) BOOL forceWebDegrade;

/// web化降级debugHost
@property (nonatomic, copy) NSString *webDegradeDebugHost;

@end


/**
 * 使用手百下 CocoaSettings 来实现 Debug mode, ABTest, Update, 等等控制的变量(例如开关).
 * 目前仅实现了 debug mode 开关控制部分. 后续可以考虑将对应变量的 ABTest/Update 控制的部分也接入这里, 使代码更简化.
 * 手百 CocoaSettings 的文档: http://agroup.baidu.com/share/md/4f51bdc556c1492e8811629414d2d6a1
 */
@interface BBASMOSSettings : CSModuleSettings<BBASMOSSettingsProtocol>

- (BOOL)isDebugMode;

@end