赞
踩
使用kivy开发一个小项目的时候,需要将代码打包成apk。有三个具体的方式可以实现打包apk的功能,具体详见kivy官方手册。在此仅针对使用Buildozer打包过程中出现的问题进行整理。
kivy官方手册中有说明,按照指引操作即可。需要注意安装依赖项(文档中有说明)。和文档中部分命令不一致。
git clone https://github.com/kivy/buildozer.git
cd buildozer
sudo python3 setup.py install
# dependencies
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
# pip3 install --user --upgrade Cython==0.29.19 virtualenv # the --user should be removed if you do this in a venv
sudo apt install cython -y
sudo pip3 install cython
# add the following line at the end of your ~/.bashrc file
export PATH=$PATH:~/.local/bin/
在代码所在的文件夹中打开终端,输入如下命令,在此文件夹中会自动生成一个名为“buildozer.spec”配置文件,目前无需更改其中的参数,后面有需求的修改时候再修改。
buildozer init
buildozer -v android debug
在此过程中出现过如下问题:
2.1、缺乏cython 、javac模块。解决方法:使用apt工具安装即可。(注意cython不是cpython)
2.2、安装过程中网络不好,需要更改系统源和pip源。解决方法:参考大佬博客
2.3、缺乏autoconf、automake、libtoolize模块。解决方法:使用apt工具安装。异常如下图所示:
2.4、出现过Cython已经安装,但是仍然提示找不到改模块的情况。解决办法:重装。
sudo apt remove cython
sudo pip3 uninstall cython
sudo apt install cython -y
sudo pip3 install cython
2.5、清除编译缓存,重新下载。
sudo rm .buildozer/* -vrf
sudo buildozer android clean
sudo buildozer -v android debug
2.6、使用ubuntu20的时候,出现过如下问题,无法解决,才更换到ubuntu18操作系统。
2.7、首次编译过程会执行很长时间,执行完成后,会在当前目录的“bin”文件夹下生成apk文件。
另一位大佬的博客,综合性很强,给本项目给予了很大的帮助,在此表示诚挚的感谢。
VMware + ubuntu18
ubuntu中自带了2.7和3.x两个不同版本的python,默认python表示2.7版本的,python3才表示3.x版本的,pip工具也是如此,pip3表示3.x版本的。使用python和pip命令时需要严格区分,否则会导致错误。
如果本博客有侵权的地方请联系作者删除。本文欢迎大家转载。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。