-
-
Notifications
You must be signed in to change notification settings - Fork 406
更新实体字段介绍
xuexiangjys edited this page Nov 29, 2021
·
7 revisions
UpdateEntity作为框架各个环节接口的通信媒介,了解它们的作用对后面接口的自定义非常关键。
(1) UpdateEntity字段属性
字段名 | 类型 | 默认值 | 备注 |
---|---|---|---|
mHasUpdate | boolean | false | 是否有新版本 |
mIsForce | boolean | false | 是否强制安装:不安装无法使用app |
mIsIgnorable | boolean | false | 是否可忽略该版本 |
mVersionCode | int | 0 | 最新版本code |
mVersionName | String | unknown_version | 最新版本名称 |
mUpdateContent | String | "" | 更新内容 |
mDownloadEntity | DownloadEntity | / | 下载信息实体 |
mIsSilent | boolean | false | 是否静默下载:有新版本时不提示直接下载 |
mIsAutoInstall | boolean | true | 是否下载完成后自动安装 |
(2) DownloadEntity字段属性
字段名 | 类型 | 默认值 | 备注 |
---|---|---|---|
mDownloadUrl | String | "" | 下载地址 |
mCacheDir | String | "" | 文件下载的目录 |
mMd5 | String | "" | 下载文件的md5值,用于校验,防止下载的apk文件被替换(最新演示demo中有计算md5值的工具),注意这里的md5值非应用签名文件的md5值! |
mSize | long | 0 | 下载文件的大小【单位:KB】 |
mIsShowNotification | boolean | false | 是否在通知栏上显示下载进度 |
(3) PromptEntity字段属性
字段名 | 类型 | 默认值 | 备注 |
---|---|---|---|
mThemeColor | int | R.color.xupdate_default_theme_color | 主题色(进度条和按钮的背景色) |
mTopResId | int | R.drawable.xupdate_bg_app_top | 顶部背景图片资源id |
mTopDrawableTag | String | "" | 顶部背景图片Drawable标识 |
mButtonTextColor | int | 0 | 按钮文字颜色 |
mSupportBackgroundUpdate | boolean | false | 是否支持后台更新 |
mWidthRatio | float | -1(无约束) | 版本更新提示器宽度占屏幕的比例 |
mHeightRatio | float | -1(无约束) | 版本更新提示器高度占屏幕的比例 |
mIgnoreDownloadError | boolean | false | 是否忽略下载异常(下载失败更新提示框不消失) |
需要注意的是,使用默认版本更新,请求服务器返回的json格式应包括如下内容:
{
"Code": 0,
"Msg": "",
"UpdateStatus": 1,
"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": ""
}
字段说明:
- Code: 0代表请求成功,非0代表失败。
- Msg: 请求出错的信息。
- UpdateStatus: 版本更新状态。0代表不更新,1代表有版本更新,不需要强制升级,2代表有版本更新,需要强制升级。
- VersionCode: 版本号,自增。本地会用于比较版本是否为最新版本。
- VersionName: 版本的展示名称。
- ModifyContent: 版本更新的内容。
- DownloadUrl: 应用apk文件的下载地址。
- ApkSize: 应用apk文件的文件大小,单位是KB。
- ApkMd5: 应用apk文件的MD5值。如果不设置的话,将无法保证apk是否完整,每次都会重新下载。框架默认使用的是MD5加密。