如何在adb shell上运行QPython

时间:2014-12-18 15:00:05

标签: android shell adb qpython

我在我的(root)手机上安装了QPython。但是,我遇到麻烦,在adb shell(busybox)上运行python二进制文件。

设置后我可以运行python二进制文件:

export LD_LIBRARY_PATH=/vendor/lib:/system/lib:/data/data/com.hipipal.qpyplus/files

但是,即使设置$ PYTHONPATH

,我也无法从标准库中导入任何模块
export PYTHONPATH=/data/data/com.hipipal.qpyplus/files/lib/python2.7/site-packages

我发现了一条建议如何在社区wiki(http://wiki.qpython.org/hacker/#how-to-execute-qpythons-python-in-other-terminals)的不同终端上运行QPython,并且我转储了enviromnent并将其加载到adb shell中,加载的python仍然无法加载任何库来自标准库,如随机。

从QPython控制台加载标准库工作得很好。有什么指针吗?

2 个答案:

答案 0 :(得分:2)

我按照提供的链接http://wiki.qpython.org/hacker/#how-to-execute-qpythons-python-in-other-terminals运行python,在脚本中添加export前的所有行,然后以root身份运行" . /sdcard/qpyenv.sh" 。最后,我可以运行" python"和" import os"并且顶部的所有警告都消失了。

root@trelte:/ # . /sdcard/qpyenv.sh                                            
root@trelte:/ # python
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 os
>>>

答案 1 :(得分:0)

根据我的经验,您只需设置两个变量即可:

export PYTHONHOME=/data/data/org.qpython.qpy/files
export LD_LIBRARY_PATH=.:/data/data/org.qpython.qpy/files/lib/:/data/data/org.qpython.qpy/files/:/data/data/org.qpython.qpy/lib/

但您需要以root身份运行,以便可以访问/data/data/org.qpython.qpy/

中的内容