这个项目能做什么

python-for-android (p4a) 是一个由 Kivy 团队维护的开源开发工具,旨在将 Python 应用程序打包为 Android 原生二进制文件。其工作原理是为 Android 设备交叉编译 Python 解释器及其依赖项,然后将它们与应用程序的 Python 代码捆绑在一起,以便代码在设备本身上被解释执行。 该工具可以生成三种类型的 Android 构件:用于本地安装和测试的 APK 文件(许多应用商店使用,但 Google Play 不使用)、用于在 Google Play 商店分发的 AAB(Android App Bundle)文件,以及作为其他项目可重用资源包的 AAR(Android Archive)文件。它支持多种 CPU 架构。 虽然 p4a 与 Kivy 框架紧密相关,但通过其“bootstraps”系统,它在后端库方面设计得非常灵活。它还支持 PySDL2、PySDL3 以及带有 Python Web 服务器的 WebView 后端。对于纯 Python 包,依赖项会自动处理。对于具有 C 代码依赖项的包,必须编写特殊的“recipe”以支持交叉编译;p4a 内置了许多流行库(如 numpy 和 sqlalchemy)的 recipe。 该项目建议通过 Buildozer 使用 p4a,以确保预安装正确的依赖项并集中配置,尽管 p4a 也可以独立使用。它在 PyPI 上可用,并提供全面的在线文档,包括快速入门指南。该项目处于积极维护状态,拥有用于单元测试、应用构建和 Docker 镜像生成的 CI/CD 工作流,并遵循 Contributor Covenant 行为准则。