-
Notifications
You must be signed in to change notification settings - Fork 258
Configurations Explains
Haoge edited this page Dec 14, 2017
·
4 revisions
UpdatePlugin的配置有两种配置方式。即分别通过UpdateConfig或者UpdateBuilder进行配置。
所有的可配置项均可在UpdateConfig或UpdateBuilder中进行配置:
-
UpdateConfig用于批量的对某一系列的更新提供基础配置。当使用UpdateConfig.getConfig()进行基础配置时。代表使用此时使用默认的配置。对于可能有多种地方需要使用的更新功能时。可通过UpdateConfig.createConfig()针对每个特殊的更新方式配置不同的基础配置:如普通app更新、网络下载插件更新、热修复更新等。
-
UpdateBuilder为真正发起更新请求的入口类。当使用UpdateBuilder.create()传递空参数时。表示使用的基础配置为UpdateConfig.getConfig()。即使用默认配置。而若需要使用特殊的基础配置时。则需要将UpdateConfig.createConfig()创建的新的基础配置类实例。通过create()方法传入进行使用。
下方列出了从启动更新到更新完成的整套流程:
- 配置更新接口api
- 启动访问更新api网络任务:配置:检查更新接口网络任务
- 更新api返回数据解析。获取更新实体类:配置:更新接口解析器
- 根据解析结果判断是否需要更新:配置:更新检查器
- 当需要更新时,根据更新策略判断是否需要展示有新更新时的通知
- 启动下载任务前,获取下载APK缓存文件路径,并对此文件进行预检查,判断是否是完好、有效的安装包。如果是。则跳过下载任务。
- 启动下载任务:配置:APK下载网络任务
- 启动下载任务同时根据更新策略判断是否需要展示下载进度通知
- 下载完成,根据更新策略判断是否需要展示下载完成后的通知提醒。
- 确认安装。进行apk安全检查,检查通过再启动安装器进行真正的安装操作。
于此同时。框架还提供两个更新回调接口:更新api检查回调与下载任务回调通知,用户可在对应的回调方法中做对应的适配操作。如日志打印、埋点追踪、后台更新任务定时重启操作等。
以上各种配置。除(更新接口api)以及(更新接口解析器)必须由用户提供外,其余的配置均含有默认实现,可根据需要进行替换配置