Android App 如何快速集成和升级 MuPdf 而不用自行构建编译so库?3步搞定

关于集成 Android MuPdf ,网上大部分文章的解决方案都是需要将代码 clone 下来,然后安装 Cygwin 进行编译,最后生成 so 等文件。

对于新手或不清楚怎么编译 so 的朋友来说是非常痛苦的,因为还要花时间去学习怎么构建编译。

在任务比较赶的情况下,最好不用自己编译就能拿到最新版的 so文件,因为构建、编译等等一系列操作最终目的还是生成 so 文件而已。

下面 3 个步骤就能搞定

一、官网下载 Apk 包

在官网地址 MuPDF 的 download 页面下载自己所需要的 apk 版本 ,截至发稿最新版是 v1.23.4a

android-viewwer.apk 下载下来,然后将后缀 apk 改为 zip 进行解压,就能在 lib 文件夹就能找到各种架构的 so 文件。

至此完全不用自己去编译就能得到 so 文件,就问你屌不屌(#^.^#)

二、Github 下载源码

有了 so 文件,还需拿到上层的 java 代码,该代码分 2 部分,一个是调用 so 库的核心代码,另一个是调用核心代码的 UI 层代码。

注意:

  1. 核心层的源码 com.artifex.mupdf 包名最好不要变动,因为 so 层代码是用此包名,否则会报错
  2. 根据 Apk 的版本去下载所对应版本的源码

2.1 抽取核心层代码

源码可在 GitHub 下载:mupdf

Tags 找到 apk 版本所对应的源码

由于本人上面所下载的 Apk 版本的是 v1.23.4a ,所以就下载该版本的源码 zip 即可。

源码 zip 包含了所有平台的代码,我们用到的代码在 platform/java/src/com/artifex/mupdf/fitz 路径下,直接将该路径下的代码拷贝到项目中即可

2.2 抽取 UI 层代码

源码地址:mupdf-android-viewer

还是在 Tags 页面 下载源码

所用到的代码在 lib/src/main/java/com/artifex/mupdf/viewer,路径下,直接将该路径下的代码拷贝到项目中即可

三、将 2 部分源码及 SO 库导入 Android studio 运行

3.1 将核心层代码及 so 文件直接拷贝到项目上

代码在上面: 【2.1 抽取核心层代码】章节有描述

so 文件从 apk 中提取: 【一、官网下载 Apk 包】章节有描述

3.2 将UI层代码直接拷贝到项目上

代码在上面: 【2.2 抽取UI层】章节有描述

除了 Java 代码,UI层还有资源文件也一起拷贝过来。

最终修改部分文件的资源引用问题,即可运行成功。

总结

主要的还是 3 点

  1. 下载 Apk 解压提取 so 文件
  2. 下载调用 so 文件的核心代码
  3. 下载界面显示的代码

至此已完成 MuPdf 的集成,如集成的过程有问题欢迎在评论区留言!!

相关推荐
Mr数据杨1 小时前
【Codex】用学生入学评估模块建立新生能力画像
android·java·javascript·django·codex·项目开发
●VON1 小时前
谁小时候不想要一个游戏修改器?我把电脑 Skill 做成了 Android 小助手
android·游戏·电脑
刃神太酷啦1 小时前
Linux 系统 MySQL 完整安装配置教程:从卸载 MariaDB 到优化 my.cnf----《Hello MySQL!》(1)
android·linux·c语言·c++·mysql·leetcode·mariadb
里欧跑得慢2 小时前
Flutter 三方库 function_tree — 鸿蒙应用开发中的动态数学公式解析与计算神器,实现鸿蒙深度适配下的复杂函数逻辑运行时求值实战(适配鸿蒙 HarmonyOS Next ohos)
android·前端·安全·flutter·华为·harmonyos
IT毕设实战小研2 小时前
基于安卓的空气质量查询系统
android·大数据·vue.js·爬虫·python·django·课程设计
雨声不在4 小时前
docker-android Android 16 支持与编译修改
android
天空之城--10 小时前
【无标题】
android
mmsx11 小时前
osmdroid 接入谷歌影像底图:瓦片 URL 拼接与多域名轮询实战
android·osmdroid
ZYJCSZKJ11 小时前
基于大语言模型的地域实体语义增强:生成式引擎优化(GEO)中的多模态内容生成实践
android·人工智能·语言模型
ssshooter11 小时前
Tauri + GitHub Actions 自动化发布 Android APK 技术总结
android·github·android studio