All Projects → ha-excited → Bignews

ha-excited / Bignews

Android增量更新框架差分包升级

Programming Languages

java
68154 projects - #9 most used programming language
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Bignews

Apps Version Update
高扩展性的多APP版本更新API接口与后台管理系统
Stars: ✭ 50 (-66.22%)
Mutual labels:  update, app
Checkversionlib
版本检测升级(更新)库。an auto check version library(app update) on Android
Stars: ✭ 2,546 (+1620.27%)
Mutual labels:  update, app
Base
Base is the foundation for creating modular, unit testable and highly pluggable, server-side node.js applications.
Stars: ✭ 67 (-54.73%)
Mutual labels:  update, app
Githubupdates
Cocoa framework to install application updates from GitHub releases.
Stars: ✭ 393 (+165.54%)
Mutual labels:  update, app
Checknewappversionavailable
It makes a request to Play Store to check if there is a new version of your published app
Stars: ✭ 69 (-53.38%)
Mutual labels:  update, app
Apk Utilities
🛠 Tools and scripts to manipulate Android APKs
Stars: ✭ 134 (-9.46%)
Mutual labels:  app
Avvw
Apicloud + Vue2 + Vant(有赞前端)+ Webpack4打包,极速开发APP框架,将apicloud的渲染效率和vue数据绑定特性发挥极致!
Stars: ✭ 143 (-3.38%)
Mutual labels:  app
Wordpress Mobile Application
为wordpress 转 app(安卓/IOS)
Stars: ✭ 131 (-11.49%)
Mutual labels:  app
Hot
Hot is macOS menu bar application that displays the CPU speed limit due to thermal issues.
Stars: ✭ 131 (-11.49%)
Mutual labels:  app
Myriam
A vulnerable iOS App with Security Challenges for the Security Researcher inside you.
Stars: ✭ 146 (-1.35%)
Mutual labels:  app
Electron Menubar
Boilerplate for electron menubar application with PopOver with React + Webpack
Stars: ✭ 145 (-2.03%)
Mutual labels:  app
Translateapp
📝 A translations app without interruptions, copy words and translate directly, show result by top view.
Stars: ✭ 1,722 (+1063.51%)
Mutual labels:  app
Ioctocat
iOctocat v1 - GitHub for iOS (works on the iPhone, iPad, and iPod Touch)
Stars: ✭ 1,665 (+1025%)
Mutual labels:  app
App Privacy Policy Generator
A simple web app to generate a generic privacy policy for your Android/iOS apps
Stars: ✭ 2,278 (+1439.19%)
Mutual labels:  app
Doubanfm Py
📻 豆瓣 FM 第三方红心频道播放器
Stars: ✭ 134 (-9.46%)
Mutual labels:  app
Update Check
Minimalistic update notifications for command line interfaces
Stars: ✭ 145 (-2.03%)
Mutual labels:  update
Timy Messenger
Timy - open source mobile app for groups to communicate and organize themselves. Built with flutter.
Stars: ✭ 1,745 (+1079.05%)
Mutual labels:  app
Awesome Testflight Link
Collection of Testflight public app link
Stars: ✭ 139 (-6.08%)
Mutual labels:  app
Oss.ninja
👩‍⚖️ Dynamic licenses for your projects - no more LICENSE.txt!
Stars: ✭ 144 (-2.7%)
Mutual labels:  app
Life Calendar
A look at the big picture.
Stars: ✭ 139 (-6.08%)
Mutual labels:  app

BigNews: Android增量升级/增量更新框架

支持增量包/差分包/升级包

原理:在服务器端使用bsdiff工具将新老安装包的差异打包为一个体积较小的差分包/升级包,然后在App端通过bspatch工具(和bsdiff配套的)用差分包/升级包升级本地的安装包并安装,达到增量更新的目的。

本框架集成了bsdiff/bspatch工具,可以在Android端完成差分与合并操作。

方案:把升级包/差分包从服务器上下载下来,使用BigNews.make()结合本地安装包生成最新安装包进行安装更新。

导入方法

方法1. 下载本项目,Android Studio 中 File->New->Import Module导入本项目。

方法2. 下载本项目,将本项目编译,从library/build/outputs/aar中拷贝library-release.aar重命名为bignews.aar, 放到你项目的libs目录。
打开项目模块内的build.gradle(通常为app/build.gradle)添加代码后Gradle Sync:

repositories {
    flatDir {
        dirs 'libs'
    }
}
dependencies {
    implementation(name: 'bignews', ext: 'aar')
}

方法3. (推荐!)无需下载本项目,在你项目根build.gradle添加代码:

allprojects {
    repositories {
        ...
        maven { url 'https://jitpack.io' }
    }
}

在你项目模块内的build.gradle添加代码,然后Gradle Sync:

    dependencies {
        implementation 'com.github.ha-excited:BigNews:0.1.2'
    }

调用方法

合并: 从差分包/升级包和老安装包合并升级到新安装包,新安装包放在newApkPath。

/**
 * oldApkPath: 老安装包路径
 * newApkPath: 新安装包路径(输出)
 * patchPath: 升级/差分包路径
 * return: 成功返回true,否则为false。
 */
BigNews.make(oldApkPath, newApkPath, patchPath);

差分: 将新安装包和老安装包的差异打包为差分包/升级包,输出到patchPath。

/**
 * oldApkPath: 老安装包路径
 * newApkPath: 新安装包路径
 * patchPath: 升级/差分包路径(输出)
 * return: 成功返回true,否则为false。
 */
BigNews.diff(oldApkPath, newApkPath, patchPath);

项目中一般使用合并功能。

Make a BigNews!!

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].