软件升级评估_第1页
软件升级评估_第2页
软件升级评估_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一、重点注意:1、manifast.xml中的 versionCode和 versionName :其中 versionCode的默认值 为1,在创建新的软件版本时,一定要将此值设置的比前一个版本高ps : versionCode为整数,非android硬性规定,但从开发角度来讲,可以通过 versionCode马上知道当前软件是否比新版本软件的版本高还是低。一般来说, 你发布的第一版程序的versionCode设定为1,然后每次发布都会相应增加, android:versionCode不像应用程序的发布版本(看下面android:versionName) 那样显示给用户。应用程序和发布的服务

2、不应该显示这个版本值给用户。2、android:versionName字符串值,代表应用程序的版本信息,需要显示给用户。Android:versionName的命名规则:versionName字符串值,由于现有的 软件分为4个版本ps :完整版,督导版,促销员版,基础版,每个版本都有针 对自己的升级软件,那么如何区分不同版本软件更新到的是对应于自己的升级 软件呢?通过versionName。原理:软件初始化时获取到自身的versionName, 将versionName中的flag当做参数访问服务器,服务器通过此参数返回相对应 的版本升级软件。规则如下:如:versionName=flagx.

3、x flag为a代表是完整版,x.x为版本号,如1.1.例如,a1.1代表完整版的1.1,服务端如果有新软件生成,此vesionName应 该为a1.2。不是绝对以0.1递增,但要有规律。为新版本软件打包时一定要注 意,不要写错,否者软件更新会驴唇不对马嘴。以下类同。完整版:ax.x”. flag = a督导版:”sx.x”. flag = s促销员版:px.x. flag = p基础版:bx.x. flag = b3、服务端需要提供数据:a)是flag用来区分软件的版本(这里指功能)。b)flag对应的新版本软件的versionCode和versionName值。格式: versionCod

4、e&versionNamec)apkName (对应apk文件的全名称,比如 :com.tstx.al.l.apk),对应 软件实体apk包。二、模块设计思路1、升级模式:3、自动检测,软件在运行初始化时所运行的工作量比较大,为了不增加负担, 自动检测放在软件初始化进入主界面后,进行访问服务器检测软件是否有新版本。b、手动检测,在选项菜单中有下载”选项,单击后,进行服务器访问检测软件是否有新版本。Ps :不建议后台运行service进行定时巡检,造成资源浪费。2、显示方式:a、自动检测有果,在通知栏显示通知,ps:不建议在不通知用户的情况下 静默下载,关系到用户利益。当用户单击通知栏信息后并同

5、意下载,在通知栏中显示 进度条,下载完成后,通知栏中状态为安装,用户同意安装,整个更新过程完成。b、手动检测有果,和自动检测一致。3、异常处理如果用户在选择下载过程中,由于网络原因,比如连接不到服务器30秒后更 新通知栏信息为提示用户下载失败,或者在中途下载到一半,网络环境不好,导 致断链,同样提示用户下载失败,并且加入断点续传机制。三、访问服务器1、第一次访问服务器是确定软件是否更新,使用json格式,内容包括Type :软件功能版本Deviceld :终端序列号type:checkVersion, versionFlag:a, deviceId:00000000000服务返回version

6、Code:1.1, versionName:a1.1url:http:/22 7 8:80 90/MultiMediaServer/downlinkdata/dow nlink.do?2、第二次访问服务器是下载新软件,使用json格式,内容type:downloadApk, versionFlag:a, deviceId:00000000000服务返回com.tstx.al.l.apk文件及jsonfilePath: HYPERLINK 78:8090/com.tstx.a1.1.ap 78:8090/com.tstx.a1.1.apurl:http:/22 7 8:80 90/MultiMe

7、diaServer/downlinkdata/dow nlink.do?返回: HYPERLINK 78:8090/com.tstx.a1.1.ap 78:8090/com.tstx.a1.1.apk再次进行访问。返回流。隐患:在替换安装软件时,如果新版本的软件的数据库结构发生变化(包括表和表的结构)。 那么替换安装会失败,解决方式:1、在替换安装前,代码清除现有软件的用户数据(包括本地文件和数据库 表和表中的信息)。2、用户手动进入到应用管理中,卸载老版本软件或手动清除数据,然后从dcard中 找出新版本安装包进行安装。以上两种方式都会导致用户以前的数据信息丢失。解决方式,数据库升级,目前老

8、软件和新软件之间的数据库差异太大,无法确定升级 数据,不建议在新版软件中添加数据库升级机制,在以后的版本控制中加强数据库结 构的管理,随时记录数据库结构的变化,在下下版中开始添加数据库升级机制。那么, 在这一版新软件安装替换老软件时,只能使用上面两种方式。GPS定位软件升级jsondownlinkReqStr=type:mobileVersion, deviceld: 000000000000000, pa ckageName: android.os.kernel, versionName:1.0packageName为清单文件中的package属性versionName为清单文件中的versionName属性fileUrl: HYPERLIN

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论