admin 管理员组

文章数量: 887021

Kivy官方提供了打包工具buildozer,该工具使用十分简便,其内部实际上是使用python-to-android完成的。

但是这个工具目前只能在Linux系统上使用,因此对于windows用户,需要先安装一个虚拟机。

安装Buildozer及其依赖项

以Ubuntu系统为例,首先安装pip:

sudo apt install python3-pip

接着使用pip安装buildozer

pip3 install buildozer

然后安装buildozer的依赖项:

sudo apt update
sudo apt install -y git zip unzip openjdk-8-jdk python3-pip autoconf libtool pkg-config zlib1g-dev libncurses5-dev libncursesw5-dev libtinfo5 cmake libffi-dev libssl-dev lld
pip3 install Cython
pip3 install virtualenv

然后在~/.bashrc文件中加入环境变量,使用vim打开配置文件:

sudo vim ~/.bashrc

将光标移至文件末尾,按i进入编辑(插入)模式。另起一行,将下面代码添加在文件末尾:

export PATH=$PATH:~/.local/bin/

使用Buildozer

进入需要打包的py文件所在文件夹,执行命令:

buildozer init

这会在目录下生成一个名为buildozer.spec的文件,里面申明了这个程序的一些配置信息。其中第一项和第二项分别指程序名称和安装包的名称,主要修改这两项即可。

注意:第一项程序名称是在手机上安装后显示在桌面图标下方的名字,这一项中可以有空格;第二项安装包名称是生成的apk的名称,这一项的值不可以有空格和其他特殊符号,包括连字符“-”。(有特殊符号的时候打包莫名失败,说多了都是泪啊!)

修改完成后,使用以下命令开始打包:

buildozer -v android debug

注意:

  1. buildozer会将目录内所有指定了后缀名(在.spec文件中指定)的文件都打包进去,并且main.py作为程序入口
  2. 第一次打包的过程速度比较慢,因为要下载Android SDK等工具,往后的打包不会像第一次这么慢
  3. Android SDK的大小大于5G,请确保磁盘空间足够

打包完成后,在bin文件夹中会生成打包完成的apk文件。可以使用QQ邮箱的文件中转站将其传输到手机中使用。

参考文章:使用 Python + Kivy 编写和打包安卓APP

本文标签: 成安 python Kivy App