NIMSDK-AOS  9.19.0
IMsgImportProcessor.java
浏览该文件的文档.
1 package com.netease.nimlib.sdk.migration.processor;
2 
4 
5 import java.io.File;
6 
7 /**
8  * 历史消息牵移时导出时自定义处理器,导出时参考{@link IMsgExportProcessor}
9  */
10 public interface IMsgImportProcessor extends IMsgMigrationProgress {
11 
12 
13  /**
14  * 导入时的解密动作,运行在后台线程。<br/>
15  * 注意:用户只能进行解密的操作,不能修改文件的内容,并且各端实现保持一致<br/>
16  * 如果用户导出时没有加密{@link IMsgExportProcessor#encrypt(File)} , 则这无需解密,直接返回原文件即可
17  *
18  * @param originFile 原文件
19  * @param secretKey 加密时使用的密钥
20  * @return 解密后的文件
21  */
22  File decrypt(File originFile, String secretKey) throws Exception;
23 
24 
25  /**
26  * 导入时的解压缩动作,运行在后台线程。<br>
27  * 注意:用户只能进行解压缩的操作,不能修改文件的内容,并且各端实现保持一致<br/>
28  * 如果用户导出时没有压缩{@link IMsgExportProcessor#zip(File)} ,则这无需解压缩,直接返回原文件即可
29  *
30  * @param originFile 原文件
31  * @return 解压后的文件
32  */
33  File unzip(File originFile) throws Exception;
34 
35 
36  /**
37  * 进度通知,此方法运行UI线程,可以直接更新UI
38  *
39  * @param progress 进度值: 0-100
40  * @param state 当前所处的阶段,分为如下两个阶段 :<br>
41  * 1: 文件下载 : {@link MigrationConstant#IMPORT_PROGRESS_DOWNLOAD_FILE_STATE}
42  * 2: 文件转换成消息 : {@link MigrationConstant#IMPORT_PROGRESS_FILE_TO_MSG_STATE}
43  * 每个阶段的进度各自独立
44  */
45  @Override
46  void progressUpdate(int progress, int state);
47 
48 }
历史消息牵移时导出时自定义处理器,导出时参考IMsgExportProcessor
void progressUpdate(int progress, int state)
进度通知,此方法运行UI线程,可以直接更新UI
File decrypt(File originFile, String secretKey)
导入时的解密动作,运行在后台线程。 注意:用户只能进行解密的操作,不能修改文件的内容,并且各端实现保...
File unzip(File originFile)
导入时的解压缩动作,运行在后台线程。 注意:用户只能进行解压缩的操作,不能修改文件的内容,并且各端实...