`
renzhelife
  • 浏览: 668286 次
文章分类
社区版块
存档分类
最新评论

评论:Android的升级策略

 
阅读更多

对于Android系统而言升级意味着二个方面的升级,一个是系统的升级,另一个则是应用程序的升级。系统的升级,比较麻烦,通常的方式就是通过刷机来实现,虽然也听说过可以通过OTA升级,但目前Android的设备都没有能够像Apple设备那样顺利的进行OTA升级,最主要的原因是设备厂商很少维护已售出的设备,所以没有可用的升级镜像。

这里我们重点谈谈Android上面的应用程序的升级策略及其所带来的问题。

无论你是通过Market还是其他方式来升级应用程序,它的工作方式都是酱紫的:把新版本的应用程序下载到本地,然后安装新版本,PackageInstaller会替换掉老版本。酱紫的方式有以下几个缺点:

  1. 升级速度比较慢,其实就相当于重新安装一样
  2. 伤不起的流量,一般的应用0~3M,有些大点的有4~9M,对于游戏更是达到了10~30M,升级一次很恐怖啊
  3. 升级时,由于 要下载新版本,所以会浪费一些存储空间
  4. 应用的数据和配置信息,有时会丢失,比如选择了UC作为默认浏览器,但升级后,它将不再是默认的,需要重新设置
  5. 旧版本所产生的数据,临时数据不一定会被删除
  6. 最恶心的是,如果二个版本的数字签名不一致,会导致新版本无法安装,要手动的把旧版本卸载,然后才能安装新的版本
  7. 这点跟Market无关,那就是有些应用升级以后反尔不好用,完全不如旧版本
有少数的应用也有与PC上面软件类似的自身升级的方法,但也都是下载新版本,卸载旧版本,再安装新版本。所以,即便是软件只更新了一个字串,那么升级时也需要整体折腾。

时常在想,为什么就不能像PC上面的软件那样,升级时只需要一个子集的升级包就可以了呢?可能的原因应该是有二个方面,一个是Android应用程序运行的机制决定的,另一个则是Market管理的方便。

Android当中软件安装完成以后,不像PC机那样解开了包,而是与安装包一样的存储在系统中。它是在程序运行时才从安装包中解析出需要的东西,加载进内存。所以,即使是应用只有部分更新,也没有办法像PC那样,只弄个升级包,因为升级包无法替换进入到安装包中。开发者只能对软件源码进行更新,然后重新编译打包成新版本。

那么Market中软件如果允许升级包的存在,那么新用户在购买的时候就要即买应用又买它的升级包,即要安装应用,又要一个一个的安装升级包,十分的不方便。

存在既有之的道理,希望有朝一日,它的升级策略能更加的友好一些,好用一些。

分享到:
评论

相关推荐

    Android数据库Sqlite的基本用法及升级策略

    http://www.jianshu.com/p/3fef519f3d8e Android数据库Sqlite的基本用法及升级策略

    Android开发升级解偶策略(访问、解析、弹框、是否强制都可以自定义)推荐

    这是github上的Android开发程序升级的策略工具,极其解偶,不管是在开发中还是学习,都是非常棒的

    android-anuto:Android的另一种丑陋的塔防

    策略:确定如果有多个射程,则以哪个敌人为目标。 锁定目标:如果为true,则直到死亡或超出范围后,发射塔才会切换目标。 增强:提高塔的水平,使其更好。 升级:用更高层的塔取代塔。 请注意,该塔的任何增强...

    基于Android的塔防游戏应用开发-设计报告.docx

    本项目中的塔防游戏即指一类通过在地图上建造炮塔或类似建筑物,以阻止游戏中敌人进攻的策略型游戏。本项目自主设计开发,融入创新,基于国内Android游戏引擎LGame开发完成。 关键词:Android;塔防游戏;LGame ...

    玩转手机 Android手机助手 v8.1.1

    可下载、安装、卸载、升级手机应用。3. 短信管理:新增、删除、编辑、复制、粘贴、导出/导入短信。提供短信聊天模式,短信群发功能。提供会话和列表两种短信浏览模式。独特的"本地短信"设计,让您方便管理手机短信。...

    Android测试体系讲解

    此文档描述了Android测试策略及要点,主要是面向第三方软件的,其中包含Monkey冒烟测试、安装/卸载测试、升级测试、业务逻辑测试、稳定性测试、性能测试、易用性测试、Monkeyrunner测试、适配测试、功耗测试、内存...

    Android代码-LanSoEditor_common

    免费策略: 此SDK已运行二年左右,商用APP200 , 现在免费. H264硬件解码器免费,硬件加速编码器不免费; 免费版本自动切换到libx264编码 SDK不访问网络,完全本地处理. 个人和公司都可以商用,不需要和我们说明. 随我们...

    Android列表动图展示的实现策略

    对于动图的加载,尤其是webp格式的动图,Fresco真是不二的选择,而且fresco本身对内存的处理也很棒,本文是基于Fresco 1.0.10版本,如果使用低版本Fresco出现无解的问题时,不妨可以试着升级Fresco版本。 图片展示的...

    制造业要素、分类与转型升级策略选择.pdf

    。。。

    先锋Android Market CMS内容管理系统 X1.0.zip

    7、APK包信息自动获取:每一个应用包里面都包含了包名、版本号、版本Code、系统SDK版本等信息,这些信息关系到版本升级,用户的手机是否适合使用,所以是至关重要的,也是Android Market必备的一项功能。 8、专题...

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    Android 一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导开发 IOS 由苹果公司开发的移动操作系统 Webkit 一个开源的浏览器引擎,在手机上的...

    LCRapidDevelop-master

    - Demo采用MVP模式开发------------------------------------数据逻辑复用,便于维护升级 - 下拉刷新 上拉加载 及自动加载---------------------------实现监听方便快捷 - RecyclerView设配器--------------------...

    深入浅出Google Android 第10章

    10.1 Android 程序发布概览 10.2 最终用户许可协议 10.3 应用程序签名 10.3.1 概述 10.3.2 签名策略 10.3.3 进行应用签名 10.4 应用程序版本管理 10.4.1 版本管理 10.4.2 应用程序升级 10.5 小结

    C# 开发的Android群控系统.zip

    传感器与通信技术的升级 大数据分析与应用 智能家居的智能化管理 自动化控制与节能策略 安全防护与预警系统 五、市场反馈与用户评价 市场反馈分析 市场需求与竞争态势 市场占有率与增长趋势 用户评价总结 用户满意...

    Android 3D游戏开发技术宝典-OpenGL ES 2.0 (吴亚峰) 源代码

    7.5.2 将2d纹理映射到球面上的策略 228 7.5.3 案例的场景结构 229 7.5.4 开发过程 230 7.6 本章小结 238 第8章 3d基本形状的构建 239 8.1 圆柱体 239 8.1.1 顶点原始位置的生成 239 8.1.2 ...

    智能手机销售话术.doc

    连载 15:安卓(Android)系统手机:使用安卓(Android)系统手机最大的好处是像开大众 、丰田的车一样普及,容易找"配件"升级维护简单啊。 连载 16A:平价智能手机体验式销售组合话术。关键词:省钱、实用、上网...

    Android Studio实现推箱子小游戏,满分安卓程序设计,界面精美,音效炫酷

    随着关卡的逐渐升级,游戏的难度也会逐渐增加,需要玩家更加灵活地运用头脑和策略,才能完成更高难度的挑战。 本次推箱子不仅可以锻炼玩家的逻辑思维和空间想象力,同时也能带来愉悦的游戏体验和编程乐趣。

    Hyper Defense 超级防御 Unity 2D塔防游戏项目源码C#

    《超级防御》是一款简单而有趣的策略游戏。它通过建造塔楼来防御,为您的玩家提供令人上瘾且具有挑战性的塔防游戏。你的玩家将点击并拖动来添加、升级塔,不让敌人穿过防御来完成关卡。 游戏特色: - 令人上瘾的塔防...

    XX系统测试方案设计_ 模板.docx

    包含概述,拓扑图,软硬件测试环境,测试需求,测试策略设计(性能,安全,兼容,升级等专项),测试风险等。 XX系统测试方案设计 1 1. 概述 3 1.1. 编写目的 3 1.2. 适用范围 3 1.3. 项目背景 3 1.4. 参考文档 3 2...

Global site tag (gtag.js) - Google Analytics