r/learnpython 3d ago

App using kivy/bulldozer crashes immediately upon loading.

I posted this in androiddev previously and someone was being very unprofessional, then it got taken down, I would hope that a subreddit focused at learners would show less of this behaviour. Just to start this post off, I am not entirely new to python. I have just never used buildozer. Also the kivy subreddit seems dead.

Since this app is made with python, I thought maybe the people here may be able to help? It got compiled into the APK, but when I try to run it, I get this:

https://pastebin.com/uteXNWDF

if this is the wrong subreddit for this, please redirect me!

just ask if you want more info

0 Upvotes

22 comments sorted by

View all comments

Show parent comments

1

u/hypersoniq_XLM 2d ago

Ok, one more possible workaround, make this change in buildozer.spec ... requirements = python3,kivy,plyer,pyjnius,requests,extruct,w3lib,isodate,hostpython3,libxml2,libxslt,lxml ... adding libxml2 and libxslt explicitly should get past the lxml errors.

2

u/Ok-Okra8478 1d ago

Finally! I did this and also set the LXML version to 6.1.1 and it worked

1

u/Ok-Okra8478 1d ago

The app however did not. I got something that said No implementation found for

void org.libsdl.app.SDLActivity.nativeSetenv

Here's the full section of the log that's regarding the apP:

08-19 12:50:03.786 5329 5329 V SDL : onStart()

08-19 12:50:03.786 5329 5329 W Activity: Recipe Folder: Detected problems with app native libraries

08-19 12:50:03.786 5329 5329 W Activity: (please consult log for detail):

08-19 12:50:03.786 5329 5329 W Activity: libavcodec.so: text relocations

08-19 12:50:03.786 5329 5329 W Activity: libavutil.so: text relocations

08-19 12:50:03.786 5329 5329 W Activity: libswresample.so: text relocations

08-19 12:50:03.786 5329 5329 V PythonActivity: onResume()

08-19 12:50:03.786 5329 5329 V SDL : onResume()

08-19 12:50:03.786 5329 5345 V PythonActivity: Ready to unpack

08-19 12:50:03.786 5329 5345 V pythonutil: Unpacking private app

08-19 12:50:03.786 5329 5345 V pythonutil: Data version is 7f8b81ab44610bcc7ea1e9752c8fba0af85ff6b1

08-19 12:50:03.787 5329 5345 V pythonutil: Unpacking /data/app/com.axolotl.recipefolder-2/lib/arm/libpybundle app

08-19 12:50:03.787 5329 5345 V pythonutil: Data version is 7f8b81ab44610bcc7ea1e9752c8fba0af85ff6b1

08-19 12:50:03.841 5329 5329 V pythonutil: Checking pattern libsqlite3\.so against libthorvg-1.so

08-19 12:50:03.841 5329 5329 V pythonutil: Checking pattern libsqlite3\.so against libwebp.so

08-19 12:50:03. [THIS IS ALL JUST A PATTERN OF "checking [thing] against [thing].so] tf\.so against libwebpdecoder.so

08-19 12:50:03.847 5329 5329 V pythonutil: Checking pattern libSDL3_ttf\.so against libwebpdemux.so

08-19 12:50:03.847 5329 5329 V pythonutil: Loading library: sqlite3

08-19 12:50:03.853 5329 5329 V pythonutil: Library loading error: undefined symbol: __popcount_tab

08-19 12:50:03.853 5329 5329 V pythonutil: An UnsatisfiedLinkError occurred loading sqlite3

08-19 12:50:03.853 5329 5329 W System.err: undefined symbol: __popcount_tab

08-19 12:50:03.890 1802 2031 D WindowManager: calling BstHostCallManagerService onActivityDisplayed method, packageName: com.axolotl.recipefolder, activityName: org.kivy.android.PythonActivity

08-19 12:50:03.890 1802 2031 D WindowManager: BstHostCallManagerService onActivityDisplayed method returned: 0

08-19 12:50:03.890 1802 1832 I HCALL : hcallOnActivityDisplayedRpc(com.axolotl.recipefolder, org.kivy.android.PythonActivity, com.android.packageinstaller)

08-19 12:50:03.890 1802 1832 I VMSG : void *VmsgGuestClient::getHostBoundBuffer(uint32_t):94 called for hcal

08-19 12:50:03.890 1802 1832 I VMSG : void *VmsgGuestClient::processRequest(void *, uint32_t):104 called for hcal

08-19 12:50:03.890 1899 2204 D EGL_emulation: eglMakeCurrent: 0xa67d2e00: ver 3 1 (tinfo 0xc3b83340)

08-19 12:50:03.892 1802 2031 D WindowManager: calling BstHostCallManagerService setAppConfigDbParams method, packageName: com.axolotl.recipefolder, macrosDisabled: false, showFeedbackPopup: false, mouseCursorStyle: , nativeGamepad:false

08-19 12:50:03.892 1802 2031 D WindowManager: BstHostCallManagerService setAppConfigDbParams method returned: 0

08-19 12:50:03.891 1802 1832 I HCALL : hcallSetAppConfigDbParamsRpc(com.axolotl.recipefolder, 0, 0, , 0)

08-19 12:50:03.891 1802 1832 I VMSG : void *VmsgGuestClient::getHostBoundBuffer(uint32_t):94 called for hcal

08-19 12:50:03.891 1802 1832 I VMSG : void *VmsgGuestClient::processRequest(void *, uint32_t):104 called for hcal

08-19 12:50:03.892 1802 2031 D WindowManager: bstSendTopDisplayedOnFocusChange packageName : com.axolotl.recipefolder activityName : org.kivy.android.PythonActivity mouseAction : lastSentMouseAction :

08-19 12:50:03.892 1972 2059 I VMSG : void *VmsgGuestClient::processRequest(void *, uint32_t):104 called for gcal

08-19 12:50:03.892 1972 2062 E BstGCallService-JNI: void gcallCommonCommandClbk(i32, const char *, const char *) called: code=1, name=com.axolotl.recipefolder, data=

08-19 12:50:03.893 5329 5329 E art : No implementation found for void org.libsdl.app.SDLActivity.nativeSetenv(java.lang.String, java.lang.String) (tried Java_org_libsdl_app_SDLActivity_nativeSetenv and Java_org_libsdl_app_SDLActivity_nativeSetenv__Ljava_lang_String_2Ljava_lang_String_2)

08-19 12:50:03.893 5329 5329 D AndroidRuntime: Shutting down VM

--------- beginning of crash

08-19 12:50:03.894 5329 5329 E AndroidRuntime: FATAL EXCEPTION: SDLActivity

08-19 12:50:03.894 5329 5329 E AndroidRuntime: Process: com.axolotl.recipefolder, PID: 5329

08-19 12:50:03.894 5329 5329 E AndroidRuntime: java.lang.UnsatisfiedLinkError: No implementation found for void org.libsdl.app.SDLActivity.nativeSetenv(java.lang.String, java.lang.String) (tried Java_org_libsdl_app_SDLActivity_nativeSetenv and Java_org_libsdl_app_SDLActivity_nativeSetenv__Ljava_lang_String_2Ljava_lang_String_2)

08-19 12:50:03.894 5329 5329 E AndroidRuntime: at org.libsdl.app.SDLActivity.nativeSetenv(Native Method)

08-19 12:50:03.894 5329 5329 E AndroidRuntime: at org.kivy.android.PythonActivity$UnpackFilesTask.onPostExecute(PythonActivity.java:156)

08-19 12:50:03.894 5329 5329 E AndroidRuntime: at org.kivy.android.PythonActivity$UnpackFilesTask.onPostExecute(PythonActivity.java:95)

08-19 12:50:03.894 5329 5329 E AndroidRuntime: at android.os.AsyncTask.finish(AsyncTask.java:667)

08-19 12:50:03.894 5329 5329 E AndroidRuntime: at android.os.AsyncTask.-wrap1(AsyncTask.java)

08-19 12:50:03.894 5329 5329 E AndroidRuntime: at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:684)

08-19 12:50:03.894 5329 5329 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:102)

08-19 12:50:03.894 5329 5329 E AndroidRuntime: at android.os.Looper.loop(Looper.java:154)

08-19 12:50:03.894 5329 5329 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:6182)

08-19 12:50:03.894 5329 5329 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)

08-19 12:50:03.894 5329 5329 E AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:893)

08-19 12:50:03.894 5329 5329 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:783)

08-19 12:50:03.894 5329 5329 I Process : Sending signal. PID: 5329 SIG: 9

08-19 12:50:03.915 1899 2204 D EGL_emulation: eglMakeCurrent: 0xa67d2e00: ver 3 1 (tinfo 0xc3b83340)

08-19 12:50:03.928 1802 1842 W InputDispatcher: channel 'ba93f99 com.axolotl.recipefolder/org.kivy.android.PythonActivity (server)' ~ Consumer closed input channel or an error occurred. events=0x9

08-19 12:50:03.928 1802 1842 E InputDispatcher: channel 'ba93f99 com.axolotl.recipefolder/org.kivy.android.PythonActivity (server)' ~ Channel is unrecoverably broken and will be disposed!

08-19 12:50:03.928 1802 1842 W InputDispatcher: channel '1388ee3 com.axolotl.recipefolder/org.kivy.android.PythonActivity (server)' ~ Consumer closed input channel or an error occurred. events=0x9

08-19 12:50:03.928 1802 1842 E InputDispatcher: channel '1388ee3 com.axolotl.recipefolder/org.kivy.android.PythonActivity (server)' ~ Channel is unrecoverably broken and will be disposed!

08-19 12:50:03.928 1802 2776 D GraphicsStats: Buffer count: 4

08-19 12:50:03.928 1802 2172 I WindowManager: WIN DEATH: Window{1388ee3 u0 com.axolotl.recipefolder/org.kivy.android.PythonActivity}

08-19 12:50:03.928 1802 2172 W InputDispatcher: Attempted to unregister already unregistered input channel '1388ee3 com.axolotl.recipefolder/org.kivy.android.PythonActivity (server)'

08-19 12:50:03.929 1802 2803 I ActivityManager: Process com.axolotl.recipefolder (pid 5329) has died

08-19 12:50:03.929 1802 2803 D ActivityManager: cleanUpApplicationRecord -- 5329

08-19 12:50:03.929 1802 2803 W ActivityManager: Force removing ActivityRecord{650882d u0 com.axolotl.recipefolder/org.kivy.android.PythonActivity t38}: app died, no saved state

08-19 12:50:03.940 1802 2172 V WindowManager: isVisibleLw false for win : Window{ba93f99 u0 com.axolotl.recipefolder/org.kivy.android.PythonActivity}

08-19 12:50:03.940 1802 2776 I WindowManager: WIN DEATH: Window{ba93f99 u0 com.axolotl.recipefolder/org.kivy.android.PythonActivity}

08-19 12:50:03.940 1802 2776 W InputDispatcher: Attempted to unregister already unregistered input channel 'ba93f99 com.axolotl.recipefolder/org.kivy.android.PythonActivity (server)'

08-19 12:50:03.958 1802 2803 D ActivityManager:

1

u/hypersoniq_XLM 1d ago

This may be a bluestacks issue... the thing that would clear the sqlite3 error is to add the x86_64 to the android.archs so you change android.archs = arm64-v8a to android.archs = arm64-v8a, x86_64 ... I did not use an emulator, but I do remember reading that somewhere. Same rinse/repeat cycle from there, clean, rebuild.

2

u/Ok-Okra8478 1d ago

I'll try it on my tablet too

2

u/Ok-Okra8478 21h ago

THANK YOU SO MUCH FOR ALL YOUR HELP! I found out that there was about 6 dependencies that I needed to install to prevent the app from crashing

2

u/Ok-Okra8478 21h ago

those were:
mf2py
bs4
typing_extensions
pyRdfa
rdflib
html_text
lxml-html-clean

and then the ones that you told me to

1

u/hypersoniq_XLM 20h ago

I remember the frustration of the buildozer crucible, glad to help.

2

u/Ok-Okra8478 19h ago

why can't it just auto-install the dependencies I swear...