在Android上,使用QPython,当运行Kivy示例代码或尝试交互式输入时,导入kivy会导致此错误:
uu0_a96@RCT6203W46:/ $ /data/data/com.hipipal.qpyplus/files/bin/qpython.sh && exit
Python 2.7.2 (default, Oct 25 2014, 20:52:15)
[GCC 4.9 20140827 (prerelease)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import kivy
[INFO ] Kivy v1.8.0
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/QPython/core/build/python-install/lib/python2.7/site-packages/kivy/__init__.py", line 254, in <module>
File "/QPython/core/build/python-install/lib/python2.7/UserDict.py", line 23, in __getitem__
KeyError: 'ANDROID_APP_PATH'
我尝试将密钥添加到os.environ
,其中包含带有kivy调用的.py文件的目录的路径,导入工作正常。
答案 0 :(得分:1)
正如我之前所说: 你需要在第一行有#qpy:kivy部分。至少那是发生在我身上的事。我想这是因为QPython正在寻找什么类型的应用程序。
答案 1 :(得分:1)
我在Android上遇到了与QPython同样的问题。在我的Python代码文件(main.py)的顶部添加以下三行后,Kivy开始被正确调用。
#-*-coding:utf8;-*-
#qpy:2
#qpy:kivy
我在QPython中启动了一个新的Kivy项目,发现它将它们添加到main.py文件的开头。