I have got information for SL4A first from https://github.com/kuri65536/python-for-android
- SL4A : sl4a-r6.1.1-arm-debug.apk
- PY4A : PythonForAndroid-debug.apk
There are installable APKs for sl4a - r6.1.1 version and python interpreter - r26 version. They are working basically on Android Nougat but some functions are not working or looks little unstable.
Good to me to see that Google is developing SL4A again.
So, I tried to install new sl4a 7.0 from Android Nougat version. I got source codes from https://android.googlesource.com/platform/external/sl4a/ and made sl4a.apk
Problem
sl4a 7.0 doesn't work with current PythonForAndroid interpreter - r26. When I execute SL4A on device, crash is happening.
Here is logcat
AndroidRuntime: FATAL EXCEPTION: pool-1-thread-1
AndroidRuntime: Process: com.googlecode.android_scripting, PID: 22750
AndroidRuntime: java.lang.RuntimeException: java.lang.RuntimeException: Binary /data/user/0/com.googlecode.pythonforandroid/files/python/bin/python does not exist!
AndroidRuntime: at com.googlecode.android_scripting.SingleThreadExecutor.afterExecute(SingleThreadExecutor.java:32)
AndroidRuntime: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1141)
AndroidRuntime: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
AndroidRuntime: at java.lang.Thread.run(Thread.java:761)
AndroidRuntime: Caused by: java.lang.RuntimeException: Binary /data/user/0/com.googlecode.pythonforandroid/files/python/bin/python does not exist!
AndroidRuntime: at com.googlecode.android_scripting.interpreter.Interpreter.setBinary(Interpreter.java:118)
AndroidRuntime: at com.googlecode.android_scripting.interpreter.Interpreter.buildFromMaps(Interpreter.java:73)
AndroidRuntime: at com.googlecode.android_scripting.interpreter.InterpreterConfiguration$InterpreterListener.buildInterpreter(InterpreterConfiguration.java:173)
AndroidRuntime: at com.googlecode.android_scripting.interpreter.InterpreterConfiguration$InterpreterListener.addInterpreter(InterpreterConfiguration.java:119)
AndroidRuntime: at com.googlecode.android_scripting.interpreter.InterpreterConfiguration$InterpreterListener.-wrap0(InterpreterConfiguration.java)
AndroidRuntime: at com.googlecode.android_scripting.interpreter.InterpreterConfiguration$InterpreterListener$2.run(InterpreterConfiguration.java:101)
AndroidRuntime: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
Actually, python is located in exact directory. This problem looks like permission issue. Anyone help me to solve this issue ?