All Projects → jenly1314 → Appupdater

jenly1314 / Appupdater

Licence: mit
🚀 AppUpdater一个专注于App更新,一键傻瓜式集成App版本升级的轻量开源库。(无需担心通知栏适配;无需担心重复点击下载;无需担心App安装等问题;这些AppUpdater都已帮您处理好。)

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Appupdater

Checknewappversionavailable
It makes a request to Play Store to check if there is a new version of your published app
Stars: ✭ 69 (-83%)
Mutual labels:  update, version
Android Prince Of Versions
Android library for handling application updates.
Stars: ✭ 94 (-76.85%)
Mutual labels:  update, version
Apps Version Update
高扩展性的多APP版本更新API接口与后台管理系统
Stars: ✭ 50 (-87.68%)
Mutual labels:  update, version
Update4j
Create your own auto-update framework
Stars: ✭ 497 (+22.41%)
Mutual labels:  update, download
assetUpdater-core
AssetUpdater is a Unity plugin which helps developers build assetbundles and download it easily
Stars: ✭ 38 (-90.64%)
Mutual labels:  download, update
Githubupdates
Cocoa framework to install application updates from GitHub releases.
Stars: ✭ 393 (-3.2%)
Mutual labels:  update, download
Backgroundupdate
后台更新APP(两句代码实现)
Stars: ✭ 80 (-80.3%)
Mutual labels:  update, dialog
Progress dialog
A light weight library to easily manage a progress dialog with simple steps whenever you need to do it. You can easily show and hide it.
Stars: ✭ 196 (-51.72%)
Mutual labels:  update, dialog
KanColle-English-Patch-KCCP
English Patch for the original KanColle browser game, to be used with KCCacheProxy. Translates most of the game into english.
Stars: ✭ 28 (-93.1%)
Mutual labels:  download, version
Checkversionlib
版本检测升级(更新)库。an auto check version library(app update) on Android
Stars: ✭ 2,546 (+527.09%)
Mutual labels:  update, version
Port-Able-Suite
🌐 Manager for portable applications
Stars: ✭ 35 (-91.38%)
Mutual labels:  download, update
bump
A generic version tracking and update tool
Stars: ✭ 33 (-91.87%)
Mutual labels:  update, version
SSAppUpdater
SSAppUpdater is an open-source framework that compares the current version of the app with the store version and returns the essential details of it like app URL, new app version number, new release note, etc. So you can either redirect or notify the user to update their app.
Stars: ✭ 58 (-85.71%)
Mutual labels:  update, version
Westore
更好的小程序项目架构
Stars: ✭ 3,897 (+859.85%)
Mutual labels:  update
Django Private Chat
Django one-to-one Websocket-based Asyncio-handled chat, developed by Bearle team
Stars: ✭ 376 (-7.39%)
Mutual labels:  dialog
M3u8 Downloader
M3U8-Downloader 支持多线程、断点续传、加密视频下载缓存。
Stars: ✭ 369 (-9.11%)
Mutual labels:  download
Ytmdl Web V2
Web version of ytmdl. Allows downloading songs with metadata embedded from various sources like itunes, gaana, LastFM etc.
Stars: ✭ 398 (-1.97%)
Mutual labels:  download
Siren
Siren checks a user's currently installed version of your iOS app against the version that is currently available in the App Store.
Stars: ✭ 3,892 (+858.62%)
Mutual labels:  update
Version Checker
Kubernetes utility for exposing image versions in use, compared to latest available upstream, as metrics.
Stars: ✭ 371 (-8.62%)
Mutual labels:  version
Go Github Selfupdate
Binary self-update mechanism for Go commands using GitHub
Stars: ✭ 370 (-8.87%)
Mutual labels:  update

AppUpdater

Image

Download JCenter JitPack CI CircleCI API License Blog QQGroup

AppUpdater for Android 是一个专注于App更新,一键傻瓜式集成App版本升级的轻量开源库。(无需担心通知栏适配;无需担心重复点击下载;无需担心App安装等问题;这些AppUpdater都已帮您处理好。) 核心库主要包括app-updater和app-dialog。

下载更新和弹框提示分开,是因为这本来就是两个逻辑。完全独立开来能有效的解耦。

  • app-updater 主要负责后台下载更新App,无需担心下载时各种配置相关的细节,一键傻瓜式升级。
  • app-dialog 主要是提供常用的Dialog和DialogFragment,简化弹框提示,布局样式支持自定义。

app-updater + app-dialog 配合使用,谁用谁知道。

功能介绍

  • [x] 专注于App更新一键傻瓜式升级
  • [x] 够轻量,体积小
  • [x] 支持监听下载过程
  • [x] 支持下载失败,重新下载
  • [x] 支持下载优先取本地缓存
  • [x] 支持通知栏提示内容和过程全部可配置
  • [x] 支持Android Q(10)
  • [x] 支持取消下载
  • [x] 支持使用OkHttpClient下载

AndroidX version

Gif 展示

Image

引入

Maven:

    //app-updater
    <dependency>
      <groupId>com.king.app</groupId>
      <artifactId>app-updater</artifactId>
      <version>1.0.10</version>
      <type>pom</type>
    </dependency>
    
    //app-dialog
    <dependency>
      <groupId>com.king.app</groupId>
      <artifactId>app-dialog</artifactId>
      <version>1.0.10</version>
      <type>pom</type>
    </dependency>

Gradle:

    //----------AndroidX 版本
    //app-updater
    implementation 'com.king.app:app-updater:1.0.10-androidx'
    //app-dialog
    implementation 'com.king.app:app-dialog:1.0.10-androidx'
    
    //----------Android Support 版本
    //app-updater
    implementation 'com.king.app:app-updater:1.0.10'
    //app-dialog
    implementation 'com.king.app:app-dialog:1.0.10'

Lvy:

    //app-updater
    <dependency org='com.king.app' name='app-dialog' rev='1.0.10'>
      <artifact name='$AID' ext='pom'></artifact>
    </dependency>
    
    //app-dialog
    <dependency org='com.king.app' name='app-dialog' rev='1.0.10'>
      <artifact name='$AID' ext='pom'></artifact>
    </dependency>
如果Gradle出现compile失败的情况,可以在Project的build.gradle里面添加如下:(也可以使用上面的GitPack来complie)
    allprojects {
        repositories {
            //...
            maven { url 'https://dl.bintray.com/jenly/maven' }
        }
    }

示例

    //一句代码,傻瓜式更新
    new AppUpdater(getContext(),url).start();
    //简单弹框升级
    AppDialogConfig config = new AppDialogConfig(context);
    config.setTitle("简单弹框升级")
            .setOk("升级")
            .setContent("1、新增某某功能、\n2、修改某某问题、\n3、优化某某BUG、")
            .setOnClickOk(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    new AppUpdater.Builder()
                            .setUrl(mUrl)
                            .build(getContext())
                            .start();
                    AppDialog.INSTANCE.dismissDialog();
                }
            });
    AppDialog.INSTANCE.showDialog(getContext(),config);
    //简单DialogFragment升级
    AppDialogConfig config = new AppDialogConfig(context);
    config.setTitle("简单DialogFragment升级")
            .setOk("升级")
            .setContent("1、新增某某功能、\n2、修改某某问题、\n3、优化某某BUG、")
            .setOnClickOk(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    new AppUpdater.Builder()
                            .setUrl(mUrl)
                            .setFilename("AppUpdater.apk")
                            .build(getContext())
                            .setHttpManager(OkHttpManager.getInstance())//不设置HttpManager时,默认使用HttpsURLConnection下载,如果使用OkHttpClient实现下载,需依赖okhttp库
                            .start();
                    AppDialog.INSTANCE.dismissDialogFragment(getSupportFragmentManager());
                }
            });
    AppDialog.INSTANCE.showDialogFragment(getSupportFragmentManager(),config);

更多使用详情,请查看app中的源码使用示例或直接查看API帮助文档

混淆

app-updater Proguard rules

app-dialog Proguard rules

版本记录

v1.0.10:2021-3-4

  • AppDialogConfig添加构造参数,简化自定义扩展用法
  • 优化细节

v1.0.9:2020-12-11

  • 优化默认Dialog样式的显示细节

v1.0.8:2020-1-2

  • 支持MD5校验
  • 对外提供获取Dialog方法

v1.0.7:2019-12-18

  • 优化细节

v1.0.6:2019-11-27

  • 新增OkHttpManager 如果使用了OkHttpManager则必须依赖okhttp
  • 优化细节 (progress,total 变更 int -> long)

v1.0.5:2019-9-4

  • 支持取消下载

v1.0.4:2019-6-4 开始支持AndroidX版本

  • 支持添加请求头

v1.0.3:2019-5-9

  • 新增支持下载APK优先取本地缓存,避免多次下载相同版本的APK文件
  • AppDialog支持隐藏Dialog的标题

v1.0.2:2019-3-18

  • 新增通知栏是否震动和铃声提示配置
  • AppDialogConfig新增getView(Context context)方法

v1.0.1:2019-1-10

  • 升级Gradle到4.6

v1.0 :2018-6-29

  • AppUpdater初始版本

赞赏

如果您喜欢AppUpdater,或感觉AppUpdater帮助到了您,可以点右上角“Star”支持一下,您的支持就是我的动力,谢谢 😃

您也可以扫描下面的二维码,请作者喝杯咖啡 ☕️

关于我

Name: Jenly

Email: jenly1314#gmail.com / jenly1314#vip.qq.com

CSDN: jenly121

CNBlogs: jenly

GitHub: jenly1314

Gitee: jenly1314

加入QQ群: 20867961

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].