bonus-material-app/nativeplugins/Mpaas-Scan/ios/mPaas.framework/Headers/DynamicRelease+MPaaS.h

72 lines
2.2 KiB
Objective-C
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.

//
// DynamicRelease+MPaaS.h
// MPaaS
//
// Created by shenmo on 5/8/16.
// Copyright © 2016 Alipay. All rights reserved.
//
typedef NS_ENUM(NSInteger, DRLocalBandageExecutionType)
{
DRLocalBandageExecutionAll = 0, // 执行所有本地脚本
DRLocalBandageExecutionNonLazyload, // 执行非Lazyload的脚本
DRLocalBandageExecutionLazyload, // 执行Lazyload的脚本
};
@protocol DynamicReleaseClass <NSObject>
+ (id<DynamicReleaseClass>)sharedInstance;
/**
* 获取本地有哪些脚本,用","分隔的脚本ID。这个给日志模块上报使用每条日志都会带上所以直接拼好。
*/
- (NSString*)getLocalBandages;
/**
* 获取已经执行了哪些脚本返回ID数组。这个给Crash上报使用。
*/
- (NSArray*)getExecutedBandages;
/**
* 执行本地已经下载的所有Hotpatch脚本这个方法需要尽量早调用建议放在应用的didFinishLaunching方法最前面。
*/
- (void)executeLocalBandage:(DRLocalBandageExecutionType)type;
/**
* 与服务端同步脚本,包括脚本的下载与回滚,同步完成后会自动执行新的脚本。这个方法会异步执行,
*/
- (void)synchronizeBandage;
/**
* 更多参数的同步方法,这个方法会异步执行,
*
* @param forced 是否强制拉取
* @param execute 拉取到后是否自动执行
* @param failBlock 失败的回调方法
*/
- (void)synchronizeBandage:(BOOL)forced execute:(BOOL)execute onSuccess:(void(^)())successBlock onFailed:(void(^)(NSError*))failBlock;
/**
* 判断应用是否正在执行本地脚本执行完成返回NO。
* 当监测到Crash时校验这个方法的值如果返回YES表示极大可能因为Patch导致启动Crash。
*
* @return 是否正在执行脚本。
*/
- (BOOL)executingBandages;
/**
* 获取本地的hotpatch缓存工作目录绝对路径
*/
- (NSString*)bandageLocalWorkspacePath;
/**
* 重置Patch工作目录
*
* @param reserveMetaInfo 是否保留元文件
传YES时删除本地已有脚本但保留元文件之后不会再拉取这些脚本
传NO时删除整个目录元文件也被删除之后有脚本还是会同步回来。
*/
- (void)resetBandageWorkspace:(BOOL)reserveMetaInfo;
@end