Coder Social home page Coder Social logo

alexliusheng / checkversionlib Goto Github PK

View Code? Open in Web Editor NEW
2.6K 2.6K 483.0 21.26 MB

版本检测升级(更新)库。an auto check version library(app update) on Android

Home Page: https://github.com/AlexLiuSheng/CheckVersionLib

Java 55.10% Kotlin 44.90%
android app appupdate checkversion update updateapp updateversion version versioncheck

checkversionlib's Introduction

liusheng

checkversionlib's People

Contributors

alecklq avatar alexliusheng avatar asfdjklsa avatar lxstar avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

checkversionlib's Issues

设置成静默下载报错

在DemoService的onResponses方法中调用showVersionDialog出错,出错信息:Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag.
非静默下载中添加了 intent.addFlags(268435456),而静默下载并没有,是这个原因吗?

设置成静默下载,会出现下载失败的情况。

静默下载,看代码直接调用下载模块,那如果在6.0之后的手机上,在下载之前没有请求SD卡读写权限。导致如果没有权限,会直接回调OnDownLoadFail。显示进度条的下载是做了权限请求的,不会有此问题。所以如果需求是静默下载的话,最好在调用之前,做一下读写权限的检查。

Android4.3 引入CheckVersionLib1.0.1之后打开直接奔溃

gradle配置:
compileSdkVersion 23
buildToolsVersion '22.0.1'
minSdkVersion 18
targetSdkVersion 23

引入库之后自动把我的support库更新到24,然后出现NotFoundException: File res/drawable/abc_vector_test.xml from drawable resource ID
应用直接无法打开。请问有没有什么解决方案?
(在Android5.0的手机上打开没问题)

强制更新bug 用户可以在下载完成系统安装界面点击取消,回调不到dialogDismiss方法

版本1.5.3 系统MIUI9

操作步骤
1.进入应用发现更新,用户点击更新并下载完成
2.自动跳转到应用安装界面
3.此时用户点击系统安装界面的取消按钮,退出此次安装,能回调到onDownloadSuccess方法完成强制退出

4.用户再次打开应用,应用提示更新,点击更新,由于本地已经下载了安装包,不会重新下载,直接跳转安装界面
5.用户在此时再次点击取消安装,不能回调dialogDismiss或者onDownloadSuccess或者其他方法完成强制退出
此时用户就可以绕过强制更新而使用旧版本,复现率100%

暂时解决办法,setForceRedownload(true)开启强制重新下载

无法连续升级

首次更新,下载APK在文件目录,安装完成后未删除该安装包,导致再次版本更新时,不下载新APK.而是直接安装之前老的apk.
解决方法,修改checkAPKIsRight方法,对安装包的包名以及版本进行校验

建议减少库的依赖

把lib和demo分开为独立的模块,可以让库少用一个 com.alibaba:fastjson:1.2.17
另外建议能用通用的库就用通用的库,把 okhttputils 换成 okhttp3。
可以减少引入本库后增加的体积。

版主你好~

有些细节想和你探讨下,gitHub不方便 可以留个联系方式吗?比如工作的QQ之类的,或者企鹅我:435725233 希望版主看到了 可以回一下哈 谢谢

有个报空指针异常的,上线报的比较多

Attempt to invoke virtual method 'int android.content.Intent.getIntExtra(java.lang.String, int)' on a null object reference

com.allenliu.versionchecklib.AVersionService.onStartCommand(AVersionService.java:39)
default

下载对话框

image
下载对话框 宽度怎么改变不了? 无论怎么布局 宽度始终是一致的! 怎么能改变宽高,居中显示在屏幕中间

怎么自定义检查更新功能

我有自己的检查更新sdk,怎么只使用你的下载对话框和下载功能呢?
一定要 AllenChecker.startVersionCheck(MainActivity.this, builder.build());么?

vivoY66不能弹窗。会崩溃

Caused by: Android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?

默认下载文件路径无法创建

在华为荣耀6,Android 6.0的版本上,根据默认路径(
/storage/emulated/0/AllenVersionPath/)创建下载文件抛异常的.具体在FileCallBack 的60行.默认为app当前私有目录是可以的.

通知栏显示icon问题

image
我的Android studio使用的是上图res文件夹 你的库是mipmap 导致通知栏图标是机器人 要怎么才能显示呢?
要下载源码修改吗?

你好,会冲突吗?

我这边项目使用到的OKGO版本是3.0.4 朋友你使用的是OKGO版本是2.1.4 请问两个会冲突吗?

requestUrl作为请求版本接口url的作用是什么,为空时闪退。。。

VersionParams.Builder builder = new VersionParams.Builder()
.setRequestUrl("http://www.baidu.com")
.setCustomDownloadActivityClass(CustomDialogActivity.class)
.setService(MyService.class);

Retrofit mRetrofit = new Retrofit.Builder()
.baseUrl(URL)
.addConverterFactory(GsonConverterFactory.create(gson))
.client(okHttpClient)
.build();
问题1:“setRequestUrl("http://www.baidu.com")”的作用相当于Retrofit 中的“baseUrl(URL)”么?
好像除了为空外随便输什么网址都可以啊。
问题2:既然上面已经设置了一个url,但showVersionDialog("downloadUrl","test","test",bundle)中的downloadUrl仍然要求是apk的完整url地址,这样做是为了什么?

有个空指针,需要判断下

@OverRide
public int onStartCommand(Intent intent, int flags, int startId) {
Log.e("onStartCommand", "intent: " + intent);
if (intent != null) {
versionParams = intent.getParcelableExtra(VERSION_PARAMS_KEY);
requestVersionUrlSync();
}
return super.onStartCommand(intent, flags, startId);
}

你可以发现不加判断,崩溃的时候,intent打印出来是null

请问

通知栏显示进度,进度条下方的进度数字:25%/100%能不能把百分号去掉?!或者直接显示:25%

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.