Closed Cinorid closed 2 years ago
Also, what specific API levels are you wanting support for? Just "lower than 27" is a pretty wide target ;)
@markqvist Thank you for your reply. for example Huawei Y7 Prime running android 7.0 with CPU architecture armeabi-v7a, so this device cannot run this app. There are still plenty of mobile phones running Android 5, 6, and 7. https://gs.statcounter.com/android-version-market-share/all/iran
Thanks @Cinorid, got you.
Here is a debug build for you targeted at Min API level 24 and armeabi-v7a. Can you please try it out? Unfortunately I don't even own any Android devices with a 32-bit SoC, so I have not even tried installing it myself. Don't know if it will even work, but please give it a try and let me know how it works!
@markqvist sure. I'm Testing :)
@markqvist Unfortunately it stuck in loading screen
Can you give me output of adb logcat | grep "python\|sidebandservice"
when starting the app?
Can you give me output of
adb logcat | grep "python\|sidebandservice"
when starting the app?
10-19 15:38:02.097 5693 5762 I python : Initializing Python for Android
10-19 15:38:02.097 5693 5762 I python : Setting additional env vars from p4a_env_vars.txt
10-19 15:38:02.098 5693 5762 I python : Changing directory to the one provided by ANDROID_ARGUMENT
10-19 15:38:02.098 5693 5762 I python : /data/user/0/io.unsigned.sideband/files/app
10-19 15:38:02.102 5693 5762 I python : Preparing to initialize python
10-19 15:38:02.102 5693 5762 I python : _python_bundle dir exists
10-19 15:38:02.103 5693 5762 I python : calculated paths to be...
10-19 15:38:02.103 5693 5762 I python : /data/user/0/io.unsigned.sideband/files/app/_python_bundle/stdlib.zip:/data/user/0/io.unsigned.sideband/files/app/_python_bundle/modules
10-19 15:38:02.121 5693 5762 I python : set wchar paths...
10-19 15:38:02.302 5693 5762 I python : Initialized python
10-19 15:38:02.302 5693 5762 I python : AND: Init threads
10-19 15:38:02.304 5693 5762 I python : testing python print redirection
10-19 15:38:02.306 5693 5762 I python : Android path ['.', '/data/user/0/io.unsigned.sideband/files/app/_python_bundle/stdlib.zip', '/data/user/0/io.unsigned.sideband/files/app/_python_bundle/modules', '/data/user/0/io.unsigned.sideband/files/app/_python_bundle/site-packages']
10-19 15:38:02.307 5693 5762 I python : os.environ is environ({'PATH': '/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin:/system/vendor/bin:/vendor/xbin:/system/vendor/xbin:/product/bin:/product/xbin', 'ANDROID_BOOTLOGO': '1', 'ANDROID_ROOT': '/system', 'ANDROID_ASSETS': '/system/app', 'ANDROID_DATA': '/data', 'ANDROID_STORAGE': '/storage', 'EXTERNAL_STORAGE': '/sdcard', 'ASEC_MOUNTPOINT': '/mnt/asec', 'BOOTCLASSPATH': '/system/framework/core-oj.jar:/system/framework/core-libart.jar:/system/framework/conscrypt.jar:/system/framework/okhttp.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/voip-common.jar:/system/framework/ims-common.jar:/system/framework/apache-xml.jar:/system/framework/org.apache.http.legacy.boot.jar:/system/framework/hwEmui.jar:/system/framework/hwTelephony-common.jar:/system/framework/hwframework.jar:/system/framework/org.simalliance.openmobileapi.jar:/system/framework/org.ifaa.android.manager.jar:/system/framework/hwaps.jar:/system/framework/hwcustEmui.jar:/system/framework/hwcustTelephony-common.jar:/system/framework/hwcustframework.jar:/system/framework/servicehost.jar', 'SYSTEMSERVERCLASSPATH': '/system/framework/services.jar:/system/framework/ethernet-service.jar:/system/framework/wifi-service.jar:/system/framework/hwServices.jar:/system/framework/hwWifi-service.jar:/system/framework/hwcustServices.jar:/system/framework/hwcustwifi-service.jar', 'OEM_ROOT': '/hw_oem', 'CUST_POLICY_DIRS': '/system/emui/base:/system/emui/oversea:/system/emui/lite:/system/global:/vendor/etc:/product/etc:/hw_oem:/cust/hw/normal:/data/cust:/version/region_comm/oversea:/cust_spec', 'ANDROID_SOCKET_zygote': '14', 'ANDROID_ENTRYPOINT': 'main.pyc', 'ANDROID_ARGUMENT': '/data/user/0/io.unsigned.sideband/files/app', 'ANDROID_APP_PATH': '/data/user/0/io.unsigned.sideband/files/app', 'ANDROID_PRIVATE': '/data/user/0/io.unsigned.sideband/files', 'ANDROID_UNPACK': '/data/user/0/io.unsigned.sideband/files/app', 'PYTHONHOME': '/data/user/0/io.unsigned.sideband/files/app', 'PYTHONPATH': '/data/user/0/io.unsigned.sideband/files/app:/data/user/0/io.unsigned.sideband/files/app/lib', 'PYTHONOPTIMIZE': '2', 'P4A_BOOTSTRAP': 'SDL2', 'PYTHON_NAME': 'python', 'P4A_IS_WINDOWED': 'True', 'P4A_ORIENTATION': 'sensor', 'P4A_NUMERIC_VERSION': '20221018', 'P4A_MINSDK': '24', 'LC_CTYPE': 'C.UTF-8'})
10-19 15:38:02.307 5693 5762 I python : Android kivy bootstrap done. __name__ is __main__
10-19 15:38:02.307 5693 5762 I python : AND: Ran string
10-19 15:38:02.307 5693 5762 I python : Run user program, change dir and execute entrypoint
10-19 15:38:03.093 5693 5762 I python : [WARNING] [Config ] Older configuration version detected (0 instead of 24)
10-19 15:38:03.094 5693 5762 I python : [WARNING] [Config ] Upgrading configuration in progress.
10-19 15:38:03.102 5693 5762 I python : [INFO ] [Logger ] Record log in /data/user/0/io.unsigned.sideband/files/app/.kivy/logs/kivy_22-10-19_0.txt
10-19 15:38:03.103 5693 5762 I python : [INFO ] [Kivy ] v2.1.0
10-19 15:38:03.104 5693 5762 I python : [INFO ] [Kivy ] Installed at "/data/user/0/io.unsigned.sideband/files/app/_python_bundle/site-packages/kivy/__init__.pyc"
10-19 15:38:03.105 5693 5762 I python : [INFO ] [Python ] v3.9.5 (default, Oct 19 2022, 13:29:05)
10-19 15:38:03.105 5693 5762 I python : [Clang 12.0.8 (https://android.googlesource.com/toolchain/llvm-project c935d99d
10-19 15:38:03.106 5693 5762 I python : [INFO ] [Python ] Interpreter at ""
10-19 15:38:03.107 5693 5762 I python : [INFO ] [Logger ] Purge log fired. Processing...
10-19 15:38:03.108 5693 5762 I python : [INFO ] [Logger ] Purge finished!
10-19 15:38:03.113 5693 5762 I python : [INFO ] [KivyMD ] 1.1.0.dev0 (installed at "/data/data/io.unsigned.sideband/files/app/./kivymd/__init__.pyc")
10-19 15:38:03.124 5693 5762 I python : [INFO ] [Factory ] 189 symbols loaded
10-19 15:38:05.071 5693 5762 I python : [DEBUG ] [Cache ] register <kv.resourcefind> with limit=None, timeout=60
10-19 15:38:05.105 5693 5762 I python : [DEBUG ] [Cache ] register <kv.image> with limit=None, timeout=60
10-19 15:38:05.106 5693 5762 I python : [DEBUG ] [Cache ] register <kv.atlas> with limit=None, timeout=None
10-19 15:38:05.145 5693 5762 I python : [INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_pil (img_ffpyplayer ignored)
10-19 15:38:05.148 5693 5762 I python : [DEBUG ] [Cache ] register <kv.texture> with limit=1000, timeout=60
10-19 15:38:05.148 5693 5762 I python : [DEBUG ] [Cache ] register <kv.shader> with limit=1000, timeout=3600
10-19 15:38:05.196 5693 5762 I python : [INFO ] [Text ] Provider: sdl2
10-19 15:38:05.215 5693 5762 I python : [DEBUG ] [Cache ] register <kv.lang> with limit=None, timeout=None
10-19 15:38:05.974 5693 5762 I python : [INFO ] [Window ] Provider: sdl2
10-19 15:38:06.013 5693 5762 I python : [INFO ] [GL ] Using the "OpenGL ES 2" graphics system
10-19 15:38:06.015 5693 5762 I python : [INFO ] [GL ] Backend used <sdl2>
10-19 15:38:06.015 5693 5762 I python : [INFO ] [GL ] OpenGL version <b'OpenGL ES 3.2 V@145.0 (GIT@Ib1167d03fb)'>
10-19 15:38:06.016 5693 5762 I python : [INFO ] [GL ] OpenGL vendor <b'Qualcomm'>
10-19 15:38:06.017 5693 5762 I python : [INFO ] [GL ] OpenGL renderer <b'Adreno (TM) 505'>
10-19 15:38:06.018 5693 5762 I python : [INFO ] [GL ] OpenGL parsed version: 3, 2
10-19 15:38:06.019 5693 5762 I python : [INFO ] [GL ] Texture max size <16384>
10-19 15:38:06.020 5693 5762 I python : [INFO ] [GL ] Texture max units <16>
10-19 15:38:06.071 5693 5762 I python : [DEBUG ] [Shader ] Fragment compiled successfully
10-19 15:38:06.078 5693 5762 I python : [DEBUG ] [Shader ] Vertex compiled successfully
10-19 15:38:06.096 5693 5762 I python : [DEBUG ] [ImageSDL2 ] Load </data/user/0/io.unsigned.sideband/files/app/_python_bundle/site-packages/kivy/data/glsl/default.png>
10-19 15:38:06.104 5693 5762 I python : [INFO ] [Window ] auto add sdl2 input provider
10-19 15:38:06.108 5693 5762 I python : [INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
10-19 15:38:06.522 5693 5762 I python : [INFO ] [Clipboard ] Provider: android
10-19 15:38:06.944 5693 5762 I python : [2022-10-19 15:38:06] [Notice] Creating new Sideband configuration...
10-19 15:38:07.651 5693 5762 I python : [2022-10-19 15:38:07] [Notice] Configuring Reticulum instance...
10-19 15:38:07.651 5693 5762 I python : [2022-10-19 15:38:07] [Notice] Not enabling Reticulum Transport
10-19 15:38:07.656 5693 5762 I python : [DEBUG ] [App ] Loading kv <./sideband.kv>
10-19 15:38:07.658 5693 5762 I python : [DEBUG ] [App ] kv <./sideband.kv> not found
10-19 15:38:08.680 5693 5762 I python : [DEBUG ] [Resource ] add </system/fonts> in path list
10-19 15:38:08.681 5693 5762 I python : [DEBUG ] [Resource ] add </data/user/0/io.unsigned.sideband/files/app/_python_bundle/site-packages/kivy/data/fonts> in path list
10-19 15:38:08.957 5693 5762 I python : [DEBUG ] [Cache ] register <textinput.label> with limit=None, timeout=60.0
10-19 15:38:08.958 5693 5762 I python : [DEBUG ] [Cache ] register <textinput.width> with limit=None, timeout=60.0
10-19 15:38:09.062 5693 5762 I python : [DEBUG ] [Atlas ] Load </data/user/0/io.unsigned.sideband/files/app/_python_bundle/site-packages/kivy/data/images/defaulttheme.atlas>
10-19 15:38:09.068 5693 5762 I python : [DEBUG ] [Atlas ] Need to load 1 images
10-19 15:38:09.069 5693 5762 I python : [DEBUG ] [Atlas ] Load </data/user/0/io.unsigned.sideband/files/app/_python_bundle/site-packages/kivy/data/images/defaulttheme-0.png>
10-19 15:38:09.071 5693 5762 I python : [DEBUG ] [ImageSDL2 ] Load </data/user/0/io.unsigned.sideband/files/app/_python_bundle/site-packages/kivy/data/images/defaulttheme-0.png>
10-19 15:38:19.155 5693 5762 I python : [DEBUG ] [Base ] Create provider from android
10-19 15:38:19.156 5693 5762 I python : [WARNING] [Base ] Unknown <android> provider
10-19 15:38:19.157 5693 5762 I python : [INFO ] [Base ] Start application main loop
10-19 15:38:19.191 5693 5762 I python : [INFO ] [GL ] NPOT texture support is available
10-19 15:38:23.590 5693 5762 I python : [2022-10-19 15:38:23] [Notice] Launching platform-specific service for RNS and LXMF
10-19 15:38:24.281 5988 6004 I python : Initializing Python for Android
10-19 15:38:24.281 5988 6004 I python : Setting additional env vars from p4a_env_vars.txt
10-19 15:38:24.281 5988 6004 I python : Changing directory to the one provided by ANDROID_ARGUMENT
10-19 15:38:24.282 5988 6004 I python : /data/user/0/io.unsigned.sideband/files/app
10-19 15:38:24.282 5988 6004 I python : Preparing to initialize python
10-19 15:38:24.282 5988 6004 I python : _python_bundle dir exists
10-19 15:38:24.282 5988 6004 I python : calculated paths to be...
10-19 15:38:24.282 5988 6004 I python : /data/user/0/io.unsigned.sideband/files/app/_python_bundle/stdlib.zip:/data/user/0/io.unsigned.sideband/files/app/_python_bundle/modules
10-19 15:38:24.282 5988 6004 I python : set wchar paths...
10-19 15:38:24.408 5988 6004 I python : Initialized python
10-19 15:38:24.409 5988 6004 I python : AND: Init threads
10-19 15:38:24.410 5988 6004 I sidebandservice: testing python print redirection
10-19 15:38:24.412 5988 6004 I sidebandservice: Android path ['.', '/data/user/0/io.unsigned.sideband/files/app/_python_bundle/stdlib.zip', '/data/user/0/io.unsigned.sideband/files/app/_python_bundle/modules', '/data/user/0/io.unsigned.sideband/files/app/_python_bundle/site-packages']
10-19 15:38:24.413 5988 6004 I sidebandservice: os.environ is environ({'PATH': '/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin:/system/vendor/bin:/vendor/xbin:/system/vendor/xbin:/product/bin:/product/xbin', 'ANDROID_BOOTLOGO': '1', 'ANDROID_ROOT': '/system', 'ANDROID_ASSETS': '/system/app', 'ANDROID_DATA': '/data', 'ANDROID_STORAGE': '/storage', 'EXTERNAL_STORAGE': '/sdcard', 'ASEC_MOUNTPOINT': '/mnt/asec', 'BOOTCLASSPATH': '/system/framework/core-oj.jar:/system/framework/core-libart.jar:/system/framework/conscrypt.jar:/system/framework/okhttp.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/voip-common.jar:/system/framework/ims-common.jar:/system/framework/apache-xml.jar:/system/framework/org.apache.http.legacy.boot.jar:/system/framework/hwEmui.jar:/system/framework/hwTelephony-common.jar:/system/framework/hwframework.jar:/system/framework/org.simalliance.openmobileapi.jar:/system/framework/org.ifaa.android.manager.jar:/system/framework/hwaps.jar:/system/framework/hwcustEmui.jar:/system/framework/hwcustTelephony-common.jar:/system/framework/hwcustframework.jar:/system/framework/servicehost.jar', 'SYSTEMSERVERCLASSPATH': '/system/framework/services.jar:/system/framework/ethernet-service.jar:/system/framework/wifi-service.jar:/system/framework/hwServices.jar:/system/framework/hwWifi-service.jar:/system/framework/hwcustServices.jar:/system/framework/hwcustwifi-service.jar', 'OEM_ROOT': '/hw_oem', 'CUST_POLICY_DIRS': '/system/emui/base:/system/emui/oversea:/system/emui/lite:/system/global:/vendor/etc:/product/etc:/hw_oem:/cust/hw/normal:/data/cust:/version/region_comm/oversea:/cust_spec', 'ANDROID_SOCKET_zygote': '14', 'ANDROID_PRIVATE': '/data/user/0/io.unsigned.sideband/files', 'ANDROID_ARGUMENT': '/data/user/0/io.unsigned.sideband/files/app', 'ANDROID_APP_PATH': '/data/user/0/io.unsigned.sideband/files/app', 'ANDROID_ENTRYPOINT': 'services/sidebandservice.py', 'PYTHONOPTIMIZE': '2', 'PYTHON_NAME': 'sidebandservice', 'PYTHONHOME': '/data/user/0/io.unsigned.sideband/files/app', 'PYTHONPATH': '/data/user/0/io.unsigned.sideband/files/app:/data/user/0/io.unsigned.sideband/files/app/lib', 'PYTHON_SERVICE_ARGUMENT': '/data/user/0', 'P4A_BOOTSTRAP': 'SDL2', 'ANDROID_UNPACK': '/data/user/0/io.unsigned.sideband/files/app', 'P4A_IS_WINDOWED': 'True', 'P4A_ORIENTATION': 'sensor', 'P4A_NUMERIC_VERSION': '20221018', 'P4A_MINSDK': '24', 'LC_CTYPE': 'C.UTF-8'})
10-19 15:38:24.413 5988 6004 I sidebandservice: Android kivy bootstrap done. __name__ is __main__
10-19 15:38:24.413 5988 6004 I python : AND: Ran string
10-19 15:38:24.413 5988 6004 I python : Run user program, change dir and execute entrypoint
10-19 15:38:25.178 5988 6004 I sidebandservice: [INFO ] [Logger ] Record log in /data/user/0/io.unsigned.sideband/files/app/.kivy/logs/kivy_22-10-19_1.txt
10-19 15:38:25.179 5988 6004 I sidebandservice: [INFO ] [Kivy ] v2.1.0
10-19 15:38:25.179 5988 6004 I sidebandservice: [INFO ] [Kivy ] Installed at "/data/user/0/io.unsigned.sideband/files/app/_python_bundle/site-packages/kivy/__init__.pyc"
10-19 15:38:25.180 5988 6004 I sidebandservice: [INFO ] [Python ] v3.9.5 (default, Oct 19 2022, 13:29:05)
10-19 15:38:25.180 5988 6004 I sidebandservice: [Clang 12.0.8 (https://android.googlesource.com/toolchain/llvm-project c935d99d
10-19 15:38:25.181 5988 6004 I sidebandservice: [INFO ] [Python ] Interpreter at ""
10-19 15:38:25.182 5988 6004 I sidebandservice: [INFO ] [Logger ] Purge log fired. Processing...
10-19 15:38:25.183 5988 6004 I sidebandservice: [INFO ] [Logger ] Purge finished!
10-19 15:38:26.966 5988 6004 I sidebandservice: Traceback (most recent call last):
10-19 15:38:26.967 5988 6004 I sidebandservice: File "/home/markqvist/Information/Source/Sideband.32bit/sbapp/.buildozer/android/app/services/sidebandservice.py", line 26, in <module>
10-19 15:38:26.968 5988 6004 I sidebandservice: File "/home/markqvist/Information/Source/Sideband.32bit/sbapp/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/sideband/armeabi-v7a/jnius/reflect.py", line 211, in autoclass
10-19 15:38:26.969 5988 6004 I sidebandservice: File "jnius/jnius_export_func.pxi", line 26, in jnius.jnius.find_javaclass
10-19 15:38:26.969 5988 6004 I sidebandservice: File "jnius/jnius_utils.pxi", line 91, in jnius.jnius.check_exception
10-19 15:38:26.970 5988 6004 I sidebandservice: jnius.jnius.JavaException: JVM exception occurred: Didn't find class "android.app.NotificationChannel" on path: DexPathList[[zip file "/data/app/io.unsigned.sideband-1/base.apk"],nativeLibraryDirectories=[/data/app/io.unsigned.sideband-1/lib/arm, /data/app/io.unsigned.sideband-1/base.apk!/lib/armeabi-v7a, /system/lib, /vendor/lib, /system/vendor/lib, /product/lib]] java.lang.ClassNotFoundException
10-19 15:38:26.971 5988 6004 I python : Python for android ended.
Thanks, that makes sense. Give me a sec and let me see if I can do something.
Notifications API changed on API level 26 (Android 8.0). For now I just disabled notifications code. Can you try with this one: sideband-0.2.5-armeabi-v7a-no_notifications.zip
@markqvist It's working now. thank you very much ❤
Awesome. Please test it out and let me know if you find anything else. If it is actually more or less workable all-round, I could integrate the necessary changes into the primary codebase and set up build steps for supplying armeabi-v7a
binaries with the normal releases.
Hi @Cinorid
Please take a look at this: https://github.com/markqvist/Reticulum/discussions/123
I updated the armeabi-v7a
build to the latest 0.2.5
version and created a universal APK that is easier to share (works both on 32 and 64 bit).
Hi @Cinorid
Could you provide some more detail or context to this request?
I am interested to hear what kind of devices you want to run Sideband on, that needs API level 27 and the v7a ABI? Ie., why is supporting those platforms important to you?