任何地方都可以检测(可设置定时检测)
app内任何地方都可以弹出升级对话框
自定义性强,手动回调解析,适用于各种版本检测接口
自动处理下载和安装
自动请求读写权限
支持自定义界面
支持强制更新
1.自定义service,service继承 AVersionService,实现其中的 onResponses(AVersionService service, String response)抽象方法.
该方法主要是请求版本接口的回调,由于不同的使用者版本检测接口返回数据类型不一致,所以你需要自己解析数据,判断版本号之后调用升级对话框,如果使用库默认的界面直接调用如下方法: service.showVersionDialog(downloadUrl,title,updateMsg )
示例代码:
if (serverVersion > clientVersion) { //传入下载地址,以及版本更新消息 service.showVersionDialog(downloadUrl,title,updateMsg ); }2.在任意地方开启自定义service,并传入VersionParam
versionParams = new VersionParams().setRequestUrl("http://www.baidu.com"); Intent intent = new Intent(this, DemoService.class); intent.putExtra(AVersionService.VERSION_PARAMS_KEY, versionParams); startService(intent);VersionParams有如下方法,除了requestUrl都是可选值
如果想自定义界面,只需创建一个继承自VersionDialogActivity的Activity,Activity设置Theme为透明:
android:theme="@style/versionCheckLibvtransparentTheme"
开启Service的时候,将自定义的Activity传入VersionParams
setCustomDownloadActivityClass(CustomVersionDialogActivity.class)
自定义 版本dialog,重写 showVersionDialog() ,在里面实现自己的逻辑,最后调用downloadFile(url)或者downloadFile(url,filecallback)注意不要调用父类的方法
自定义 下载中dialog,重写showLoadingDialog(int currentProgress),在里面实现自己的逻辑
自定义 下载失败dialog ,重写showFailDialog,实现自己的逻辑
强制更新。如果使用默认的版本dialog,setCancelClickListner回调里实现,具体用法请看demo
自定义 版本dialog,重写 showVersionDialog() ,在里面实现自己的逻辑,最后调用downloadFile(url)或者downloadFile(url,filecallback)注意不要调用父类的方法
除此之外还可以在定义的Activity里面监听一些下载和点击回调
自定义 版本dialog,重写 showVersionDialog() ,在里面实现自己的逻辑,最后调用downloadFile(url)或者downloadFile(url,filecallback)注意不要调用父类的方法
setOnDownloadSuccessListener(this); setCommitClickListener(this); setCancelClickListener(this); setOnDownloadingListener(this);需要自定义图标只需在mimap文件下建立ic_launcher图标,替换标题只需在项目xml定义app_name属性,还有其他一些属性替换,如下表:
属性名 属性值 versionchecklib_confirm 确认 versionchecklib_cancel 取消 versionchecklib_retry 重试 versionchecklib_download_fail_retry 下载失败是否重试? versionchecklib_download_finish 下载完成,点击安装 versionchecklib_downloading 正在下载中... versionchecklib_check_new_version 检测到新版本 versionchecklib_download_fail 下载失败,点击重试 更详细的使用请看demo 欢迎star和提issue