tencent cloud

缓存管理

PDF
聚焦模式
字号
最后更新时间: 2025-07-04 16:48:08
小程序在使用过程中会产生如下缓存数据:
小程序代码缓存:首次打开小程序时,会将小程序代码下载并缓存起来,方便后续快速打开。这部分数据与账号隔离无关,所有账号共用一份数据。
小程序数据缓存:指使用小程序过程中产生的文件及数据缓存,这部分数据会根据账号做隔离存储。
为了方便 superapp 管理小程序缓存,SDK 提供了TMACacheManager,支持下列能力。

获取缓存的小程序列表

返回所有账号下缓存的小程序列表,如果多个账号下有相同小程序,会做去重返回。
// 获取手机上缓存的所有小程序信息
// Get information about all cached mini programs
// @return 小程序数组<TMFMiniAppInfo> - Mini program array<TMFMiniAppInfo>
+ (NSArray<TMFMiniAppInfo *> *)loadAllAppletsFromCache;

获取指定小程序缓存大小

// Get the storage information for a specific mini app
// @param appId - The ID of the mini app
// @param error - The error object
// @return The storage information for the mini app
+ (TMACacheInfo *)fetchStorageInfoForAppId:(NSString *)appId error:(NSError **)error;

删除指定小程序数据缓存

/// Clear user data
+ (void)clearUserDataWithAppId:(NSString *)appId completion:(void(^)(NSError * _Nullable error))completion;

删除指定小程序代码缓存

/// Clear mini app package files
+ (void)clearPackageWithAppId:(NSString *)appId completion:(void(^)(NSError * _Nullable error))completion;

删除指定小程序数据及代码缓存

/// Clear all storage contents
+ (void)clearAllStorageWithAppId:(NSString *)appId completion:(void(^)(NSError * _Nullable error))completion;

示例代码:

NSArray<TMFMiniAppInfo *> *appInfos = [TMACacheManager loadAllAppletsFromCache];
NSMutableArray *dataSource = [NSMutableArray array];
for (TMFMiniAppInfo *appInfo in appInfos) {
NSError *error = nil;
TMACacheInfo *cacheInfo = [TMACacheManager fetchStorageInfoForAppId:appInfo.appId error:&error];
if (cacheInfo) {
NSLog(@"appId:%@,cacheInfo:%ld,userDataSize:%ld,totalSize:%ld",appInfo.appId,cacheInfo.packageSize,cacheInfo.userDataSize,cacheInfo.totalSize);
}
}


帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈