给android手机上配置python运行环境

android手机是一台完整的linux计算机,由于使用arm的架构,因此理论上所有支持arm的程序都可以运行在android手机上面,某人最近一直在学习python,因此突发奇想,把python装到安卓手机上面,偶尔写个脚本,在命令行里面运行一下,岂不快哉?

上网查了一下网上很早就有一个项目,是让安卓手机支持各类脚本语言,也就是SL4A (Scripting Layer For Android). 这个项目的特色是让在android UI上面运行脚本程序。比如用python写一个带界面的android程序,然后在手机上写好,在手机上运行。怎么样是不是很酷呢。SL4A在这里http://groups.google.com/group/android-scripting

SL4A只需要安装上,然后安装对应的语言版本就可以了。但这不是我的需求,我的需求是在手机的命令行里面运行python程序,在这方面网上却很少有资料。

其实SL4A里面有个python的项目,我们只需要安装python-for-android,然后把里面的python运行环境拷贝到系统空间再配置一下即可。

第一步:下载并安装python-for-android:http://code.google.com/p/python-for-android
里面有很多android版的python,我安装的是2.6 
第二步:在手机上安装下载的python-for-android apk,安装完成后运行程序,这个程序会从网上自动下载python的运行环境和所需的文件
第三步:从那个应用程序自己下载的数据目录中把python拷贝出来。
这步的过程比较多,而且需要root权限,有几个步骤,

1 重新挂载/system分区。使其可读写

1 # mount -o rw,remount -t rootfs /system

2 py4android会把python的主程序下载到它的运行数据目录下面。而把python的标准库下载到sd卡下面。我们需要手动把这两个东东放在一起。

1 #cp /data/data/com/googlecode/python-for-android/files/python/   /system/
2 #cp /sdcard/com.googlecode.python-for-android/extras/python/* /system/python/lib/

3 配置shell下面运行python的路径
打开/etc/profile 并且加入下面的配置路径

1 export PYTHONHOME="/system/python"
2 export PYTHONPATH=.:$PYTHONHOME:$PYTHONHOME/libs:$PYTHONHOME/lib:$PYTHONHOME/libs/site-packages:$PYTHONHOME/lib/python2.6/lib-dynload
3 export PATH=$PYTHONHOME:$PYTHONPATH:$PATH
4 export LD_LIBRARY_PATH=.:$PYTHONHOME/lib:$LD_LIBRARY_PATH

4 别忘了把动态连接库链接到lib下面

1 ln -s  /system/python/lib/libpython2.6.so /system/lib/libpython2.6.so
2  ln -s /system/python/lib/libffi.so  /system/lib/libffi.so

至此,在命令行中输入python -v 就能在命令行中使用python了。

来源:http://tweetyf.org/2012/09/android_use_python_runtime.html

你可能感兴趣的:(给android手机上配置python运行环境)