
Buildozer是由Kivy团队管理的开发工具,用于将Python应用转换为适用于多个平台(包括移动设备)的二进制安装包。开发者通过单个buildozer.spec文件描述应用需求和设置(如标题、图标等),Buildozer即可生成Android、iOS、Windows、macOS和/或Linux的安装包。
该工具依赖其姊妹项目https://github.com/kivy/python-for-android/%E5%92%8Chttps://github.com/kivy/kivy-ios/%EF%BC%8C%E7%89%B9%E5%88%AB%E4%BC%98%E5%8C%96%E4%BA%86https://github.com/kivy/kivy%E5%BA%94%E7%94%A8%E7%9A%84%E6%9E%84%E5%BB%BA%E6%B5%81%E7%A8%8B%EF%BC%8C%E4%BD%86%E4%B9%9F%E5%8F%AF%E7%8B%AC%E7%AB%8B%E7%94%A8%E4%BA%8E%E5%85%B6%E4%BB%96GUI%E6%A1%86%E6%9E%B6%E3%80%82%E5%AF%B9%E4%BA%8EAndroid%E5%B9%B3%E5%8F%B0%EF%BC%8CBuildozer%E4%BC%9A%E8%87%AA%E5%8A%A8%E4%B8%8B%E8%BD%BD%E5%B9%B6%E5%87%86%E5%A4%87%E6%9E%84%E5%BB%BA%E4%BE%9D%E8%B5%96%EF%BC%88%E5%A6%82SDK%E5%92%8CNDK%EF%BC%89%E3%80%82
注意:此工具与在线构建服务
buildozer.io无关。
buildozer.spec文件定义应用需求和设置常规构建
bashdocker build --tag=kivy/buildozer .
macOS平台构建(需指定架构)
bashdocker buildx build --platform=linux/amd64 --tag=kivy/buildozer .
基本运行(查看版本)
bashdocker run --interactive --tty --rm \ --volume "$PWD":/home/user/hostcwd \ kivy/buildozer --version
带缓存的构建示例
保留下载的SDK和NDK到本地~/.buildozer目录,加速后续构建:
bashdocker run --interactive --tty --rm \ --volume "$HOME/.buildozer":/home/user/.buildozer \ --volume "$PWD":/home/user/hostcwd \ kivy/buildozer android debug
镜像已发布至Docker Hub和GitHub Container Registry,可直接拉取:
bash# 从Docker Hub拉取 docker pull kivy/buildozer:latest # 从GitHub Container Registry拉取 docker pull ghcr.io/kivy/buildozer:latest
查看帮助
bashdocker run --interactive --tty --rm \ --volume "$PWD":/home/user/hostcwd \ kivy/buildozer help
初始化配置文件
在当前目录生成buildozer.spec配置文件:
bashdocker run --interactive --tty --rm \ --volume "$PWD":/home/user/hostcwd \ kivy/buildozer init
构建Android调试包
bashdocker run --interactive --tty --rm \ --volume "$HOME/.buildozer":/home/user/.buildozer \ --volume "$PWD":/home/user/hostcwd \ kivy/buildozer android debug
清理构建环境
bashdocker run --interactive --tty --rm \ --volume "$PWD":/home/user/hostcwd \ kivy/buildozer distclean
buildozer.spec配置文件
通过buildozer init生成的配置文件包含应用基本信息(标题、包名等)和构建设置。需根据项目需求编辑该文件,配置项包括:
title(应用标题)、package.name(包名)、version(版本号)requirements(Python依赖)、android.permissions(Android权限)android.sdk(SDK版本)、ios.codesign.allowed(iOS签名设置)环境变量覆盖配置
可通过环境变量覆盖buildozer.spec中的配置项,格式为$SECTION_TOKEN(将配置项中的点替换为下划线):
title → $APP_TITLEpackage.name → $APP_PACKAGE_NAMEp4a.source_dir → $APP_P4A_SOURCE_DIRBuildozer采用MIT许可证,由Kivy社区积极开发维护。
完整文档请访问:[***]
遇到使用问题可通过Kivy社区支持渠道获取帮助,详情参见https://github.com/kivy/buildozer/blob/master/CONTACT.md%E6%96%87%E6%A1%A3%E3%80%82
可使用https://github.com/ArtemSBulgakov/buildozer-action%E5%AE%9E%E7%8E%B0CI/CD%E8%87%AA%E5%8A%A8%E5%8C%96%E6%9E%84%E5%BB%BA%EF%BC%8C%E8%AF%A6%E8%A7%81https://github.com/ArtemSBulgakov/buildozer-action#full-workflow%E3%80%82
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务