Для установки Py4a я в итоге изменил android/PythonForAndroid/src/com/googlecode/pythonforandroid/PythonDescriptor.java
, изменив BASE_URL
там на file:///
URL. Затем я смог adb push
python_*.zip
файлы в этот каталог и установить оттуда.
Ключ обращал внимание на сообщения об ошибках logcat
. Поскольку у меня не было файлов версий, код всегда запрашивал _r1.zip
.
Примените следующий патч, а затем просто следуйте инструкциям в файле README
Py4A для сборки 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
.