我正在尝试使用buildozer创建一个Android应用程序,需要使用OpenCV,因此需要使用python 3(由于OpenCV只与python 3+兼容)。但是,当我通过buildozer -v android_new debug
或buildozer android_new release
或buildozer android_new debug deploy run logcat
时,它返回相同的错误:
Command failed: python -m pythonforandroid.toolchain --color=always --storage-dir=/home/kivy/KivyApp/.buildozer/android/platform/build create --dist_name=myapp21 --bootstrap=sdl2 --requirements=kivy,opencv,python3 --arch armeabi-v7a --copy-libs
错误消息(/home/kivy/KivyApp/.buildozer/android/platform/build
)中提到的目录是空的,我相信这不起作用的原因是buildozer虚拟机上的python版本是Python 2.7.13,并且当buildozer.spec中的要求时文件是kivy,opencv和python3,它试图pip安装它们导致最后2的错误。
Buildozer.spec文件:https://docs.google.com/document/d/1UAHekPUatAOrdIU_zFRwoPWgQKd-d0L3QsRXOr2Lo4Q/edit?usp=sharing
所以,一般来说,我想在尝试在buildozer虚拟机上安装新版本的python之前完全理解这个问题。如果我的假设不正确,请纠正我,如果可能的话,请指导我正确答案。
谢谢!
这不奇怪。 Python3和android以及Kivy仍处于实验状态。 https://kivy.org/doc/stable/guide/packaging-android.html
最好等待或使用Python2.7