亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

Android程序和數據分離的實現方案

標簽:
Android

将程序和数据分离的主要原因有三:

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

  • 数据更新频率远没有程序更新频率高,如果每次升级apk都将数据打包在程序中,无疑每次都重复下载了数据;

  • 如果将数据打包在程序中,发现数据有问题,在改善后不能及时更新给用户,必须要升级程序才能处理,很被动。

  所以当一个程序比较大时,通常会拆分为如下三个部分:

  • 程序:apk文件

  • 基础数据:程序能够正常运行的必备数据,比如语音识别离线数据、手写识别本地数据、词典数据等;

  • 支持数据:程序能够支持使用的数据,比如游戏每一关的数据、试卷题目数据、书本教材数据、记单词数据、电子书数据、音乐、视频数据等等,这些数据即使不下载程序也能正常使用,但这些数据能够被程序支持使用,下载得越多,程序的可玩性、使用价值就越高。

  显然即使将程序和基础数据分离,也必须要有完整的基础数据程序才能正常运行,所以通常情况下会看到很多程序在打开时,会显示一段时间的加载数据界面,这个过程就是在从服务器下载基础数据的过程,所以对于程序和数据分离的解决方案通常是:从应用商城中下载apk -> 第一次进入apk、基础数据有更新或者检测到本地基础数据不完整时执行下载基础数据的操作 -> 进入程序,用户可自行浏览,选择感兴趣的支持数据进行下载。

  上述的程序和数据分离的解决方案还存在如下几个问题:

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

  • 基础数据有更新时,如果只更新某一部分数据,显然升级整个基础数据是不合理的,有时候会有多个基础数据;

  • 如果用户没有网络,显然不能正常使用该程序。

  对于上面这两个问题的解决方案是:进入程序时,只下载主界面所依赖的基础数据,待进入程序时,后台下载其它界面所依赖的数据,如果磁盘空间不足,提示用户清理磁盘,如果用户此时点击相应还没有下载完数据的界面,提示用户数据正在加载中,请稍后。对于没有网络的用户,提供一个下载离线数据包的接口供用户下载之后自行拷贝到机器中使用。

原文链接:http://www.apkbus.com/blog-705730-61121.html

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消