我对我目前工作中的perl/python/lua的android脚本真的很感兴趣,但是我的流量消耗也非常有限,我可能需要经常重复解释器安装过程重新刷新Android设备。那么有什么方法可以在没有互联网连接的情况下使用准备好的文件/档案在SL4A中安装解释器?如何在离线状态下安装SL4A的解释器
0
A
回答
0
,我发现直接的方法是安装在联机模式下的一切一次,然后压缩目录的内容:
/data/data/com.googlecode.{language}forandroid,
/sdcard/com.googlecode.{language}forandroid,
/sdcard/sl4a
并进行后续的安装使用下面的批处理脚本(Windows)中
set ADB_BIN="C:\Program Files (x86)\Android\android-sdk\platform-tools\adb.exe"
%ADB_BIN% install -r sl4a_r4.apk
%ADB_BIN% install -r PythonForAndroid_r4.apk
%ADB_BIN% install -r perl_for_android_r1.apk
%ADB_BIN% install -r lua_for_android_r1.apk
%ADB_BIN% push sd.tgz /sdcard/
%ADB_BIN% shell busybox tar -xzf /sdcard/sd.tgz -C /sdcard
%ADB_BIN% push data.tgz /sdcard/
%ADB_BIN% root
%ADB_BIN% remount
%ADB_BIN% shell busybox tar -xzf /sdcard/data.tgz -C /data/data
%ADB_BIN% shell rm /sdcard/sd.tgz
%ADB_BIN% shell rm /sdcard/data.tgz
0
为了安装Py4a,我最终修改了android/PythonForAndroid/src/com/googlecode/pythonforandroid/PythonDescriptor.java
,将BASE_URL
修改为file:///
的URL。然后,我可以将adb push
python_*.zip
文件放入该目录,然后从那里安装。
一个关键是关注logcat
错误消息。由于我没有版本文件,代码总是要求_r1.zip
。
应用以下补丁,然后只需按照Py4A的README
文件中的说明构建APK。
diff --git a/android/PythonForAndroid/src/com/googlecode/pythonforandroid/PythonDescriptor.java b/android/PythonForAndroid/src/com/googlecode/pythonforandroid/PythonDescriptor.java
index a891e98..89bb4f7 100644
--- a/android/PythonForAndroid/src/com/googlecode/pythonforandroid/PythonDescriptor.java
+++ b/android/PythonForAndroid/src/com/googlecode/pythonforandroid/PythonDescriptor.java
@@ -39,7 +39,7 @@ public class PythonDescriptor extends Sl4aHostedInterpreter {
public static final String ENV_EXTRAS = "PY4A_EXTRAS";
public static final String ENV_EGGS = "PYTHON_EGG_CACHE";
public static final String ENV_USERBASE = "PYTHONUSERBASE";
- public static final String BASE_URL = "http://python-for-android.googlecode.com/";
+ public static final String BASE_URL = "file:///data/data/tmp/";
private static final int LATEST_VERSION = -1;
private int cache_version = -1;
private int cache_extras_version = -1;
一旦你的.apk
,继续和安装的一切:
pushd android/PythonForAndroid
adb install -r bin/PythonForAndroid-debug.apk
popd
pushd python-build
adb shell mkdir -p /data/data/tmp/files
adb push python_r16.zip /data/data/tmp/files/python_r-1.zip
adb push python_extras_r14.zip /data/data/tmp/files/python_extras_r-1.zip
adb push python_scripts_r13.zip /data/data/tmp/files/python_scripts_r-1.zip
popd
的最后一步是启动Py4A,并捅Install
。
相关问题
- 1. 如何回拨在线/离线状态?
- 2. 如何离线安装jenkins?
- 3. 如何离线安装Subversive
- 4. SL4A Android x86安装
- 5. 如何将Python解释器重置为“安全”状态?
- 6. 在windows下离线安装rails
- 7. 如何从新网站安装sl4a
- 8. 如何在离线7上安装RabbitMQ?
- 9. 在Windows离线机器上安装npmbox
- 10. ADB状态离线
- 11. 如何在离线状态下使用HighChart?
- 12. 如何在离线状态下使用Google操场代码?
- 13. Maven:如何在离线模式下安装插件
- 14. 安装IJulia离线
- 15. PyDev离线安装
- 16. 如何从SL4A python解释器访问C函数
- 17. 如何在安静安装时报告msi安装状态
- 18. 在线c#解释器安全问题
- 19. 如何离线安装visual studio文档?
- 20. 如何安装android studio完全离线
- 21. 如何离线安装ruamel.yaml python库?
- 22. 离线3d 4.0的安装
- 23. 键盘不能用在samsung galaxy上的sl4a解释器上s5360
- 24. 如何在仿真的Android手机上安装SL4A
- 25. 如何在Android的脚本层(SL4A)上安装Perl模块?
- 26. 如何通过javascript在浏览器中查看在线/离线状态?
- 27. 如何在后台管理在线/离线/离开状态PUBNUB + IOS?
- 28. 离线安装CUTE插件
- 29. 离线安装Eclipse插件
- 30. 离线centos安装psutil