Android 检测更新库
16lz
2021-01-23
AppUpdate
项目地址:fccaikai/AppUpdate
简介:Android 检测更新库
更多:作者 提 Bug
标签:
app版本更新-
中文文档
android app update library
Screenshots
Usage
setup
-
Step 1. Add the JitPack repository to your build file
Add it in your root build.gradle at the end of repositories:
allprojects { repositories { ... maven { url 'https://jitpack.io' } } }
-
Step 2. Add the dependency
dependencies { compile 'com.github.fccaikai:AppUpdate:2.1.4' }
usage
UpdateWrapper updateWrapper = new UpdateWrapper.Builder(getApplicationContext()) //set interval Time .setTime(time) //set notification icon .setNotificationIcon(R.mipmap.ic_launcher_round) //set update file url .setUrl("you update json file url") //set customs activity .setCustomsActivity(cls) //set showToast. default is true .setIsShowToast(false) //add callback ,return new version info .setCallback(new CheckUpdateTask.Callback() { @Override public void callBack(VersionModel model,booleab hasNewVersion) { Log.d(TAG,"new version :" + model.getVersionName()); } }) .build();updateWrapper.start();
The update json format:
{ "versionCode":1, "versionName":"1.0.0", "content":"1.add something#2.add something",//use # to wrap "minSupport":1, //min support version. while your app versionCode less than minSupport,You must update app "url":"apk download url"}
Custom
-
create custome Activity
create an activity
extents UpdateActivity
,and Overrideprotected Fragment getUpdateDialogFragment()
.like :public class CustomsUpdateActivity extends UpdateActivity { @Override protected Fragment getUpdateDialogFragment() { return CustomsUpdateFragment.newInstance(mModel); }}
-
set theme
set Activity theme as Dialog to,in
Androidmanifest.xml
android:theme="@style/UpdateDialog"
-
create custom FragmentDialog
create a FragmentDialog
extends UpdateDialog
.like:public class CustomsUpdateFragment extends UpdateDialog { public static CustomsUpdateFragment newInstance(VersionModel model) { Bundle args = new Bundle(); args.putSerializable(Constant.MODEL, model); CustomsUpdateFragment fragment = new CustomsUpdateFragment(); fragment.setArguments(args); return fragment; } @Override protected int getLayout() { return R.layout.fragment_update_dialog; } @Override protected void setContent(View view, int contentId) { super.setContent(view, R.id.content); } @Override protected void bindUpdateListener(View view, int updateId) { super.bindUpdateListener(view, R.id.update); } @Override protected void bindCancelListener(View view, int cancelId) { super.bindCancelListener(view, R.id.cancel); } @Override protected void initIfMustUpdate(View view, int id) { super.initIfMustUpdate(view, R.id.cancel); }}
-
set Custom Activity
UpdateWrapper.Builder builder = ...;builder.setCustomsActivity(CustomsUpdateActivity.class);...builder.build().start();
see the demo .
更多相关文章
- android中的按钮以图片的方式显示_基础篇
- 详解Android读取本地图片和网络图片的方法
- Android 读取TXT 文件中文乱码 解决方案
- Android 10 获取相册图片失败
- Android图片旋转实例
- Android获取图片Uri/path
- 【Android】图片切换组件ImageSwitcher的运用
- Android 创建圆形背景图片
- Android base64 上传图片