用于python脚本和应用程序的android apk打包程序

python-for-android的Python项目详细描述


Android版Python

Build StatusCoverage StatusBackers on Open CollectiveSponsors on Open Collective

python for android是一个用于android上python应用程序的打包工具。你可以 创建自己的python发行版,包括模块和 您需要的依赖项,并将其与您自己的代码一起打包到apk中。

功能包括:

  • 支持使用Python2和Python3构建。
  • 不同的应用程序后端,包括kivy、pysdl2和带有 python网络服务器。
  • 自动支持大多数纯python模块,并内置支持 对于许多其他人,包括流行的依赖项,如numpy和 炼金术。
  • 多个架构目标,针对任何给定的APK进行优化 装置。

有关文档和支持,请参见:

文档

按照quickstart instructions 安装并开始创建apk。

quick instructions:使用:

pip install python-for-android

(对于开发部门:pip install git+https://github.com/kivy/python-for-android.git

测试安装是否与以下组件一起工作:

p4a --version

要构建任何实际的应用程序,设置android sdk和ndkquickstart所述。 使用快速启动中的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

有关完整指令和参数选项,请参阅the documentation

支架

如果您需要帮助,可以在我们的邮件列表中寻求帮助:

我们还有#support Discord channel

贡献

我们喜欢拉请求和讨论新奇的想法。看看基维 项目contribution guide和 随时可以为Android改进Python。

our documentation 有关用于android开发的python和 发布模型,但不要担心细节。你只需要 提出请求,我们会处理其余的。

以下邮件列表和IRC频道仅用于 关于开发Kivy框架及其姊妹项目的讨论:

我们还有#dev Discord channel

许可证

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食谱,可能解决了 年。还应该提到的是,这个unified python食谱 要求目标为最低API级别21android 5.0-lollipop,因此如果您需要针对 API级别低于21,必须使用旧版本的Python for Android (<;=0.7.1)。所有这些工作都是使用android ndk版本r17c完成的, 您的构建应该在该版本中获得成功…但是请注意 项目正在不断开发中,因此…ndk版本将在 一些时间。

上面提到的那些改变是这样做的,以便于过渡 介于Python3和Python2之间。我们将慢慢淘汰python2支持 到2020年…所以…如果你在你的项目中使用python2,你应该 考虑把它移到Python3号。

贡献者

这项工程有赖于所有贡献的人。[Contribute]。

支持者

感谢我们所有的支持者![Become a backer]

赞助商

通过成为赞助商来支持这个项目。您的徽标将显示在这里,并带有指向您网站的链接。[Become a sponsor]

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
文件名的java正则表达式限制名称大小和文件扩展名   Mac上的java Android SDK:jspawnhelper意外退出   java SQL Server 2000到Oracle 12c重音字符   在Java中快速比较大数据集中的值和小数据集中的值   java在代码中的许多地方保留对对象的引用   Java规范中私有内部类的jvm访问标志与反射API不一致?   比较2个int数组中匹配的数字   java Apache Commons数学简化回归:get prediction stderr   安卓 Java SDK管理器因命令行输出中的“flashplayerplugin”而崩溃   JavaSQLite:关闭DB时必须关闭游标吗?   泛型Java设计抽象类声明示例说明   java应用程序在添加片段时崩溃   如何在java中使用注释为字段加载值