Android 增量更新

核心部分 bsdiff 和zip2

bsdiff 相关下载地址 :
官网http://www.daemonology.net/bsdiff/
镜像地址 https://packages.debian.org/zh-cn/sid/ppc64el/bsdiff/download
对应的版本链接http://ftp.de.debian.org/debian/pool/main/b/bsdiff/

zip2 相关下载地址 :
官方网站https://sourceforge.net/projects/bzip2/
对应的版本链接https://sourceware.org/pub/bzip2/

Android引入 新建module lib模块 如图所示引入相关bsdiff源码和zip源码相关文件

在这里插入图片描述

CMakeLists.txt 文件配置
在这里插入图片描述

相关代码
cmake_minimum_required(VERSION 3.4.1)

aux_source_directory(bzip2 BZIP_SOURCES)#bspatch.c合成文件所需依赖库

add_library(
        bspatch_lib #库名

        SHARED#动态库
        native-lib.cpp
        bspatch.c
        ${BZIP_SOURCES}#源文件
)

include_directories(bzip2)

target_link_libraries(
        bspatch_lib
        log)

native-lib.cpp相关配置,这里是jni交互部分 java 调用c c++相关方法,如图所示
在这里插入图片描述

相关代码

#include <jni.h>
#include <android/log.h>

extern "C" {
   
   
extern int executePatch(int argc, char *argv[]);
}

extern "C"
JNIEXPORT jint JNICALL
Java_com_example_patchlib_PatchUtils_patch(JNIEnv *env, jobject clazz, jstring old_apk,
                                          jstring new_apk, jstring patch_file) {
   
   
    int args = 4;
    char *argv[args];
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值