Android程序和数目分离的落到实处方案

  将次第和数据分离的最主要缘由有三:

  • 数码太大,导致上传apk耗时太长,用户下载apk的时候也很耗时,严重影响用户体验;

  • 多少更新频率远没有先后更新频率高,如若每一回涨级apk都将数据打包在先后中,无疑每趟都再度下载了数码;

  • 比方将数据打包在先后中,发现数目有题目,在纠正后不可能及时更新给用户,必要求进步程序才能处理,很黯然。

  就此当一个程序比较大时,日常会拆分为如下多少个部分:

  • 程序:apk文件

  • 基础数据:程序可以正常运转的不可或缺数据,比如语音识别离线数据、手写识别本地数据、词典数据等;

  • 支撑数据:程序可以援救使用的数码,比如游戏每一关的数额、试卷标题数据、书本教材数据、记单词数据、电子书数据、音乐、录像数据等等,那么些数据就是不下载程序也能正常使用,但这么些数量可见被先后协助使用,下载得越来越多,程序的可玩性、使用价值就越高。

  分明就是将顺序和底蕴数据分离,也亟须要有总体的底子数据程序才能健康运转,所以普通状态下会看出不可枚举先后在开拓时,会显示一段时间的加载数据界面,那个历程就是在从服务器下载基础数据的历程,所以对于程序和数据分离的化解方案寻常是:从使用超市中下载apk
->
第四回跻身apk、基础数据有更新或者检测到地点基础数据不完全时实施下载基础数据的操作
-> 进入程序,用户可活动浏览,接纳感兴趣的支撑数据开展下载。

  上述的主次和数量分离的解决方案还存在如下多少个难题:

  • 一经基础数据过大,进入程序时加载数据的长河会很漫长,显著影响用户体验;

  • 基础数据有立异时,假若只更新某一部分数据,显著升级总体基础数据是不创制的,有时候会有七个基础数据;

  • 若是用户并未网络,明显无法健康使用该程序。

  对于地方那两个难点的化解方案是:进入程序时,只下载主界面所看重的根基数据,待进入程序时,后台下载其它界面所依靠的数码,倘诺磁盘空间不足,提示用户清理磁盘,假诺用户此时点击相应还不曾下载完数据的界面,提示用户数据正在加载中,请稍后。对于从未网络的用户,提供一个下载离线数据包的接口供用户下载之后自行拷贝到机器中动用。

相关文章