API分析

SDK主要接口说明

SDK版本号

MADEngine.h

+(NSString *)version;

SDK初始化方法

MADEngine.h

/// 初始化MADCore引擎
/// @param config MADCoreConfig MADP配置
/// @param callback callback用于应用层注册自己weexModule或weexComponent
+ (void)initEnvironmentWithMADCoreConfig:(MADCoreConfig *)config callback:(InitEnvCallback)callback;

SDK初始化配置

MADCoreConfig.h

参数 类型 描述
weexLog WXLogLevel weex日志级别
workerLog BOOL worker日志
proxyStr NSString 代理地址(抓包使用)
isUse BOOL 代理端口模式
isStreamLog BOOL weex交易日志
isAsync BOOL 异步更新列表
isSaveUserAgent BOOL UserAgent 配置

SDK初始化状态

MADSingleClass.h

//开始初始化
@property (nonatomic,copy)MADP_STATUE madp_statue_start;

//完成初始化
@property (nonatomic,copy)MADP_STATUE madp_statue_finish;

//获取register/central/rope失败
@property (nonatomic,copy)MADP_STATUE madp_statue_get_source_error;

场景与资源

MADEngine.h

// 以后管配置的启动链,打开场景
+ (void)startup;

// 以场景ID打开场景
+ (void)launchStage:(NSString*)stageid;

//刷新rope/centrol
+ (long)refreshRepo:(NSString*)repoid;
+ (long)refreshCentral;

//启动时资源获取失败,尝试重新拉取资源
+ (void)reloadSource;

//启动时资源获取失败,使用本地资源
+ (void)workerContinue;

//清除缓存(ropes)
+ (void)deleteFolder;

//将运行日志存储在Document的local.log
+ (void)redirectLogToLocalFolder;

导航控制器

MADEngine.h

//向sdk设置导航控制器,新的场景将以该控制器为根控制器打开,sdk默认已创建导航控制器
+ (void)setNavigationController:(id)navigationcontroller;

//获取sdk当前导航控制器
+ (id)getNavigationController;

//获取sdk当前的根控制器
+ (id)getRootViewController;

持久化存储

MADEngine.h
//AES机密
+ (void)secureSetString:(NSString*)key value:(NSString*)value;
+ (NSString*)secureGetString:(NSString*)key;

//Sm4加密
+ (void)secureSetSm4:(NSString* )key value:(NSString* )value;
+ (NSString*)secureGetSm4:(NSString*)key;

/// 清除本地化持久化数据
- (void)clearData;

内存存储

MADEngine.h

//AES机密
+ (void)sessionSetString:(NSString*)key value:(NSString*)value;
+ (NSString*)sessionGetString:(NSString*)key;

注册Router方式

MADEngine.h

//注册“type”类型的场景对应的控制器为“vc”,后管中配置的“type”的场景就由“vc”构建
//sdk中已经注册了“weex”,“web”,分别对应weex场景/web场景
+ (void)registerModule:(NSString *)type withController:(Class)vc;

//“vc”需要实现该方法,同时通过params读取传递的参数
- (id)initWithRouterParams:(NSDictionary *)params 

//注册“type”类型的场景对应的实现为“func”,后管中配置的“type”的场景就调用“func”
+ (void)registerModule:(NSString *)type withFunction:(MADEngineFunction)func;

插件

MADSingleClass.h

/**
 字典转json字符串
 @param dic 字典
 */
-(NSString*)dictionaryToJson:(NSDictionary *)dic;

/**
 json字符串转字典
 @param JSONString json串
 */
-(NSDictionary *)parseJSONStringToNSDictionary:(NSString *)JSONString;

//获取设备型号(系统API返回)
- (NSString*)getDeviceModel;

//获取设备型号名称 (手动翻译名称)
- (NSString *)getDeviceModelName;