sanjiu-apk-builder
一键生成三元九维诗词分类 APK 的开源脚手架 + 构建器。把"制作 APK"的整套方法(Android 工程脚手架、三元诗卦引擎、图文界面、图标接入、JDK17/SDK 检测、签名 keystore、release 构建、APK 校验)沉淀为一条命令。
功能
- scaffold:从内置模板生成完整可运行的 Android 工程
- 三元诗卦引擎
SanjiuEngine(9 维诗卦 + 错/综/互/变算子 + 年龄段分类 + 逆向检索) - 图文并茂界面
MainActivity(卦象图画、年龄段 chip、三元推演、经典/原创双模式) - 九爻卦画 App 图标(5 密度 mipmap)+ 语料资源
- 三元诗卦引擎
- build:自动检测 JDK17 / Android SDK,生成签名
release.jks,跑assembleRelease,apksigner校验,产出签名 APK - 数据驱动:
poems.json(经典语料)+original.json(三元原创)可直接替换
安装
pip install sanjiu-apk-builder
# 或本地:pip install -e .
用法
# 1) 从模板生成工程(可选 --poems/--original/--icon)
sanjiu-apk scaffold --out ./my-poem-app \
--package com.myname.poetry --name "我的诗库" \
--poems poems.json --original original.json \
--icon my_icon.png # 自定义 App 图标(自动生成 5 密度 mipmap)
# 2) 构建(自动检测 JDK17 与 SDK,缺则用 --jdk/--sdk 指定)
sanjiu-apk build --dir ./my-poem-app \
--jdk /path/to/jdk-17 --sdk /path/to/android-sdk
构建产物:app/build/outputs/apk/release/app-release.apk(release 签名,apksigner 校验通过)。
不传
--icon时使用内置的九爻卦画默认图标;传了则用你的图片(居中裁剪正方形后缩放为 48/72/96/144/192 px)。
发布到 PyPI
- 已发布:PyPI · sanjiu-apk-builder(
pip install sanjiu-apk-builder) - 打
v*标签自动触发 publish-pypi.yml 发布:- Trusted Publishing(推荐):在 PyPI 项目设置 把仓库
q1z2q3-debug/sanjiu-apk-builder与publish-pypi.yml绑定为发布者,无需存密码; - 或配置仓库 Secrets
PYPI_TOKEN(PyPI__token__密码)。
- Trusted Publishing(推荐):在 PyPI 项目设置 把仓库
- CI build-apk 保证每次提交可构建出签名 APK;Release 由 release.yml 在打标签时自动创建并附 APK。
前置要求
- JDK 17(AGP 8.9 要求),经
JAVA_HOME或--jdk提供 - Android SDK(含
cmdline-tools、build-tools、platforms/android-36、licenses),经ANDROID_HOME或--sdk提供
语料格式
poems.json:[{"title","author","text","topic","age","gua":[9 维]}]
original.json:[{"age","op","gua","title","text","oracle"}]
age 用数字索引:0=儿童 1=少年 2=青年 3=中年 4=老年。示例见 templates/poems.json。
安全说明
插件自动生成的 keystore 与密码仅用于本地 demo 构建;发布正式应用请自行更换 keystore 与强密码,且勿把 keystore/、gradle.properties、local.properties 提交进仓库(见模板 .gitignore 思路)。
License
MIT
Metadata
Release files for sanjiu-apk-builder 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sanjiu_apk_builder-0.1.1.tar.gz | 161.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sanjiu_apk_builder-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 323.8 kB
Release files / sanjiu_apk_builder-0.1.1.tar.gz
| Download URL | sanjiu_apk_builder-0.1.1.tar.gz |
|---|---|
| Size | 161.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d4d9873cfea7f315acdcd5800f34d5fe3b49e398d1634c5edb1c280dbc1d2ed6
|
|
BLAKE2b-256 checksum How to use checksums |
a1bbbf1667c57c21564240eb2b49a497e63095680265582b0ce3f4dae9b37466
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.11
|
Release files / sanjiu_apk_builder-0.1.1-py3-none-any.whl
| Download URL | sanjiu_apk_builder-0.1.1-py3-none-any.whl |
|---|---|
| Size | 162.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f8a44133bab080c712c759c7723d74fda41ce330fd80b3056dc3b7b9eeacc22d
|
|
BLAKE2b-256 checksum How to use checksums |
1d4d0159d6ab9d1cf90ea4e829ba3e1ba5733dec083182665e491c8456d95ebd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.11
|