Thaddeus Crews
29ff6c3469
Merge pull request #107681 from m4gr3d/revert_remove_compress_native_lib_option
...
Revert the removal of the `gradle_build/compress_native_libraries` export option
2025-08-12 11:46:33 -05:00
Fredia Huya-Kouadio
74eba7a770
Revert the removal of the `gradle_build/compress_native_libraries` export option
2025-08-11 19:01:11 -07:00
Anish Mishra
0ad232423d
Android: Add method to set root window color at runtime
2025-08-11 22:25:53 +05:30
Anish Mishra
5bcf9a5a57
Fix drive selection issue on Android
2025-08-11 21:47:00 +05:30
h1v9
b787b0dbb5
Thread Syncronization for FileAccessHandler and DirectoryAccessHandler
...
- Switching to ReentrantLock
- Thread locking for DirectoryAccessHandler (dependencies)
Newline @ EOF
Forgot import
Revert
Better locking
Forgot return
Restore last empty line
2025-08-07 13:08:53 -05:00
Thaddeus Crews
4b23f09e2f
Merge pull request #109267 from syntaxerror247/misc
...
Android: Misc changes
2025-08-03 10:51:15 -05:00
Thaddeus Crews
a6e6d133ab
Merge pull request #109227 from limbonaut/harden-jni-find-class
...
Harden jni_find_class() and its setup/cleanup
2025-08-03 10:51:09 -05:00
Thaddeus Crews
a0c7127829
Merge pull request #109162 from bruvzg/android_tts
...
Fix Android TTS on-demand init.
2025-08-03 10:51:08 -05:00
Anish Mishra
ae678b4085
Android: Misc changes
2025-08-03 13:09:10 +05:30
Serhii Snitsaruk
4749ce1637
Harden jni_find_class() and its setup/cleanup
2025-08-02 09:52:08 +02:00
Serhii Snitsaruk
fa36abeacc
Fix FindClass() failing to find Dictionary on Android leading to crash
2025-08-01 17:46:58 +02:00
Pāvels Nadtočajevs
4915d61362
Fix Android TTS on-demand init.
2025-07-31 17:11:12 +03:00
Thaddeus Crews
ec8e6aeb82
Merge pull request #108557 from syntaxerror247/Fix-system-bar-regression
...
Android: Fix system bar regression
2025-07-30 09:03:37 -05:00
Anish Mishra
0506299c21
Android: Add option to change background color and fix system bar regression
2025-07-29 09:27:16 +05:30
Fredia Huya-Kouadio
291b89686d
Update the OpenXR Vendors plugin for the XR editor to the latest stable version
2025-07-24 18:32:26 -07:00
Thaddeus Crews
e0603aeda3
Merge pull request #108796 from syntaxerror247/get-clipboard-crash
...
Android: Run clipboard tasks on UI thread
2025-07-23 13:27:12 -05:00
Thaddeus Crews
8d04657ec8
Merge pull request #108692 from m4gr3d/fix_debugger_immediate_disconnect
...
Fix debugger immediate disconnect
2025-07-22 11:20:08 -05:00
Anish Mishra
67b45299c7
Android: Run clipboard tasks on UI thread
...
Fixes crashes on older Android versions (API level <= 27) by ensuring
that all clipboard operations are executed on the UI thread.
2025-07-22 20:58:22 +05:30
Fredia Huya-Kouadio
d47e3fd3bf
Misc XR editor updates:
...
- Bump the OpenXR Vendors plugin version to `4.1.0-stable`
- Include `quest2` in the supported devices manifest config
2025-07-21 11:17:48 -07:00
Fredia Huya-Kouadio
f713a20c94
Fix debugger immediate disconnect
...
Address https://github.com/godotengine/godot/issues/108518
2025-07-18 15:12:37 -07:00
Thaddeus Crews
71a9948157
Merge pull request #108287 from syntaxerror247/fix-virtual-keyboard-height
...
Fix immersive mode and virtual keyboard height issue on Android
2025-07-18 11:05:19 -05:00
Fredia Huya-Kouadio
2509b2f457
Add a debug version for Godot's maven central artifact
2025-07-17 17:17:40 -07:00
Anish Mishra
d8d3c86d71
Fix Immersive mode and keyboard height issues on Android
2025-07-16 23:31:47 +05:30
Thaddeus Crews
64c58c225a
Merge pull request #107473 from m4gr3d/address_transparency_feedback
...
Address remaining feedback on Android background transparency
2025-07-16 11:27:54 -05:00
Pāvels Nadtočajevs
f20e5152ad
[EditorExportPlatform] Move initialization to a dedicated method.
2025-07-16 08:55:23 +03:00
Thaddeus Crews
fb26c2603b
Merge pull request #108329 from m4gr3d/fix_android_eof_detection
...
Android: Fix the EOF detection logic
2025-07-10 11:39:25 -05:00
Anish Mishra
836b762e23
Fix Android splash theme regression
2025-07-09 23:33:21 +05:30
Fredia Huya-Kouadio
3a36726feb
Update the maven publishing configuration following the deprecation of the OSSHR service
...
https://central.sonatype.org/news/20250326_ossrh_sunset/
2025-07-07 15:57:04 -07:00
Fredia Huya-Kouadio
3ade4b4b63
Address remaining feedback on https://github.com/godotengine/godot/pull/106709
...
Address https://github.com/godotengine/godot/pull/106709#discussion_r2114489487
2025-07-07 12:11:21 -07:00
Fredia Huya-Kouadio
2cfe31f9a1
Fix the EOF detection logic on Android
...
The current logic was causing loading to omit the last character because the EOF flag was triggered too early.
2025-07-06 01:09:33 -07:00
Fredia Huya-Kouadio
c376348b16
Fix the build logic to generate the native debug symbols
2025-07-05 10:38:22 -07:00
A Thousand Ships
f11aff3841
Editor: Restructure editor code
...
Moving various editor files into sub folders to reduce clutter
2025-07-04 18:18:22 +02:00
Thaddeus Crews
eb2625cf57
Merge pull request #108243 from m4gr3d/fix_android_plugin_init
...
Android: Fix Android plugins regression
2025-07-04 10:09:06 -05:00
Fredia Huya-Kouadio
bbf22a39c1
Assign the `primaryHost` prior to initializing the registered Android plugins.
...
Address a regression introduced in https://github.com/godotengine/godot/pull/102866 .
The proper behavior for Android plugins is to use `getContext` instead of `getActivity`, but since not all plugins follow this pattern, this fix provides backward compat to avoid breaking the plugins that don't.
2025-07-03 09:43:24 -07:00
Anish Mishra
4f695e1713
Android: Don't exclude display cutout in immersive mode
2025-07-03 08:07:08 +05:30
Anish Mishra
1338e29bf5
Android: Fix `DisplayServer.get_display_safe_area()` issues
2025-06-29 13:11:03 +05:30
Thaddeus Crews
72ab203c79
Merge pull request #108019 from limbonaut/fix-jni-generic-array-conversion
...
Add missing JNI variant conversion for generic Array
2025-06-27 09:39:56 -05:00
Anish Mishra
c82f7feb53
Document that `native file dialog` is only available on Android 10+ devices.
2025-06-27 17:07:50 +05:30
Serhii Snitsaruk
1bea370df7
Add JNI variant conversion for generic Array
2025-06-26 19:16:52 +02:00
Pāvels Nadtočajevs
42733a2a5c
Implement sparse bundle PCK support.
2025-06-26 00:47:25 +02:00
Rémi Verschelde
260190c057
Merge pull request #107742 from m4gr3d/address_api_35_ui_issues
...
Android: Address API 35 UI behavior changes
2025-06-22 11:59:12 +02:00
Fredia Huya-Kouadio
2f4c3d411c
Address API 35 UI behavior changes
...
- Fix issue on foldable where the embedded window would obscure the main window when launching
- Fix edge-to-edge support for non-immersive apps / games
- Add edge-to-edge export option to allow non-immersive apps / games to extend edge to edge
2025-06-20 13:29:38 -07:00
Thaddeus Crews
f7c6f0057c
Merge pull request #103972 from m4gr3d/xr_editor_hybrid_support
...
Add support for running hybrid apps from the XR editor
2025-06-20 08:38:55 -05:00
Fredia Huya-Kouadio
09f5be761c
Add support for running hybrid apps from the XR editor
2025-06-15 07:05:12 -07:00
Anish Mishra
dcab8a721e
Revert "Add support for exporting to Google Play Instant"
...
This reverts commit 12ad9ed4e0 .
Shortly after the feature was merged, we received news that Google will shut down Instant Apps in December 2025. Since this feature is being discontinued soon, there’s no value in keeping it for just a few months.
2025-06-14 15:51:08 +05:30
Fredia Huya-Kouadio
dc589e239c
Add support for using an Android Service to host the Godot engine
...
- Provide a `GodotService` Android service implementation which can be used to host an instance of the Godot engine
- Provide a `RemoteGodotFragment` Android fragment implementation which provides the view and logic to wrap connection to a `GodotService` instance
2025-06-12 16:37:38 -07:00
Rémi Verschelde
ae33da972b
Merge pull request #106709 from m4gr3d/fix_transparency_flags
...
Fix transparency background issue on Android
2025-06-12 23:32:44 +02:00
Rémi Verschelde
4adef85151
Merge pull request #106447 from kojurohan42/instant-build
...
Add support for exporting to Google Play Instant via Google Play Instant Export Option
2025-06-12 23:32:38 +02:00
Alexander Hartmann
a1e12dca3f
Fix `Input.vibrate_handheld` on Android.
2025-06-12 12:38:18 +02:00
Rémi Verschelde
6e5bcd2f41
Merge pull request #107207 from syntaxerror247/filePicker-save
...
Android: Fix save issue when using native file dialog
2025-06-10 12:30:21 +02:00
Adam Scott
026ba0dbbc
Fix Android build files joining paths without join
2025-06-09 10:37:54 -04:00
Rémi Verschelde
a663949a7d
Merge pull request #107215 from syntaxerror247/fix-warning
...
Show shader baker related export warnings only if enabled
2025-06-07 00:44:06 +02:00
Anish Mishra
8bf87a6b2c
Show shader baker related export warnings only if enabled
2025-06-06 21:05:39 +05:30
Anish Mishra
a28697f2fe
Android: Fix save issue when using native file dialog
...
Fixes the issue where saving a file without `MANAGE_EXTERNAL_STORAGE` permission using the `native file dialog` to get the file path causes the `ERR_FILE_NOT_FOUND` error.
2025-06-06 16:07:41 +05:30
Fredia Huya-Kouadio
a0cb64569b
Fix the `CAMERA` permission request on HorizonOS devices
2025-06-05 14:56:07 -07:00
Fredia Huya-Kouadio
547450befd
Fix transparency background issue on Android
...
Fixes https://github.com/godotengine/godot/issues/106703
2025-06-02 22:45:16 -07:00
Thaddeus Crews
9ee7d78274
Merge pull request #106859 from syntaxerror247/alias
...
Add support for `OS.get_version_alias()` on Android
2025-06-02 18:51:56 -05:00
Thaddeus Crews
1c0669bd23
Merge pull request #106970 from m4gr3d/update_documentation_javaclasswrapper_androidruntimeplugin
...
Update the documentation for `JavaClassWrapper` and `AndroidRuntimePlugin`
2025-06-02 18:51:50 -05:00
Pāvels Nadtočajevs
2d93e004b9
Cleanup and unify `DisplayServer` screen methods and documentation.
2025-06-02 08:03:48 +03:00
Fredia Huya-Kouadio
658d3736f4
Update the documentation for `JavaClassWrapper` and `AndroidRuntimePlugin`
...
Follow-up to https://github.com/godotengine/godot-docs/pull/10979
2025-05-30 09:39:53 -07:00
Anish Mishra
458850b2d9
Add support for `OS.get_version_alias()` on Android
2025-05-30 19:57:15 +05:30
Thaddeus Crews
de37627404
Merge pull request #102552 from DarioSamo/shader-baker
...
Add shader baker to project exporter.
2025-05-28 17:09:38 -05:00
David Snopek
cc7f2e5160
JavaClassWrapper: Don't discard overloaded methods that differ by object type
2025-05-28 14:19:26 -05:00
Dario
5a30a7e7cd
Add shader baker to project exporter.
...
Metal Support contributed by Migeran (https://migeran.com ) and Stuart Carnie.
Co-authored-by: Stuart Carnie <stuart.carnie@gmail.com>
Co-authored-by: Gergely Kis <gergely.kis@migeran.com>
2025-05-27 12:45:27 -03:00
Thaddeus Crews
363b7638b0
Merge pull request #106797 from syntaxerror247/nomedia-crash
...
Android Editor: Disable `nomedia` file creation for Android 11 (api level 30)
2025-05-27 09:39:22 -05:00
Thaddeus Crews
d5301d1cc9
Merge pull request #106736 from TCROC/fix-ios-plugins-broken
...
Fix ios plugin always invalid due to null ConfigFile
2025-05-26 11:24:46 -05:00
Thaddeus Crews
1c151e9980
Merge pull request #106724 from syntaxerror247/theme-attributes
...
Android: Add export option for custom theme attributes
2025-05-26 11:24:42 -05:00
Anish Mishra
e084e479bf
Fix Android editor UI
2025-05-25 22:59:41 +05:30
Anish Mishra
a89f083ffa
Fix `OS.get_version()` on Android.
2025-05-25 21:17:07 +05:30
kojurohan42
12ad9ed4e0
Add support for exporting to Google Play Instant
2025-05-23 22:00:14 +05:45
Travis Lange
a350e01dc7
Fix ios and android plugin always invalid due to null ConfigFile
2025-05-23 11:41:13 -04:00
Anish Mishra
0312a0cc9e
Android: Add export option for custom theme attributes
...
- Regenerates the `GodotAppMainTheme` and `GodotAppSplashTheme` during Android export. Any manual changes to these styles will be cleared and replaced with default theme attributes.
- Adds a new export option `gradle_build/custom_theme_attributes` for injecting custom theme attributes directly via the export window, avoiding the need to manually modify themes.xml.
2025-05-23 20:00:47 +05:30
Thaddeus Crews
7951a1bb87
Merge pull request #106359 from m4gr3d/remove_compress_native_libs_option
...
Remove the `gradle_build/compress_native_libraries` export option
2025-05-21 09:06:25 -05:00
Rémi Verschelde
25a3c27c41
Merge pull request #105628 from rsanchezsaez/apple/ios-visionos-4.5
...
Native visionOS platform support
2025-05-20 23:09:07 +02:00
Ricardo Sanchez-Saez
457299449d
Introduce 'drivers/apple_embedded' abstract platform for code reuse
2025-05-19 15:37:13 -07:00
Fredia Huya-Kouadio
ec7fb37db1
Update to the AAB directory layout
...
Follow-up to https://github.com/godotengine/godot/pull/106152 to address the regression described in https://github.com/godotengine/godot/issues/106582
2025-05-19 10:50:43 -07:00
Thaddeus Crews
596a8eb54c
Merge pull request #106462 from shiena/fix/prevent-camera-permission
...
Android: Don't request `CAMERA` permission on editor startup
2025-05-16 07:43:14 -05:00
Thaddeus Crews
5620a215a1
Merge pull request #106021 from Alex2782/fix_xbox_controller_on_android
...
Fix Xbox Controller on Android
2025-05-16 07:43:09 -05:00
Fredia Huya-Kouadio
1b0bd35f09
Update the GodotOpenXR meta-data removal logic
...
Godot OpenXR Vendor plugin version 4.0.0-stable changed the plugin's manifest declaration, so this updates the logic to remove that manifest declaration to match.
2025-05-15 16:38:11 -07:00
Fredia Huya-Kouadio
773fc96ab2
Update the logic to validate the java version
...
Loosen the check to allow Java version >= 17
2025-05-15 16:28:07 -07:00
KOGA Mitsuhiro
64e2c31c10
Android: Don't request CAMERA permission on editor startup
2025-05-16 06:45:37 +09:00
Fredia Huya-Kouadio
e3d60bbd0c
Remove the option to compress Android native libraries
...
Follow-up to https://github.com/godotengine/godot/pull/106358 , this is a separate commit / PR since it shouldn't be cherry-picked in previous releases as it removes existing functionality.
Support for 16kb page size added in the previous PR requires the native libraries to be uncompressed, so we're deprecating and removing the option to compress native libraries.
See https://developer.android.com/guide/practices/page-sizes#agp_version_851_or_higher for more details.
2025-05-15 08:41:46 -07:00
Thaddeus Crews
82ea0b9293
Merge pull request #106358 from m4gr3d/update_ndk_28
...
[Android] Add support for 16 KB page sizes, update to NDK r28b
2025-05-15 10:22:27 -05:00
Rémi Verschelde
8851c5a54d
Android: Re-add `generate_apk` alias for compatibility
2025-05-15 12:42:29 +02:00
Fredia Huya-Kouadio
27bdc86ed1
Bump the NDK to version 28.1.13356709
...
Doing so automatically adds support for 16kib page to the Godot Android shared libraries.
See https://developer.android.com/guide/practices/page-sizes#compile-16-kb-alignment for details.
2025-05-13 08:27:36 -07:00
Leo de Penning
296ca79b9d
Add CameraFeed support for Android
...
Co-authored-by: KOGA Mitsuhiro <shiena.jp@gmail.com>
2025-05-13 22:46:06 +09:00
Rémi Verschelde
cc07dc4273
Merge pull request #106288 from raulsntos/android/store_so_uncompressed
...
[Android] Store native libraries uncompressed in APK
2025-05-13 01:05:27 +02:00
Rémi Verschelde
c1d3746a67
Merge pull request #105992 from uno1982/4.5-dev-fix-android-controller
...
Fix issues with Android controller input handling
2025-05-13 01:04:52 +02:00
Raul Santos
6464347157
[Android] Store native libraries uncompressed in APK
2025-05-11 21:02:44 +02:00
Fredia Huya-Kouadio
c29545f793
Bump the minimum supported SDK version to 24
...
Raise the minimum supported Android version from Android 5 (Lollipop) to Android 7 (Nougat).
2025-05-08 09:45:32 -04:00
Fredia Huya-Kouadio
4b4144cc39
Annual versions bump for the Android platform
...
- gradle: 8.2 -> 8.11.1
- androidx.constraintlayout:constraintlayout: 2.1.4 -> 2.2.1
- Android gradle plugin: 8.2.0 -> 8.6.1
- Android compile sdk: 34 -> 35
- Android target sdk: 34 -> 35
- Android build tools: 34.0.0 -> 35.0.0
- kotlin: 1.9.20 -> 2.1.20
- androidx.fragment:fragment: 1.7.1 -> 1.8.6
- OpenXR vendors plugin: 3.1.2-stable -> 4.0.0-stable
2025-05-07 13:14:49 -04:00
Alexander Hartmann
cf00265386
Fix Xbox Controller on Android
2025-05-03 01:09:05 +02:00
Thaddeus Crews
01fc9aee6c
Core: Modernize C headers with C++ equivalents
2025-05-02 08:23:01 -05:00
uno1982
5ce11b1eac
Fix for ps4 and ps5 controller options and share buttons
2025-05-01 11:30:02 -05:00
lawnjelly
f8f350a32a
Add `GLOBAL_GET` cached macros.
...
GLOBAL_GET is an expensive operation which should not be used each frame / tick.
This PR adds macros which do a cheaper revision check, and only call the expensive GLOBAL_GET when project settings have changed.
Co-authored-by: Lukas Tenbrink <lukas.tenbrink@gmail.com>
2025-04-30 15:08:50 +01:00
Anish Mishra
f8e935d406
Enable close button on PicoOS
2025-04-29 22:38:37 +05:30
Fredia Huya-Kouadio
ccf61650bd
Use `separate_debug_symbols` to control generation of the separate Android debug symbols file
2025-04-28 08:33:12 -07:00
Thaddeus Crews
2242bf9b3d
Merge pull request #105697 from akien-mga/scons-x86_32-mfpmath-sse
...
SCons: Explicitly enable `-mfpmath=sse -mstackrealign` for x86_32
2025-04-28 10:01:31 -05:00
Thaddeus Crews
5c9f93ce03
SCons: Begin decoupling generation & build code
2025-04-25 08:23:01 -05:00
Thaddeus Crews
760fb30b83
Merge pull request #105611 from m4gr3d/upgrade_android_tools_main
...
Update the Android NDK to the latest LTS version (r27c)
2025-04-24 09:09:27 -05:00