Rename app to EasyView and make APK build cross-platform

- App display name -> EasyView (Android label, PWA manifest, page titles,
  about/guide text, APK artifact name)
- scripts/build-apk.mjs: auto-detect JDK/SDK/Gradle toolchain instead of
  hardcoded Windows paths; pick highest build-tools; platform 34 fallback;
  path.delimiter classpaths; npm run build without cmd.exe on POSIX
- Add build-apk.sh one-shot Linux build wrapper (loads ven env + keystore)
- Signing keystore renamed to easyview.jks (alias easyview),
  env vars EASYVIEW_KEYSTORE_PASS / EASYVIEW_KEY_PASS
This commit is contained in:
2026-10-26 19:38:42 +08:00
parent e01c7eaecb
commit f70913481e
12 changed files with 170 additions and 96 deletions
+14 -5
View File
@@ -1,4 +1,4 @@
# PhoneViewer / 万能看图
# EasyView / 万能看图
手机 / 平板上的本地 DWG、PDF、EPUB、FB2、XPS/OXPS、CBZ 和图片浏览器。
@@ -19,16 +19,25 @@ npm run build
## 构建 Android APK
需要 JDK 17、Android SDK 34 和 Gradle 的 Kotlin 编译器(脚本位于 `E:\AiCodeGitea\ven\AndroidDev`,可在 `scripts/build-apk.mjs` 中调整路径)。
需要 JDK 17+/21、Android SDK(platform 34、build-tools)以及带 Kotlin 编译器的 Gradle 发行版。
本工作区已把这些工具链放在 `../ven/` 下,脚本会自动探测:
签名信息不写入仓库。构建前设置:
| 工具 | 位置 |
| --- | --- |
| JDK | `ven/jdk21`(或 `JAVA_HOME`) |
| Android SDK | `ven/android-sdk`(或 `ANDROID_HOME`) |
| Gradle + Kotlin 编译器的 lib | `ven/gradle-dist/gradle-8.9`(或 `GRADLE_HOME`) |
签名信息不写入仓库,首次构建会自动生成 `android/keystore/easyview.jks`。构建前设置口令:
```bash
PHONEVIEWER_KEYSTORE_PASS=your-keystore-password
PHONEVIEWER_KEY_PASS=your-key-password
source ../ven/node-env.sh # Node 工具链(可选)
export EASYVIEW_KEYSTORE_PASS=your-keystore-password
export EASYVIEW_KEY_PASS=your-key-password # 省略则与上面相同
npm run apk
```
产物:`EasyView-<version>.apk`(仓库根目录),`android/build/` 为中间产物。
`android/keystore/`、测试 DWG、APK、`dist/`、`node_modules/` 均已加入 `.gitignore`。图纸不会上传,解析完全在本地进行。
## 许可