1
0
Fork 0
Commit Graph

778 Commits

Author SHA1 Message Date
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
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
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
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
kojurohan42 12ad9ed4e0 Add support for exporting to Google Play Instant 2025-05-23 22:00:14 +05:45
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
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
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 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
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
uno1982 5ce11b1eac Fix for ps4 and ps5 controller options and share buttons 2025-05-01 11:30:02 -05:00
Anish Mishra f8e935d406 Enable close button on PicoOS 2025-04-29 22:38:37 +05:30
Fredia Huya-Kouadio fac2ebed78 Update the project NDK to the latest LTS version (r27c) 2025-04-22 19:43:59 -07:00
Fredia Huya-Kouadio 8a514ae56f Enable native debug symbols generation 2025-04-22 09:04:49 -07:00
Thaddeus Crews 485406b5e0
Merge pull request #104819 from m4gr3d/setup_godot_tools_lib_maven_central
Add maven publishing configuration for Godot tools
2025-04-16 10:45:14 -05:00
Thaddeus Crews 9906016959
Merge pull request #105301 from syntaxerror247/fix-decimal-keyboard
Android: Fix decimal keyboard
2025-04-15 12:28:46 -05:00
Anish Mishra 8f0a642f6c Android: Fix Decimal keyboard 2025-04-15 08:09:37 +05:30
Thaddeus Crews 4972a524fc
Merge pull request #96139 from Alex2782/reverting_pr_84331
Add configuration option to disable `Scroll Deadzone` on Android
2025-04-11 09:51:08 -05:00
Alex cd68034e01 Add configuration option to disable `Scroll Deadzone` on Android 2025-04-07 22:15:31 +02:00
Anish Mishra b462db5adb Android: Hardware keyboard connection status callback
Adds a DisplayServer method to register hardware keyboard connection change callback.
2025-04-05 08:14:29 +05:30
Fredia Huya-Kouadio 19700dacdf Add maven publishing configuration for Godot tools
The Godot Android library on MavenCentral is a `template` build; this updated configuration adds a new 'Godot Tools' publishing artifact, allowing developers access to the `editor` build of the Godot Android library.
2025-03-31 10:29:06 -07:00
Rémi Verschelde e9d827b440
Merge pull request #103173 from m4gr3d/fix_prebuilt_manifest_config
Updates and fixes to the Android prebuilt export logic
2025-03-28 14:31:57 +01:00
Anish Mishra afe68f672f Add support for "Mute Game" toggle in the Android Editor 2025-03-21 01:33:38 +05:30
Fredia Huya-Kouadio 845c925b67 Add support for export plugins to modify the Android prebuilt manifest 2025-03-14 16:05:09 -07:00
Thaddeus Crews e9e4760335
Merge pull request #83538 from bruvzg/size_and_at
[FileAccess] Implement `get_size` and `get_access_time` methods.
2025-03-11 14:00:58 -05:00
Thaddeus Crews 56bc9bc2f4
Merge pull request #102984 from syntaxerror247/volume-buttons
Android: enable support for volume button events
2025-03-11 09:34:46 -05:00
bruvzg 85d3be8070
[FileAccess] Implement `get_size` and `get_access_time` methods. 2025-03-09 16:07:00 +02:00
Rémi Verschelde c301b2ad9a
Merge pull request #103419 from Alex2782/fix_issue_96770
Fix crash after changing device language
2025-03-04 01:02:27 +01:00
Alex 1c02316365 Fix crash after changing device language
The app was restarting unexpectedly due to missing configChanges flags.
Added "locale|layoutDirection" to AndroidManifest.xml to prevent activity recreation.
2025-03-01 02:42:56 +01:00
Fredia Huya-Kouadio bea6472ea4 Fix Android mouse capture issues
- Allow mouse capture to be enabled in `_ready`
- Update the input handler logic to avoid dropping mouse captured motion events
2025-02-28 13:54:30 -08:00
Anish Mishra 5ce16dfc69 Android: enable support for volume button events
- Enable events KEY_VOLUMEUP and KEY_VOLUMEDOWN on Android.

- Adds a project setting to override volume buttons. It would disable system volume changes when the buttons are used within the project.
2025-02-28 09:47:22 +05:30
Anish Mishra 28d1dccf63
Android: Fix export and runtime logic to check if using Vulkan
Also fix iOS export logic that would force a min target of iOS 14.0 (for Metal)
even when targeting the Compatibility renderer.

Co-authored-by: Pāvels Nadtočajevs <7645683+bruvzg@users.noreply.github.com>
2025-02-23 12:28:59 +01:00
Rémi Verschelde 545ca2538e
Merge pull request #103122 from syntaxerror247/fix-crash
Android: Fix excessive `getRotation` calls
2025-02-23 12:13:02 +01:00
Anish Mishra ee4e809d4c Android: Fix excessive getRotation calls 2025-02-21 20:32:54 +05:30
Anish Mishra 129ffce06a Android Editor: Fix expand button black bar issue 2025-02-21 13:00:49 +05:30
Rémi Verschelde 3787cc4901
Merge pull request #102802 from syntaxerror247/fix_orientation_handling
Android Editor: Fix embed mode orientation handling
2025-02-13 23:35:12 +01:00
Anish Mishra 4a22e007f6 Android Editor: Fix embed mode orientation handling 2025-02-13 22:22:50 +05:30
Fredia Huya-Kouadio 8ed8b4a89d Bump the version of the openxr vendors plugin dependency 2025-02-12 09:51:07 -08:00
Fredia Huya-Kouadio 2a66335ec2 Address API regression from https://github.com/godotengine/godot/pull/101050 2025-02-11 10:19:47 -08:00
Fredia Huya-Kouadio 7495a8a02e Add support for embedding game process in the Android Editor
- Implement Android editor specific `EmbeddedGodotGame` to support embedding the game window in the Android editor
2025-02-11 02:20:18 -08:00
Thaddeus Crews c90fd7f3da
Merge pull request #98066 from TCROC/fix-android-mono-export
Fix Android mono export with 2 or more cpu architectures fails
2025-02-10 12:21:32 -06:00
Travis Lange 5e2fd7b1d7 fix android mono export causing conflicts 2025-02-10 10:09:52 -05:00
Anish Mishra b89957efce Android: Add Snackbar UI component 2025-02-08 22:09:46 +05:30
Fredia Huya-Kouadio 9e4365f1a7 Export the `rendering/renderer/rendering_method.mobile` project setting to the AndroidManifest
The AndroidManifest already stores the Godot editor and library versions. The addition of this meta-data allows to identify Godot Android apps that may be subject to renderer specific issues addressed in future versions of the engine.
2025-02-04 21:11:56 -08:00
Thaddeus Crews b0655dc86f
Merge pull request #101050 from jamie-pate/fix_android_godot_app_create_instance
Fix create_instance in android GodotApp so non-editor apps can restart
2025-01-22 16:32:29 -06:00
Thaddeus Crews 24fb28af55
Merge pull request #101689 from syntaxerror247/native-dialogs
Make dialogs non-cancelable on Android
2025-01-20 10:05:43 -06:00
Jamie Pate 605b97075f Fix create_instance in android GodotApp so non-editor apps can restart
Enables OS.create_instance(args) and OS.set_restart_on_exit(true, args)
on android.

Borrowed the logic from the editor, so it completely restarts the
process so you can pass --rendering-method, --rendering-driver to switch
between forward_plus, mobile, gl_compatibility etc on an exported app.

Related:
https://github.com/godotengine/godot-proposals/issues/6423
2025-01-19 03:23:45 -08:00
Anish Mishra 401310d74d
Make dialogs non-cancelable on Android. 2025-01-17 19:45:34 +05:30
Fredia Huya-Kouadio b4f25b1863 Clean up the XR editor logic
- Coalesce common logic into the `main` flavor to avoid duplication
- Code cleanup
2025-01-16 09:40:30 -08:00
Rémi Verschelde 4d1cfc1784 Merge pull request #101061 from syntaxerror247/first-pr-2025
Android: Implement support for `native dialog`
2025-01-14 15:05:59 +01:00
Anish Mishra cb9ee099ac Android: Implement support for native dialog
This adds support for DisplayServer::dialog_show() on Android, aligning it with the functionality already available on macOS and Windows.
2025-01-14 15:03:14 +05:30
Anish Mishra 867ae4d85a Update Android editor name and add missing icons 2025-01-14 13:46:45 +05:30
Rémi Verschelde b7c0a0fbd1 Merge pull request #101387 from picoxr/add-picoos-immersivemode
Add PICO OS Immersive Mode
2025-01-13 20:22:11 +01:00
ygz-bd a2bfb7cff2 Enable XR Preview Mode for PICO OS
Supported features in the immersive preview mode
- Passthrough
- Hand tracking
Notes:
- Multi-window is only available for internal apps on PICO OS, therefore launching adjacent windows is not possible currently.
- Passthrough splash screen is not supported on PICO OS
2025-01-13 16:34:22 +00:00
Fredia Huya-Kouadio 4bc8918c19 Add support for specifying whether to play the current scene or a specific scene in XR or regular mode
The functionality is only activated for the XR Editor, when a project has OpenXR enabled.
2025-01-12 22:02:24 -08:00
Anish Mishra d7532f0d31
Android Editor: Fix themed icon 2025-01-06 19:14:00 +05:30
Fredia Huya-Kouadio 7ad9d23a1d Updates how the `REQUEST_INSTALL_PACKAGES` permission is handled
- Only request the permission the first time the editor tries to open an apk
- Disable the permission for the HorizonOS build as the HorizonOS store doesn't support it yet
2024-12-25 20:04:34 -08:00
Thaddeus Crews ff706b8fb8
Merge pull request #100756 from raulsntos/android/fix-aab-path
[Android] Fix path to AAB in copyAndRenameBinary task
2024-12-23 11:15:08 -06:00
Raul Santos d380cb1a6c
[Android] Fix path to AAB in copyAndRenameBinary task 2024-12-22 22:40:36 +01:00
Rémi Verschelde b46103b286
Merge pull request #100601 from syntaxerror247/wear-OS
Add option to disable `Swipe to Dismiss` for Wear OS
2024-12-20 23:56:54 +01:00
Anish Mishra 5d8e2cd63f Add option to disable Swipe-to-Dismiss for Wear OS 2024-12-20 23:21:50 +05:30
Anish Mishra 9deee0097a Fix Android native file picker 2024-12-19 19:31:32 +05:30
Fredia Huya-Kouadio 23cea1b9d2 Additional fixes and improvements to JavaClassWrapper
- Fix crashing bug when invoking class constructor with parameters
- Add support for accessing class constants
- Add support for Godot Callable arguments. A Godot Callable can be wrapped by a Java Runnable to allow Java logic to run arbitrary Godot lambdas
- Automatically convert java.lang.CharSequence to Godot String as needed
- Code cleanup
2024-12-17 18:46:34 -08:00
Rémi Verschelde cb5b1ecc25
Merge pull request #100200 from syntaxerror247/android-base-color
Android: Support for `base color` retrieval
2024-12-18 00:39:45 +01:00
Rémi Verschelde cb0d731daf
Merge pull request #100351 from raulsntos/dotnet/android-gradle-fix
[.NET] Fix gradle builds for multiple ABIs
2024-12-17 22:59:58 +01:00
Rémi Verschelde 66b8101cef
Merge pull request #95460 from m4gr3d/enable_mouse_forward_back_buttons
Enable `BUTTON_FORWARD` and `BUTTON_BACK` mouse buttons on Android
2024-12-17 22:59:20 +01:00
Anish Mishra 70b24c3d16 Android: Support for base color retrieval 2024-12-18 02:14:48 +05:30
Raul Santos d526d523b4
[.NET] Fix gradle builds for multiple ABIs
Include the needed .NET jar in the Godot templates so it's always available, then we don't need to include the jar from a .NET publish which could fail when exporting to multiple architectures because it would attempt to add the same jar for each architecture.
2024-12-13 08:01:13 +01:00
Thaddeus Crews 156bc92282
Merge pull request #98397 from adamscott/add-tmp-support
Add temp utilities (alias `OS::get_temp_dir()`, `FileAccess::create_temp()`, and `DirAccess::create_temp()`)
2024-12-03 14:40:59 -06:00
Thaddeus Crews 6e8c0a43c3
Merge pull request #99378 from syntaxerror247/optional_monochrome_icon
Android: Refactor icon logic and make monochrome icon optional
2024-12-03 14:40:52 -06:00
Adam Scott 1b3e483899
Add file and dir temporary utilities
Co-authored by @Alex2782 for the Android bindings.
Many thanks to the reviewers also.

Co-authored-by: Alex <alex.hart.278@gmail.com>
2024-12-02 12:08:14 -05:00
Anish Mishra f767cf00fd Android: Make monochrome icon optional 2024-12-02 22:04:38 +05:30
Rémi Verschelde a702b69ce7
Merge pull request #98917 from syntaxerror247/immersive-mode-issue
Android: Fix immersive mode issue
2024-12-02 15:50:57 +01:00
bruvzg a4b17e7852 [FileAccess] Return error codes from `store_*` methods. 2024-11-29 23:22:31 +02:00
Thaddeus Crews 150c69c0f2
Merge pull request #99694 from dsnopek/android-os-create-instance-return-value
Android: `OS.create_instance()` should return `-1` on failure
2024-11-27 10:47:30 -06:00
David Snopek 38e0532ffa Android: `OS.create_instance()` should return `-1` on failure 2024-11-25 15:58:06 -06:00
Anish Mishra 57541d53d3 Android: Extension support for native file dialog 2024-11-19 22:16:32 +05:30
Thaddeus Crews a767a65cdf
Merge pull request #99123 from tygyh/Update-vulnerable-plugins
Update JavaScript/Java plugins to solve known vulnerabilities
2024-11-13 08:34:00 -06:00
Thaddeus Crews cb411fa960
Merge pull request #98687 from m4gr3d/disable_swappy_requirement_for_as_debug_builds
Update the `production` build argument for Android Studio debug builds
2024-11-12 12:13:23 -06:00
Dr. Dystopia 3077463151
Update JavaScript/Java plugins to solve known vulnerabilities
Done using the Snyk tool.
2024-11-12 16:06:35 +01:00
Anish Mishra 6fd8d7b634 Android: Update exported app and editor theme 2024-11-08 22:37:52 +05:30
Anish Mishra 6445b6cbdd Android: Fix immersive mode issue 2024-11-07 18:29:25 +05:30
Thaddeus Crews b00e1cbf74
Merge pull request #97631 from m4gr3d/prompt_apk_install_after_generation
[Android editor] Enable automatic install of exported apks for the Android editor
2024-11-04 21:52:08 -06:00
Thaddeus Crews 7d950c1567
Merge pull request #98712 from syntaxerror247/android_accent_color
[Android] Implement support for accent color retrieval
2024-11-04 21:52:04 -06:00