您的位置:首页 > 移动开发

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

2016-08-25 22:32 375 查看

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不进行任何处理。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: