Skip to content

Commit fac66af

Browse files
committed
Add complete workflow guide and Colab build script
1 parent 92f7dba commit fac66af

13 files changed

+849
-2
lines changed

BeeWare构建指南.md

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
# 使用 BeeWare 构建 APK(Windows 友好)
2+
3+
BeeWare 是一个纯 Python 的跨平台框架,在 Windows 上构建 Android APK 更简单。
4+
5+
## 方法一:在 Windows 上构建(推荐)
6+
7+
### 1. 安装 BeeWare
8+
```bash
9+
pip install briefcase
10+
```
11+
12+
### 2. 创建 Android 项目
13+
```bash
14+
briefcase create android
15+
```
16+
17+
### 3. 构建 APK
18+
```bash
19+
briefcase build android
20+
briefcase package android
21+
```
22+
23+
### 4. APK 位置
24+
生成的 APK 在:`android/gradle/Calculator/app/build/outputs/apk/`
25+
26+
---
27+
28+
## 方法二:使用 Colab(如果 Windows 构建失败)
29+
30+
在 Google Colab 中运行:
31+
32+
```python
33+
# 安装 BeeWare
34+
!pip install briefcase
35+
36+
# 克隆项目
37+
!git clone https://github.com/Michael-YuQ/python-calculator-android.git
38+
%cd python-calculator-android
39+
40+
# 安装 Android SDK 依赖
41+
!apt-get update
42+
!apt-get install -y openjdk-17-jdk wget unzip
43+
44+
# 下载 Android SDK
45+
!wget https://dl.google.com/android/repository/commandlinetools-linux-9477386_latest.zip
46+
!unzip commandlinetools-linux-9477386_latest.zip -d android-sdk
47+
!mkdir -p android-sdk/cmdline-tools/latest
48+
!mv android-sdk/cmdline-tools/* android-sdk/cmdline-tools/latest/ 2>/dev/null || true
49+
50+
# 设置环境变量
51+
import os
52+
os.environ['ANDROID_HOME'] = '/content/python-calculator-android/android-sdk'
53+
os.environ['JAVA_HOME'] = '/usr/lib/jvm/java-17-openjdk-amd64'
54+
55+
# 构建 APK
56+
!briefcase create android
57+
!briefcase build android
58+
!briefcase package android
59+
60+
# 下载 APK
61+
from google.colab import files
62+
import glob
63+
apk_files = glob.glob('android/gradle/Calculator/app/build/outputs/apk/**/*.apk', recursive=True)
64+
if apk_files:
65+
files.download(apk_files[0])
66+
```
67+
68+
---
69+
70+
## 优点
71+
72+
- ✅ Windows 原生支持
73+
- ✅ 不需要 WSL
74+
- ✅ 构建速度较快
75+
- ✅ 使用原生 UI 组件
76+
77+
## 缺点
78+
79+
- 需要下载 Android SDK(约 1-2GB)
80+
- 首次构建需要较长时间
81+
82+
---
83+
84+
## 如果遇到问题
85+
86+
1. 确保安装了 Java JDK 17
87+
2. 确保有足够的磁盘空间(至少 5GB)
88+
3. 如果 Windows 构建失败,使用 Colab 方案

Colab快速构建流程.md

Lines changed: 183 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,183 @@
1+
# Google Colab 快速构建 Android APK 流程
2+
3+
## 📋 准备工作
4+
5+
1. 编写好你的 Python 应用代码(`main.py`
6+
2. 确保代码在本地可以运行
7+
3. 提交到 GitHub
8+
9+
---
10+
11+
## 🚀 快速构建步骤
12+
13+
### 步骤 1:编写代码并提交到 GitHub
14+
15+
```bash
16+
# 在本地修改 main.py
17+
# 然后提交到 GitHub
18+
git add main.py
19+
git commit -m "更新应用代码"
20+
git push
21+
```
22+
23+
### 步骤 2:打开 Google Colab
24+
25+
访问:https://colab.research.google.com/
26+
27+
### 步骤 3:创建新笔记本
28+
29+
点击 "新建笔记本"
30+
31+
### 步骤 4:复制粘贴构建脚本
32+
33+
`colab_build.py` 的内容复制到 Colab 单元格中,然后运行
34+
35+
或者直接运行:
36+
37+
```python
38+
# 一键构建脚本
39+
!pip install buildozer cython==0.29.33
40+
41+
# 克隆你的项目(修改成你的仓库地址)
42+
!git clone https://github.com/Michael-YuQ/python-calculator-android.git
43+
%cd python-calculator-android
44+
45+
# 安装系统依赖
46+
!sudo apt-get update -qq
47+
!sudo apt-get install -y -qq git zip unzip openjdk-17-jdk wget autoconf libtool pkg-config zlib1g-dev libncurses5-dev libncursesw5-dev libtinfo5 cmake libffi-dev libssl-dev
48+
49+
# 构建 APK
50+
!buildozer -v android debug
51+
52+
# 自动查找并下载 APK
53+
from google.colab import files
54+
import glob
55+
56+
apk_files = glob.glob('bin/*.apk')
57+
if not apk_files:
58+
apk_files = glob.glob('.buildozer/**/outputs/apk/**/*.apk', recursive=True)
59+
60+
if apk_files:
61+
print(f"✅ 找到 {len(apk_files)} 个 APK 文件")
62+
for apk in apk_files:
63+
print(f"📥 下载: {apk}")
64+
files.download(apk)
65+
else:
66+
print("❌ 未找到 APK,查看错误日志:")
67+
!tail -100 .buildozer/android/platform/build-arm64-v8a/build.log
68+
```
69+
70+
### 步骤 5:等待构建完成
71+
72+
- 首次构建:约 20-30 分钟
73+
- 后续构建:约 10-15 分钟
74+
75+
### 步骤 6:下载 APK
76+
77+
构建完成后,APK 会自动下载到你的电脑
78+
79+
---
80+
81+
## 📱 安装到手机
82+
83+
1. 将 APK 传输到 Android 手机
84+
2. 在手机上打开文件管理器
85+
3. 点击 APK 文件
86+
4. 允许"未知来源"安装
87+
5. 完成安装
88+
89+
---
90+
91+
## 🔧 自定义配置
92+
93+
### 修改应用名称
94+
95+
编辑 `buildozer.spec`
96+
97+
```ini
98+
title = 你的应用名称
99+
package.name = yourappname
100+
package.domain = com.yourname
101+
```
102+
103+
### 修改应用图标
104+
105+
1. 准备一个 `icon.png`(建议 512x512)
106+
2. 放在项目根目录
107+
3.`buildozer.spec` 中添加:
108+
109+
```ini
110+
icon.filename = icon.png
111+
```
112+
113+
### 添加权限
114+
115+
`buildozer.spec` 中:
116+
117+
```ini
118+
android.permissions = INTERNET,CAMERA,WRITE_EXTERNAL_STORAGE
119+
```
120+
121+
---
122+
123+
## ⚠️ 常见问题
124+
125+
### 问题 1:构建失败
126+
127+
**解决方案:**
128+
- 查看错误日志
129+
- 确保 `main.py` 没有语法错误
130+
- 检查 `buildozer.spec` 配置
131+
132+
### 问题 2:APK 无法下载
133+
134+
**解决方案:**
135+
运行查找脚本:
136+
137+
```python
138+
import glob
139+
apk_files = glob.glob('**/*.apk', recursive=True)
140+
print(apk_files)
141+
```
142+
143+
### 问题 3:APK 安装后闪退
144+
145+
**解决方案:**
146+
- 检查代码是否有错误
147+
- 确保所有依赖都在 `requirements`
148+
- 使用 `adb logcat` 查看日志
149+
150+
---
151+
152+
## 💡 提示
153+
154+
1. **保存 Colab 笔记本**:构建脚本可以保存在 Colab 中重复使用
155+
2. **使用 GitHub**:每次修改代码后推送到 GitHub,Colab 会拉取最新代码
156+
3. **构建缓存**:Colab 会缓存一些依赖,后续构建会更快
157+
4. **多个应用**:可以为不同应用创建不同的 GitHub 仓库
158+
159+
---
160+
161+
## 📚 完整项目结构
162+
163+
```
164+
python-calculator-android/
165+
├── main.py # 你的应用代码
166+
├── buildozer.spec # 构建配置
167+
├── requirements.txt # Python 依赖
168+
├── icon.png # 应用图标(可选)
169+
├── colab_build.py # Colab 构建脚本
170+
└── Colab快速构建流程.md # 本文档
171+
```
172+
173+
---
174+
175+
## 🎯 下次构建流程
176+
177+
1. 修改 `main.py`
178+
2. 提交到 GitHub:`git push`
179+
3. 打开 Colab
180+
4. 运行 `colab_build.py`
181+
5. 等待并下载 APK
182+
183+
就这么简单!

0 commit comments

Comments
 (0)