开源电子书阅读器 LibreraReader 编译环境与编译
https://github.com/foobnix/LibreraReader
========================================================================================
1.下载代码到linux环境 git clone [email protected]:foobnix/LibreraReader.git
2.下载sdk和ndk:我使用的是sdk build-tools 29.0.3
ndkVersion 21.3.6528147
buildToolsVersion '29.0.3'
compileSdkVersion 29
ndkVersion "21.3.6528147"
targetSdkVersion 29
3.根目录创建local.properties文件
ndk下载
https://developer.android.com/ndk/downloads?hl=zh-cn
android {
ndkVersion "22.0.7026061"
}
sdk.dir = /home/xxx/work/androidSdk
ndk.dir = /home/xxx/work/android-ndk-r21d
4.export ANDROID_HOME=/home/xxx/work
export PATH=$PATH:$ANDROID_HOME/android-ndk-r21d
5.安装一些依赖包
sudo apt-get install build-essential
sudo apt-get install libgl1-mesa-dev
sudo apt-get install libglu1-mesa-dev
sudo apt-get install libglut-dev
sudo apt-get install freeglut3-dev
sudo apt-get install libx11-dev
sudo apt-get install libxi-dev
6.配置keystore.pkcs12
(1)生成key
keytool -genkey -v -storetype PKCS12 -keystore keystore.pkcs12 -alias ALIAS -keyalg RSA -keysize 2048 -validity 10000
(2)~/.gradle/gradle.properties 修改key配置
RELEASE_STORE_FILE=/PATH/TO/YOUR/keystore.pkcs12
RELEASE_STORE_PASSWORD=PASSWD
RELEASE_KEY_PASSWORD=PASSWD
RELEASE_KEY_ALIAS=ALIAS
7.cd Builder ./link_to_mupdf_1.16.1.sh
./gradlew assembleFdroid
等待编译完成
========================================================================================
Librera Reader is an e-book reader for Android devices; it supports the following formats: PDF, EPUB, EPUB3, MOBI, DjVu, FB2, TXT, RTF, AZW, AZW3, HTML, CBZ, CBR, DOC, DOCX, and OPDS Catalogs
Web: http://librera.mobi/
FAQ: Read
Android Play Market Apps:
Librera
Librera PRO
Application Fonts (fonts.zip download to internal sd card, to [Downloads] folder) link
Telegram
Telegram Download Beta apk
Beta .apk (latest build)
mesa-common-dev libxcursor-dev libxrandr-dev libxinerama-dev libglu1-mesa-dev libxi-dev pkg-config
You also need the Android NDK in version 20+ Please ensure to download it using android studio and add the NDK to your PATH.
Even if you do not plan to upload a version yourself you need a keystore with a certificate to build. The keystore needs to be in PKCS12 format. You can create a keystore in your actual directory using the following call (replace ALIAS by your alias, it is just a name):
keytool -genkey -v -storetype PKCS12 -keystore keystore.pkcs12 -alias ALIAS -keyalg RSA -keysize 2048 -validity 10000
Now edit or create the file ~/.gradle/gradle.properties and set following values (replacing PASSWD by the password you typed while creating the keystore, ALIAS as before and using the path to your keystore):
RELEASE_STORE_FILE=/PATH/TO/YOUR/keystore.pkcs12
RELEASE_STORE_PASSWORD=PASSWD
RELEASE_KEY_PASSWORD=PASSWD
RELEASE_KEY_ALIAS=ALIAS
To build with firebase support (all version but the ones for Fdroid) you need to get an authentication file for firebase services offered by google. Therefore please follow https://firebase.google.com/docs/android/setup to create your own project. You need to register for the packages com.foobnix.pdf.info and com.foobnix.pdf.reader.a1. This way you will get a google-services.json file that you have to place in the app folder of the repository.
For this project only Analytics is used, so a spakling plan is all you need.
cd Builder
./link_to_mupdf_1.11.sh (Change the paths to mupdf and jniLibs folders)
./gradlew assembleLibrera
cd Builder
./link_to_mupdf_1.16.1.sh
./gradlew assembleAlpha
If you wish to build for F-Droid (e.g. not using google services) you can run the build with
cd Builder
./link_to_mupdf_1.16.1.sh
./gradlew assembleFdroid
F-Droid build does also not need a google-services.json
MuPDF - (AGPL License) https://mupdf.com/downloads/archive/
Librera is distributed under the GPL
See the LICENSE file for license rights and limitations (GPL v.3).