[Full Changelog](https://github.com/kivy/python-for-android/compare/v2023.09.16...v2024.01.21)
**Fixed bugs:**
- Update documentation copyright [\2921](https://github.com/kivy/python-for-android/issues/2921)
- Support mail address is broken [\2899](https://github.com/kivy/python-for-android/issues/2899)
- doc/macos/jdk: invalid brew install command provided. [\2896](https://github.com/kivy/python-for-android/issues/2896)
- pyzmq recipe build fail [\2818](https://github.com/kivy/python-for-android/issues/2818)
- Existing distribution not detected due to pip package casing mismatch [\2494](https://github.com/kivy/python-for-android/issues/2494)
- unknown argument "fp-model" and strict is not a directory or a file [\2359](https://github.com/kivy/python-for-android/issues/2359)
- Copy past is not working on kivy mobile app [\2270](https://github.com/kivy/python-for-android/issues/2270)
- Flaky test failure in blacklist\(?\) - investigation needed [\1781](https://github.com/kivy/python-for-android/issues/1781)
- Problem with loading gevent: BadZipfile: File is not a zip file [\1739](https://github.com/kivy/python-for-android/issues/1739)
- ImportError when importing files containing \N{name} escape sequence [\1060](https://github.com/kivy/python-for-android/issues/1060)
- Error with permission specification via setup.cfg [\985](https://github.com/kivy/python-for-android/issues/985)
**Closed issues:**
- Build failed: Could not find `android` or `sdkmanager` binaries in Android SDK [\2956](https://github.com/kivy/python-for-android/issues/2956)
- Libffi - configure: error: C compiler cannot create executables \(WSL 2\) [\2953](https://github.com/kivy/python-for-android/issues/2953)
- G [\2951](https://github.com/kivy/python-for-android/issues/2951)
- Hh [\2949](https://github.com/kivy/python-for-android/issues/2949)
- Can't build for Android on macOS on M2 [\2947](https://github.com/kivy/python-for-android/issues/2947)
- BroadcastReceiver does not invoke the callback [\2946](https://github.com/kivy/python-for-android/issues/2946)
- Add pdf2docx library recipe [\2941](https://github.com/kivy/python-for-android/issues/2941)
- use build aar in kotlin app ,can't load /lib/arm64/libpybundle.so file [\2940](https://github.com/kivy/python-for-android/issues/2940)
- Feature Request: Pymssql [\2936](https://github.com/kivy/python-for-android/issues/2936)
- LXML v4.8.0 fails to build. [\2928](https://github.com/kivy/python-for-android/issues/2928)
- Trying to apply a plugin fails [\2926](https://github.com/kivy/python-for-android/issues/2926)
- ModuleNotFoundError: No module named '\_sysconfigdata\_\_darwin\_darwin' [\2925](https://github.com/kivy/python-for-android/issues/2925)
- ReadTheDocs version is unclear. [\2920](https://github.com/kivy/python-for-android/issues/2920)
- How to get real file path from uri [\2911](https://github.com/kivy/python-for-android/issues/2911)
- And [\2910](https://github.com/kivy/python-for-android/issues/2910)
- ModuleNotFoundError: No module named 'backports'
[\2909](https://github.com/kivy/python-for-android/issues/2909)
- not able to access files unless connected to adb once [\2907](https://github.com/kivy/python-for-android/issues/2907)
- opening files in other apps [\2906](https://github.com/kivy/python-for-android/issues/2906)
- ImportError: dlopen failed: cannot locate symbol "\_ZTVSt9bad\_alloc" [\2903](https://github.com/kivy/python-for-android/issues/2903)
- Fails to build pyjnius [\2902](https://github.com/kivy/python-for-android/issues/2902)
- Kivy app crashes on startup [\2895](https://github.com/kivy/python-for-android/issues/2895)
- aar file does not import properly in version v2023.09.16 [\2894](https://github.com/kivy/python-for-android/issues/2894)
- App is crashing with Pyrebase4 [\2893](https://github.com/kivy/python-for-android/issues/2893)
- shared libs builds with 32 bit arch instead of 64 bit [\2888](https://github.com/kivy/python-for-android/issues/2888)
- liblzma download error [\2885](https://github.com/kivy/python-for-android/issues/2885)
- Misconfiguration causing failure in compilation. [\2879](https://github.com/kivy/python-for-android/issues/2879)
- cygrpc.so is for EM\_X86\_64 \(62\) instead of EM\_AARCH64 \(183\) [\2853](https://github.com/kivy/python-for-android/issues/2853)
- Are you able to build cffi==1.15.1? [\2847](https://github.com/kivy/python-for-android/issues/2847)
- java.lang.IllegalStateException [\2844](https://github.com/kivy/python-for-android/issues/2844)
- \[BUG\]: ctypes: AttributeError: undefined symbol: PyCapsule\_New [\2840](https://github.com/kivy/python-for-android/issues/2840)
- kivy can't load image in requesturl android [\2832](https://github.com/kivy/python-for-android/issues/2832)
- Feature Request: Add Python `3.11` support [\2798](https://github.com/kivy/python-for-android/issues/2798)
- Error Build APK FIle using Flask [\2783](https://github.com/kivy/python-for-android/issues/2783)
- macOS: gwadlew fails at build tools stage \(newest build tools is 34.0.0-rc3, brew/openjdk20\). [\2781](https://github.com/kivy/python-for-android/issues/2781)
- Kivy python Error loading video on some android device [\2780](https://github.com/kivy/python-for-android/issues/2780)
- buildozer/p4a.prerequisites: enable automation build with no questions asked. [\2778](https://github.com/kivy/python-for-android/issues/2778)
- \_python\_bundle does not exist...this not looks good, all python recipes should have this folder, should we expect a crash soon? [\2773](https://github.com/kivy/python-for-android/issues/2773)
- Background service implemented using Pyjnius does not auto-restart on Kivy APK close [\2772](https://github.com/kivy/python-for-android/issues/2772)
- \[JVM\]: FLAG\_IMMUTABLE or FLAG\_MUTABLE is required when a PendingIntent is created [\2759](https://github.com/kivy/python-for-android/issues/2759)
- there is an issue with playing video from URL on the latest p4a releases [\2744](https://github.com/kivy/python-for-android/issues/2744)
- App crashes at launch on specific devices \(\[libpython3.9.so\] \_PyEval\_EvalFrameDefault\) \(Adreno 730?\) [\2723](https://github.com/kivy/python-for-android/issues/2723)
- Pandas giving error in Buildozer [\2719](https://github.com/kivy/python-for-android/issues/2719)
- buildozer -v android debug [\2711](https://github.com/kivy/python-for-android/issues/2711)
- \[proposed feature-request\] Lacking psutil recipe [\2707](https://github.com/kivy/python-for-android/issues/2707)
- \[ERROR\]: Build failed: Asked to compile for no Archs, so failing. [\2685](https://github.com/kivy/python-for-android/issues/2685)
- Feature Request: Give more access to the android project folder inside of the dist folder [\2614](https://github.com/kivy/python-for-android/issues/2614)
- `shutil.copy()` fails on external removable storage devices [\2589](https://github.com/kivy/python-for-android/issues/2589)
- jnius can't find class "org.kivy.android.PythonActivity" with webview [\2533](https://github.com/kivy/python-for-android/issues/2533)
- \[MACOS\] Android app crashes on start when using macos to build [\2519](https://github.com/kivy/python-for-android/issues/2519)
- Pillow-SIMD recipe? [\2420](https://github.com/kivy/python-for-android/issues/2420)
- --asset & directories [\2413](https://github.com/kivy/python-for-android/issues/2413)
- dlopen failed: cannot locate symbol "\_\_register\_atfork" on Android 5.0 [\2410](https://github.com/kivy/python-for-android/issues/2410)
- dlib module not found error [\2395](https://github.com/kivy/python-for-android/issues/2395)
- lxml build failed for x86 arch [\2369](https://github.com/kivy/python-for-android/issues/2369)
- Android 10 storage permission denied [\2364](https://github.com/kivy/python-for-android/issues/2364)
- for pytorch [\2353](https://github.com/kivy/python-for-android/issues/2353)
- Problem with ffmpeg on Android [\2345](https://github.com/kivy/python-for-android/issues/2345)
- NLTK recipe for python for android [\2320](https://github.com/kivy/python-for-android/issues/2320)
- build\_tools\_versions comparison code fails for 'Android Rebuilds' SDKs because of different folder naming conventions [\2318](https://github.com/kivy/python-for-android/issues/2318)
- verify downloads using sha256? [\2294](https://github.com/kivy/python-for-android/issues/2294)
- outdated recipes [\2277](https://github.com/kivy/python-for-android/issues/2277)
- Custom recipe for scipy fails with permission issue [\2267](https://github.com/kivy/python-for-android/issues/2267)
- Kivy application generated crashes instantly with dlopen failed [\2266](https://github.com/kivy/python-for-android/issues/2266)
- EGLlib: validate\_display: 92 error 3008 \(EGL\_BAD\_DISPLAY\) : App crashes immediately \(kivymd\) \(Buildozer\) [\2258](https://github.com/kivy/python-for-android/issues/2258)
- libEGL : EGLNativeWindowType disconnect failed [\2253](https://github.com/kivy/python-for-android/issues/2253)
- Hao to support multiprocess Queue in Android [\2249](https://github.com/kivy/python-for-android/issues/2249)
- autoclass: Class only found when called in specific places? [\2242](https://github.com/kivy/python-for-android/issues/2242)
- the app crash in time of import psycopg2 [\2240](https://github.com/kivy/python-for-android/issues/2240)
- env must be a dict [\2170](https://github.com/kivy/python-for-android/issues/2170)
- Pandas doesn't work [\2157](https://github.com/kivy/python-for-android/issues/2157)
- Webview bootstrap can't find 'org.jnius.NativeInvocationHandler'. [\2140](https://github.com/kivy/python-for-android/issues/2140)
- clang++: error: linker command failed with exit code 1 [\2082](https://github.com/kivy/python-for-android/issues/2082)
- ModuleNotFoundError: No module named 'setuptools' [\2078](https://github.com/kivy/python-for-android/issues/2078)
- Scraping web pages with javascript [\2052](https://github.com/kivy/python-for-android/issues/2052)
- open webbrowser register\(\) error [\2047](https://github.com/kivy/python-for-android/issues/2047)
- Missing javaclass when using able with previously working recipe [\2041](https://github.com/kivy/python-for-android/issues/2041)
- :Class not found b'org/kivy/android/PythonActivity$ActivityResultListener' [\2039](https://github.com/kivy/python-for-android/issues/2039)
- App\(using socket and opencv\) crash on opening [\2038](https://github.com/kivy/python-for-android/issues/2038)
- android apk is crashing after displaying splash screen on phone [\2030](https://github.com/kivy/python-for-android/issues/2030)
- Leverage Docker image caching [\2009](https://github.com/kivy/python-for-android/issues/2009)
- entrypoint confusion with python3 [\1999](https://github.com/kivy/python-for-android/issues/1999)
- Android app crash on opening - Python Initialize [\1987](https://github.com/kivy/python-for-android/issues/1987)
- Error building APK: "Missing 'name' key attribute on element activity at AndroidManifest.xml" [\1979](https://github.com/kivy/python-for-android/issues/1979)
- Ugent issues on Webview \(Android Back Button to main App\) [\1961](https://github.com/kivy/python-for-android/issues/1961)
- JavaException: JVM exception occurred: Fail to connect to camera service [\1943](https://github.com/kivy/python-for-android/issues/1943)
- Python version number must have subversion? cannot find Python-3.7.tgz [\1941](https://github.com/kivy/python-for-android/issues/1941)
- dlopen failed: jnius.so is for EM\_ARM \(40\) instead of EM\_386 \(3\) [\1927](https://github.com/kivy/python-for-android/issues/1927)
- Matplotlib recipe depends on local environment [\1900](https://github.com/kivy/python-for-android/issues/1900)
- main window jumps up and down [\1876](https://github.com/kivy/python-for-android/issues/1876)
- ctypes.pythonapi issues; getting AttributeError: undefined symbol [\1866](https://github.com/kivy/python-for-android/issues/1866)
- \[enhancement\] do not rebuild already built packages [\1860](https://github.com/kivy/python-for-android/issues/1860)
- Matplotlib recipe fails sometimes [\1859](https://github.com/kivy/python-for-android/issues/1859)
- p4a build with NDK r18b: clang: error: unknown argument: '-mandroid' [\1853](https://github.com/kivy/python-for-android/issues/1853)
- Activity lifecycle issues. after onDestroy, application will become unusable [\1844](https://github.com/kivy/python-for-android/issues/1844)
- Service AutoRestart did not work [\1823](https://github.com/kivy/python-for-android/issues/1823)
- Android debug results in error involving clang++ and linker. [\1796](https://github.com/kivy/python-for-android/issues/1796)
- seek\(\) method on a file object doesn't use right arguments [\1768](https://github.com/kivy/python-for-android/issues/1768)
- Same issue w/ -lpython2.7 not found, workaround [\1753](https://github.com/kivy/python-for-android/issues/1753)
- Several issues when installing packages via pip [\1745](https://github.com/kivy/python-for-android/issues/1745)
- Publish a new Kivy Launcher for Python 3 [\1638](https://github.com/kivy/python-for-android/issues/1638)
- Travis conditional bootstrap build support [\1588](https://github.com/kivy/python-for-android/issues/1588)
- Error when execute APK only on device: ImportError: cannot import name \_htmlparser [\1523](https://github.com/kivy/python-for-android/issues/1523)
- onSensorChanged continuously called during app execution [\1498](https://github.com/kivy/python-for-android/issues/1498)
- GC deadlock on subprocess [\1461](https://github.com/kivy/python-for-android/issues/1461)
- Code runs on old pygame backend but not on SDL2 [\1411](https://github.com/kivy/python-for-android/issues/1411)
- build-tools below 25 will not add jars [\1345](https://github.com/kivy/python-for-android/issues/1345)
- Flaky continuous integration [\1306](https://github.com/kivy/python-for-android/issues/1306)
- Icon/Logo Proposal [\1264](https://github.com/kivy/python-for-android/issues/1264)
- Unable to write the config [\1151](https://github.com/kivy/python-for-android/issues/1151)
- p4a does not yet work with clang [\1097](https://github.com/kivy/python-for-android/issues/1097)
- android module seems to eat up a character from java properties [\945](https://github.com/kivy/python-for-android/issues/945)
- TypeError: a bytes-like object is required, not 'str' [\856](https://github.com/kivy/python-for-android/issues/856)
- Feature request: access to all permissions [\843](https://github.com/kivy/python-for-android/issues/843)
- Extending the launcher [\565](https://github.com/kivy/python-for-android/issues/565)
**Merged pull requests:**
- Update OpenSSL version to `1.1.1w` [\2958](https://github.com/kivy/python-for-android/pull/2958) ([prolenodev](https://github.com/prolenodev))
- Bump Kivy version to `2.3.0` [\2952](https://github.com/kivy/python-for-android/pull/2952) ([misl6](https://github.com/misl6))
- `sourceCompatibility` 1.7 and `targetCompatibility` 1.7 are obsolete, use 1.8 by default [\2942](https://github.com/kivy/python-for-android/pull/2942) ([misl6](https://github.com/misl6))
- Remove redundant append into WHITELIST\_PATTERNS [\2935](https://github.com/kivy/python-for-android/pull/2935) ([shyamnathp](https://github.com/shyamnathp))
- Update sdl2 deps to reflect the same targeted in kivy/kivy [\2927](https://github.com/kivy/python-for-android/pull/2927) ([misl6](https://github.com/misl6))
- Update `python-for-android` prerequisites \(`Dockerfile`, `prerequisites.py`, docs\) [\2923](https://github.com/kivy/python-for-android/pull/2923) ([misl6](https://github.com/misl6))
- Update Contributing Guidelines and Readme [\2922](https://github.com/kivy/python-for-android/pull/2922) ([Julian-O](https://github.com/Julian-O))
- Initial support for PySide6 and Qt [\2918](https://github.com/kivy/python-for-android/pull/2918) ([shyamnathp](https://github.com/shyamnathp))
- Introduce FAQ [\2917](https://github.com/kivy/python-for-android/pull/2917) ([Julian-O](https://github.com/Julian-O))
- Add \(now mandatory\) `.readthedocs.yaml` file, add docs `requirements.txt` and update sphinx conf [\2916](https://github.com/kivy/python-for-android/pull/2916) ([misl6](https://github.com/misl6))
- enable json1 extension in sqlite3 [\2915](https://github.com/kivy/python-for-android/pull/2915) ([HyTurtle](https://github.com/HyTurtle))
- Bump `pyjnius` version to `1.6.1` [\2914](https://github.com/kivy/python-for-android/pull/2914) ([misl6](https://github.com/misl6))
- Remove `distutils` usage, as is not available anymore on Python `3.12` [\2912](https://github.com/kivy/python-for-android/pull/2912) ([misl6](https://github.com/misl6))
- Update Lottie player version [\2900](https://github.com/kivy/python-for-android/pull/2900) ([HugoDaniel](https://github.com/HugoDaniel))
- Merge master into develop [\2892](https://github.com/kivy/python-for-android/pull/2892) ([misl6](https://github.com/misl6))
- Add doc tests, make them pass. [\2890](https://github.com/kivy/python-for-android/pull/2890) ([Julian-O](https://github.com/Julian-O))
- Update Android gradle plugin to `8.1.1` and gradle to `8.0.2` [\2887](https://github.com/kivy/python-for-android/pull/2887) ([misl6](https://github.com/misl6))
- Add support for Python `3.11` and make it the default while building `hostpython3` and `python3` [\2850](https://github.com/kivy/python-for-android/pull/2850) ([T-Dynamos](https://github.com/T-Dynamos))