适用于 Python 脚本和应用程序的 Android APK 打包程序
项目描述
python-for-android
python-for-android 是 Android 上 Python 应用的打包工具。您可以创建自己的 Python 发行版,包括所需的模块和依赖项,并将其与您自己的代码一起捆绑在 APK 或 AAB 中。
特点包括:
- 不同的应用后端,包括 Kivy、PySDL2 和带有 Python 网络服务器的 WebView。
- 自动支持大多数纯 Python 模块,并内置支持许多其他模块,包括流行的依赖项,如 numpy 和 sqlalchemy。
- 多个架构目标,适用于在任何给定设备上优化的 APK。
- AAB:Android App Bundle 支持。
有关文档和支持,请参阅:
- 网站: http: //python-for-android.readthedocs.io
- 邮件列表:https ://groups.google.com/forum/#!forum/kivy-users或 https://groups.google.com/forum/#!forum/python-android。
文档
按照快速入门说明 安装并开始创建 APK 和 AAB。
快速说明:使用以下命令安装 python-for-android:
pip install python-for-android
(对于开发分支pip install git+https://github.com/kivy/python-for-android.git
:)
测试安装是否适用:
p4a --version
要构建任何实际应用,请 按照快速入门中的说明设置 Android SDK 和 NDK。 使用快速入门中的 SDK/NDK API 级别和 NDK 版本, 其他 API 级别可能无法使用。
安装好所有东西后,使用 SDL2 构建一个 APK,例如:
p4a apk --requirements=kivy --private /home/username/devel/planewave_frozen/ --package=net.inclem.planewavessdl2 --name="planewavessdl2" --version=0.5 --bootstrap=sdl2
如果您需要在 Google Play 上部署您的应用,自 2021 年 8 月 1 日起需要 Android App Bundle (aab):
有关完整说明和参数选项,请参阅文档。
支持
如果您需要帮助,可以通过我们的邮件列表寻求帮助:
我们还有#support Discord 频道。
贡献
我们喜欢拉请求和讨论新颖的想法。查看 Kivy 项目贡献指南并随时改进 python-for-android。
有关 python-for-android 开发和发布模型的更多信息,请参阅我们的文档 ,但不要担心细节。您只需要提出拉取请求,剩下的交给我们。
以下邮件列表和 IRC 频道专门用于讨论开发 Kivy 框架及其姊妹项目:
我们还有#dev Discord 频道。
执照
python-for-android 是根据 MIT 许可证的条款发布的。请参阅许可证文件。
历史
2015 年,这些工具被重写,以提供一个新的、更易于使用和更易于扩展的界面。如果你想浏览旧的工具链,它的状态记录在 https://github.com/kivy/python-for-android/tree/old_toolchain以供后代使用。
在 2018 年最后一个季度,python 配方发生了变化。python3 的新配方(3.7.1)有一个新的构建系统,它应用于古老的 python 配方,允许我们将 python2 版本号提升到 2.7.15。此更改统一了两个 python 配方的构建过程,并且可能解决了多年来检测到的各种问题。这些统一的 python 配方要求最低目标 api 级别为 21, Android 5.0-Lollipop。如果您需要构建目标 api 级别低于 21,您应该使用旧版本的 python-for-android (<=0.7.1)。
2020 年 3 月,我们不再支持创建使用 Python 2 的应用程序。支持构建 Python 2 的最新 python-for-android 版本是 2019.10.6 版。
2021 年 8 月,我们增加了对 Android App Bundle (aab) 的支持。作为抵押品,现在我们支持多架构 apk。
贡献者
这个项目的存在要感谢所有做出贡献的人。[贡献]。
支持者
感谢我们所有的支持者!