BBASMCloneAppProtocol.h 1.33 KB
//
//  BBASMCloneAppProtocol.h
//  BBAMNP
//
//  Created by baidu on 2019/3/25.
//  Copyright © 2019 Baidu. All rights reserved.
//

#import <Foundation/Foundation.h>
#import <Pyramid/Pyramid.h>

NS_ASSUME_NONNULL_BEGIN

AliasService(BBASMCloneAppProtocol, bba_SMPackageUtility)

/**
 * 手百私有的 cloneApp 组件化之间解耦暴露协议
 */
@class BBASchemeDispatcher;

@protocol BBASMCloneAppProtocol <NSObject>

/**
 * @brief 获取bbasmCache的根目录
 * @return NSString bbasmCache的根目录
 */
+ (NSString *)bbasmCacheRootPath;

/**
 * @brief 获取bbasmCore的根目录
 * @return NSString bbasmCore的根目录
 */
+ (NSString *)bbasmCoreRootPath;

/**
 * @brief 获取bbasmCore扩展包的根目录
 * @return NSString bbasmCore扩展包的根目录
 */
+ (NSString *)bbasmCoreExtensionRootPath;

/**
 * @brief 获取指定小程序沙盒的绝对路径
 * @param appID 小程序ID
 * @return NSString 指定小程序沙盒的绝对路径
 */
+ (NSString *)getAppAbsoluteSandBoxPathWithAppID:(NSString *)appID;

/**
 * 小程序appID的MD5值, 用于获取小程序包解压后的文件夹名称, 或存储信息的文件名称
 * 针对开发版app, 采用`appKey`拼接`_dev`后的MD5值
 *
 * @param appID 小程序ID
 * @return 小程序appID的MD5值
 */
+ (NSString *)MD5NameWithAppID:(NSString *)appID;

@end

NS_ASSUME_NONNULL_END