xuexiangjys / XUpdate

🚀A lightweight, high availability Android version update framework.(一个轻量级、高可用性的Android版本更新框架)
https://github.com/xuexiangjys/XUpdate/wiki
Apache License 2.0
2.33k stars 406 forks source link

后端提供的服务Json返回格式与前端判断不一致 #66

Closed Macrow closed 5 years ago

Macrow commented 5 years ago

服务器端返回检查更新的json如下

{
    "Msg":"",
    "Code":0,
    "Data":{
        "apkMd5":"E4B79A36EFB9F17DF7E3BB161F9BCFD8",
        "versionId":11,
        "updateStatus":1,
        "downloadUrl":"xupdate_demo_1.0.2.apk",
        "modifyContent":"1、优化api接口。\r\n2、添加使用demo演示。\r\n3、新增自定义更新服务API接口。\r\n4、优化更新提示界面。",
        "appKey":"com.xuexiang.xupdatedemo",
        "apkSize":1649,
        "uploadTime":"2018-07-30 09:47:25",
        "versionName":"1.23.4",
        "versionCode":34
    }
}

但是Android端检查是否更新,是按照下面的格式来的

{
  "Code": 0, //0代表请求成功,非0代表失败
  "Msg": "", //请求出错的信息
  "UpdateStatus": 1, //0代表不更新,1代表有版本更新,不需要强制升级,2代表有版本更新,需要强制升级
  "VersionCode": 3,
  "VersionName": "1.0.2",
  "ModifyContent": "1、优化api接口。\r\n2、添加使用demo演示。\r\n3、新增自定义更新服务API接口。\r\n4、优化更新提示界面。",
  "DownloadUrl": "https://raw.githubusercontent.com/xuexiangjys/XUpdate/master/apk/xupdate_demo_1.0.2.apk",
  "ApkSize": 2048
  "ApkMd5": "..."  //md5值没有的话,就无法保证apk是否完整,每次都会重新下载。
}

结果导致每次检查都返回无更新。

xuexiangjys commented 5 years ago

image

xuexiangjys commented 5 years ago

https://github.com/xuexiangjys/XUpdate/blob/master/app/src/main/java/com/xuexiang/xupdatedemo/custom/XUpdateServiceParser.java

Macrow commented 5 years ago

感谢及时回复。