APP开发实战135-APP版本更新之APP和服务器交互

35.3APP和服务器交互

1 如果是自动更新,APP启动并进入首页后,向服务器发送POST请求,把APP的渠道号和用户手机型号信息发给服务器。

如果是用户手动更新,则用户点击相关功能菜单后,APP向服务器发送POST请求,把APP的渠道号和用户手机型号信息发给服务器。

具体数据格式如下:

{

"jsonrpc":"2.0",

"params":{

"channel":"xxxx",

"model":"xxxx",

"version":"xxxx"

}

}

"channel":渠道号,如果值为"",表示是通用版本更新

"model":手机型号

2 服务器收到请求后,如果成功响应,返回如下数据:

{

"jsonrpc":"2.0",

"result":{

"url":"http://xxx/xxx.apk",

"version":"1.0.1",

"size":xxxx,

"fileMd5":"xxxxxxxx",

"title":"xxxxxxxx"

"changes":"xxxxxxxx"

"upgrade":800,

"interval":24,

"limitTimes":99

}

}

"fileMd5": 用于校验APK包数据的完整性

(APP从服务器下载完APK包后,计算出MD5值,并和从服务器获取的MD5值比较是否一样)

"title": 提示框标题栏显示的文字

"changes": 显示服务器端的更新日志

"upgrade":800—客户端版本低于"version"的值,就提示升级,但不强制升级

801—强制升级

"interval": 显示提示信息的时间间隔,以小时为单位,不支持小数;

"limitTimes": 显示提示信息次数,不支持小数;如为0,则没有限制

如果出错,返回如下数据:

{

"jsonrpc":"2.0",

"result": {

"error":"xxxxxx"

}

}

3 如果服务器返回成功响应的数据,APP端把从服务器取得的版本号和自身版本号进行对比,并按"upgrade"的各种数值进行不同的处理。

如果服务器返回出错信息,APP不进行任何处理。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,496评论 25 709
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,409评论 19 139
  • 《裕语言》速成开发手册3.0 官方用户交流:iApp开发交流(1) 239547050iApp开发交流(2) 10...
    叶染柒丶阅读 28,406评论 5 19
  • 初中时候,我曾经连续五次写的作文被语文老师当做范文在同级学生间传阅。也就是那时候,老师的鼓励,同学们的大拇指,让我...
    西橙L阅读 1,261评论 2 2
  • 西风落叶,推开心窗 一缕秋风入心上 以及,金灿灿的秋天 满园垂落的秋藤 缠绕一季又一季的风情 * 炊烟起,云在天边...
    zmyf子墨云飞阅读 3,034评论 1 3