summaryrefslogtreecommitdiffstats
path: root/platform/android/export/export_plugin.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Android: Add option to always use WiFi to connect to remote debugBrennen Shaughnessy2023-08-281-2/+6
|
* Add a button in the export dialog to fix missing texture formatsAaron Franke2023-08-171-3/+2
|
* Merge pull request #80569 from m4gr3d/show_in_app_library_settings_mainRémi Verschelde2023-08-161-0/+1
|\ | | | | | | Add export setting to control whether to show the Godot app in the app library
| * Add export setting to control whether to show the Godot app in the app libraryFredia Huya-Kouadio2023-08-131-0/+1
| |
* | C#: Fix exporting for Androidscgm02023-08-121-8/+5
|/
* Add a "version" project setting and use it in new export presetsHugo Locurcio2023-08-041-5/+5
| | | | | | | | | | This makes it easy to retrieve the project version at runtime for display purposes, while simplifying the export preset configuration. You can now leave the version empty unless you need to override it on a per-preset basis. Since export presets save the values of default values to the `export_presets.cfg` file, this change only affects export presets created after this commit was merged.
* Merge pull request #79351 from Repiteo/dotnet-handle-warningsYuri Sizov2023-07-261-8/+8
|\ | | | | | | C#: Fix MSVC dotnet builds failing if running `dev_mode`
| * Allow MSVC dev_mode builds to succeed with dotnetThaddeus Crews2023-07-171-8/+8
| | | | | | | | • Added #else section to mono #ifdef checks in relevant export_plugin scripts
* | Clean up the XR features parameters from coreFredia Huya-Kouadio2023-07-181-30/+0
| | | | | | | | | | | | Following on the previous commit, the XR features logic have now be moved to the Godot OpenXR loader plugin. See https://github.com/GodotVR/godot_openxr_loaders/pull/38
* | Re-architect how Android plugins are packaged and handled at export timeFredia Huya-Kouadio2023-07-181-26/+139
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous packaging format for Godot Android plugins consisted of the plugin's `gdap` config file accompanied by binaries defined in the `gdap` file. This format is now deprecated (starting with Godot 4.2), and instead Godot Android plugins are now packaged as `EditorExportPlugin` plugins. The `EditorExportPlugin` class has been updated with the following methods to provide the necessary set of functionality: - `_supports_platform`: returns true if the plugin supports the given platform - `_get_android_dependencies`: retrieve the set of android dependencies (e.g: `org.godot.example:my-plugin:0.0.0`) provided by the plugin - `_get_android_dependencies_maven_repos`: retrieve the urls of the maven repos for the provided android dependencies - `_get_android_libraries`: retrieve the local paths of the android libraries (AAR files) provided by the plugin - `_get_android_manifest_activity_element_contents`: update the contents of the `<activity>` element in the generated Android manifest - `_get_android_manifest_application_element_contents`: update the contents of the `<application>` element in the generated Android manifest - `_get_android_manifest_element_contents`: update the contents of the `<manifest>` element in the generated Android manifest
* | Extract and reorganize texture resource classesHendrik Brucker2023-07-141-0/+1
| |
* | Merge pull request #78164 from 0xafbf/allow-export-tv-and-launcherYuri Sizov2023-07-141-0/+2
|\ \ | | | | | | | | | Add options to show icon in Android TV and run app as Android launcher
| * | Add options to show icon in Android TV and run app as Android launcherAndrés Botero2023-06-121-0/+2
| | |
* | | Merge pull request #78248 from felaugmar/load-svg-adjustable-scaleYuri Sizov2023-07-121-3/+2
|\ \ \ | |_|/ |/| | | | | Added `Image::load_svg_from_(buffer|string)`
| * | Added Image's `load_svg_from_(buffer|string)`Felipe Augusto Marques2023-06-231-3/+2
| | | | | | | | | | | | No core dependency to the svg module.
* | | Display a message about missing C# support on Android/iOS/Web platformsHugo Locurcio2023-06-241-1/+9
|/ / | | | | | | | | | | | | When trying to export a C# project, this displays an error message after creating a export preset for an unsupported platform. Support for these platforms is planned for a future release.
* | SCons: Move platform logo/run icon to `export` folderRémi Verschelde2023-06-201-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Follow-up to #75932. Since these icons are only used by the export plugin, it makes sense to move them and generate the headers there. The whole `detect.is_active()` logic seems to be a leftover from before times, as far back as 1.0-stable it already wasn't used for anything. So I'm removing it and moving the export icon generation to `platform_methods`, where it makes more sense.
* | Allow exporting release Android builds without a debug keystoreMichael Alexsander2023-06-191-5/+6
|/
* Style: Harmonize header includes in platform portsRémi Verschelde2023-06-081-2/+2
| | | | | | | | | | | | | | | | This applies our existing style guide, and adds a new rule to that style guide for modular components such as platform ports and modules: Includes from the platform port or module should be included with relative paths (relative to the root folder of the modular component, e.g. `platform/linuxbsd/`), in their own section before Godot's "core" includes. The `api` and `export` subfolders also need to be handled as self-contained (and thus use relative paths for their "local" includes) as they are all compiled for each editor platform, without necessarily having the api/export matching platform folder in the include path. E.g. the Linux editor build will compile `platform/android/{api,export}/*.cpp` and those need to use relative includes for it to work.
* Enhance icon fallback and their docs for exportersMichael Alexsander2023-06-031-1/+0
|
* Store sensitive export options in dedicated credentials fileAndreas Raddau2023-05-101-24/+24
|
* Redo how the remote filesystem worksJuan Linietsky2023-05-081-1/+5
| | | | | | | | | Instead of reading files over the network, the new version uses a local file cache and only updates files when it changes. The original remote filesystem was created 14 years ago, when ethernet was faster than hard drives or even flash. Also, mobile devices have a very small amount of storage. Nowadays, this is no longer the case so the approach is changed to using a persistent cache in the target device. Co-authored-by: m4gr3d
* Fix thread IDs.Juan Linietsky2023-04-241-1/+3
| | | | | | | | | On Linux, thread IDs were not properly assigned with the current approach. The line: `std::thread new_thread(&Thread::callback, _thread_id_hash(thread.get_id()), p_settings, p_callback, p_user);` does not work because the thread ID is not assigned until the thread starts. This PR changes the behavior to use manually generated thread IDs. Additionally, if a thread is (or may have been created) outside Godot, the method `Thread::attach_external_thread` was added.
* [Export] Add readable descriptions and validation warnings to the export ↵bruvzg2023-04-191-112/+130
| | | | options.
* Bump the target SDK version to 33 (Android 13)Fredia Huya-Kouadio2023-03-211-1/+1
|
* Make vulkan level 1 an optional requirementFredia Huya-Kouadio2023-03-191-1/+1
|
* Add feature check to require min Vulkan api version 1.0 on AndroidFredia Huya-Kouadio2023-02-281-0/+5
|
* Android: Default Min SDK to 24 for Vulkan mobileRémi Verschelde2023-02-151-6/+6
| | | | | | | | | Users can still go down to 21 when using GL Compatibility. This makes the default behavior match the default renderer, and thus avoids a warning in the out of the box experience. Also mark texture compression settings as basic, since out of the box users who want to export to Android will need to enable ETC2/ASTC manually.
* Merge pull request #72552 from m4gr3d/cleanup_custom_build_mainRémi Verschelde2023-02-061-33/+33
|\ | | | | | | Rename Godot's 'custom build' to 'gradle build' to better reflect the underlying build process
| * Rename Godot's 'custom build' to 'gradle build' to better reflect the ↵Fredia Huya-Kouadio2023-02-021-33/+33
| | | | | | | | underlying build process.
* | Improve logic to detect whether vulkan is used for renderingFredia Huya-Kouadio2023-02-061-6/+9
| |
* | Improve vulkan capability detection on AndroidFredia Huya-Kouadio2023-02-051-0/+23
|/ | | | | - Add runtime check and abort when the device doesn't meet the requirements for vulkan support - Add filters to the AndroidManifest when exporting with a vulkan renderer
* Clean up the XR export logicFredia Huya-Kouadio2023-02-011-40/+6
| | | | | | Remove the XR export logic from the legacy build system: - On Android, Godot 4 export requires the use of Android plugins which are not supported by the legacy build system - Provides added flexibility for configuring the Android manifest for XR specific capabilities.
* Implement file provider capabilitiesFredia Huya-Kouadio2023-02-011-0/+4
| | | | The previously used file sharing api was restricted after Android N causing the engine to crash whenever used on devices running Android N or higher.
* Refactor high quality texture importJuan Linietsky2023-01-301-0/+1
| | | | | | | | | | | | | | | * Only two texture import modes for low/high quality now: * S3TC/BPTC * ETC2/ASTC * Makes sense given this is the general preferred and most compatible combination in most platforms. * Removed lossy_quality from VRAM texture compression options. It was unused everywhere. * Added a new "high_quality" option to texture import. When enabled, it uses BPTC/ASTC (BC7/ASTC4x4) instead of S3TC/ETC2 (DXT1-5/ETC2,ETCA). * Changed MacOS export settings so required texture formats depend on the architecture selected. This solves the following problems: * Makes it simpler to import textures as high quality, without having to worry about the specific format used. * As the editor can now run on platforms such as web, Mac OS with Apple Silicion and Android, it should no longer be assumed that S3TC/BPTC is available by default for it.
* Update the XR manifest configsFredia Huya-Kouadio2023-01-271-5/+0
| | | | | Remove the ones provided automatically by the loaders, and the ones enabled by the default on the platform. Fixes https://github.com/GodotVR/godot_openxr_loaders/issues/19
* [Android export] Added validation of the project name when using $genname in ↵S.V.I. Vilcrow2023-01-201-5/+30
| | | | the 'Unique Name' field.
* Merge pull request #63312 from bruvzg/one_clickRémi Verschelde2023-01-131-4/+19
|\ | | | | | | [Export] Add one-click deploy over SSH for the desktop exports.
| * [Export] Add one-click deploy over SSH for the desktop exports.bruvzg2022-12-291-4/+19
| | | | | | | | | | | | Add one-click deploy over SSH for the desktop exports. Add ZIP export option for Linux and Windows. Change export plugin icons to SVG format.
* | Fix writing value for hand-tracking V2.0 to AndroidManifest.xmlTom Beckmann2023-01-111-1/+1
| |
* | One Copyright Update to rule them allRémi Verschelde2023-01-051-29/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As many open source projects have started doing it, we're removing the current year from the copyright notice, so that we don't need to bump it every year. It seems like only the first year of publication is technically relevant for copyright notices, and even that seems to be something that many companies stopped listing altogether (in a version controlled codebase, the commits are a much better source of date of publication than a hardcoded copyright statement). We also now list Godot Engine contributors first as we're collectively the current maintainers of the project, and we clarify that the "exclusive" copyright of the co-founders covers the timespan before opensourcing (their further contributions are included as part of Godot Engine contributors). Also fixed "cf." Frenchism - it's meant as "refer to / see".
* | Merge pull request #63483 from qianjunakasumi/qianjunakasumi/masterRémi Verschelde2023-01-031-3/+7
|\ \ | |/ |/| | | Introduce `appCategory` attribute of android to set category
| * Introduce `appCategory` attribute of android to set category千橘 雫霞2023-01-011-3/+7
| |
* | Merge pull request #67668 from nikitalita/apk-signerRémi Verschelde2022-12-231-20/+108
|\ \ | | | | | | | | | Improve get_apksigner_path() robustness
| * | improve get_apksigner_path() robustnessnikitalita2022-10-201-20/+108
| | |
* | | Rename all gdnative occurences to gdextensionGilles Roudière2022-12-121-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Non-exhaustive list of case-sensitive renames: GDExtension -> GDNative GDNATIVE -> GDEXTENSION gdextension -> gdnative ExtensionExtension ->Extension (for where there was GDNativeExtension) EXTENSION_EXTENSION ->EXTENSION (for where there was GDNATIVE_EXTENSION) gdnlib -> gdextension gdn_interface -> gde_interface gdni -> gde_interface
* | | Use system fonts as fallback and improve system font handling.bruvzg2022-12-041-2/+2
| | | | | | | | | | | | | | | | | | | | | Add support for font weight and stretch selection when using system fonts. Add function to get system fallback font from a font name, style, text, and language code. Implement system font support for Android. Use system fonts as a last resort fallback.
* | | Updating the minimum Android target api for proper Vulkan supportFredia Huya-Kouadio2022-11-301-1/+1
| | |
* | | Fix periods in editor strings and messagesHugo Locurcio2022-11-141-9/+9
| | | | | | | | | | | | | | | | | | - Ensure all strings with ellipsis end with 3 periods instead of 2. - Fix extraneous period in "Error calling from signal '...' to callable" messages.
* | | [Android] Fix GDExtension export and loading.bruvzg2022-11-081-35/+57
| | |