This MR contains a subset of changes extracted from MR !10569 (first 4 commits after merge-base). Included changes: 1. Fix 64-bit crash in JNI setCursor call * Pass NULL instead of integer 0 for jobject argument in CallVoidMethod * Prevents invalid jobject usage and JNI abort on 64-bit platforms 2. Lower targetSdkVersion to 28 * Avoid Android 10 W^X restrictions (API 29+) affecting exec and memory mappings * Add Java 1.8 compile options required by the adjusted SDK level 3. Fix Wine loader path and library lookup * Update WINELOADER to match current Wine layout * Extend LD_LIBRARY_PATH to support loading libraries directly from APK * Restore correct startup on modern Android/Wine setups 4. Move environment setup to Java layer and simplify wine_init * Replace JNI environment passing with setenv() in WineActivity * Simplify native initialization and remove environment array handling * Preserve LD_LIBRARY_PATH update and WINEDEBUGLOG behavior Reason: This MR is split out from !10569 to simplify review by isolating Android startup and stability changes into a smaller, focused set. -- v2: wineandroid: move environment setup to Java and drop obsolete env vars https://gitlab.winehq.org/wine/wine/-/merge_requests/10683