summaryrefslogtreecommitdiffstats
path: root/platform/android/export/export.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Style: Harmonize header includes in platform portsRémi Verschelde2023-06-081-1/+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.
* [Export] Add readable descriptions and validation warnings to the export ↵bruvzg2023-04-191-0/+4
| | | | options.
* 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".
* Disable menus and functionality that are not relevant on the Android Editor portFredia Huya-Kouadio2022-09-131-0/+2
|
* Split up editor export code into multiple filesAaron Franke2022-07-261-2/+2
|
* Cleanup Android C++ codeMarcel Admiraal2022-05-311-5/+0
|
* Editor: Cleanup some includes dependenciesRémi Verschelde2022-02-151-0/+3
| | | | | | | | | | | Removes some unnecessary includes from `editor_node.h`, and instead add those where they're used. Removes unnecessary `editor_node.h` includes in various editor classes. Renames `dynamicfont` to `dynamic_font` in a couple files. Misc cleanup while jumping through that rabbit hole.
* Update copyright statements to 2022Rémi Verschelde2022-01-031-2/+2
| | | | Happy new year to the wonderful Godot community!
* Move the Android "clear previous install" setting to Editor SettingsHugo Locurcio2021-08-161-0/+2
| | | | | This means the setting now applies to every project deployed from the editor, rather than being per-export preset.
* Split android platform export template into multiple filesSergey Minakov2021-08-121-3015/+1
|
* Make progress and errors translatable when exporting to AndroidHaoyu Qiu2021-08-011-30/+29
|
* Fix custom build exportFredia Huya-Kouadio2021-07-271-0/+2
|
* Addes ability to load build sources from file.reduz2021-07-151-2/+1
| | | | | | | * If not present, the dialog asks to load build sources from a file. * The export templates check now also verifies that build sources are installed and skips the template check. This makes Android development easier.
* Android: Add `isGame` application attribute, default to trueRémi Verschelde2021-07-011-0/+6
| | | | | | | | | | | | | | It can be turned off in the export preset with `package/classify_as_game`. Upstream definition: https://developer.android.com/guide/topics/manifest/application-element#isGame > `android:isGame` > > Whether or not the application is a game. The system may group together > applications classifed as games or display them separately from other > applications. Also fixes replacing `android:allowBackup` in custom builds.
* Add GDNative libraries to Android custom Gradle buildsMarcel Admiraal2021-06-291-1/+66
|
* Add support for custom debug keystore.ne0fhyk2021-06-221-12/+28
|
* Rename `instance()`->`instantiate()` when it's a verbLightning_A2021-06-191-7/+7
|
* Add adb output to error message when install failsMarcel Admiraal2021-06-191-1/+1
|
* Merge pull request #49123 from aaronfranke/it-is-timeRémi Verschelde2021-06-121-2/+2
|\ | | | | Add a Time singleton
| * Add Time singletonAaron Franke2021-06-111-2/+2
| |
* | Core: Move DirAccess and FileAccess to `core/io`Rémi Verschelde2021-06-111-2/+2
|/ | | | | File handling APIs are typically considered part of I/O, and we did have most `FileAccess` implementations in `core/io` already.
* Merge pull request #48963 from ↵Rémi Verschelde2021-06-011-0/+14
|\ | | | | | | | | HaywardMorihara/export-android-keystore-debug-warnings Exporting -> Android: Keystore Warnings
| * Exporting: Android Debug Keystore WarningsNathaniel Morihara2021-05-241-0/+14
| |
* | Implement shader cachingreduz2021-05-311-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | * Shader compilation is now cached. Subsequent loads take less than a millisecond. * Improved game, editor and project manager startup time. * Editor uses .godot/shader_cache to store shaders. * Game uses user://shader_cache * Project manager uses $config_dir/shader_cache * Options to tweak shader caching in project settings. * Editor path configuration moved from EditorSettings to new class, EditorPaths, so it can be available early on (before shaders are compiled). * Reworked ShaderCompilerRD to ensure deterministic shader code creation (else shader may change and cache will be invalidated). * Added shader compression with SMOLV: https://github.com/aras-p/smol-v
* | Allow basic user data backup on AndroidPedro J. Estébanez2021-05-251-0/+8
|/
* Use an enum to represent screen orientation in the Project SettingsHugo Locurcio2021-05-241-1/+2
| | | | | | | | | | | | - Tweak the setting property hint to be more informative. - Make the setting a "basic" setting so it appears when Advanced Settings is disabled. - Remove redundant orientation setting in the iOS export preset. The project setting is now used (like on Android). Projects upgrading from a previous version will have to set the screen orientation again in the Project Settings if it wasn't set to the default value ("landscape").
* Core: Drop custom `copymem`/`zeromem` definesRémi Verschelde2021-04-271-1/+1
| | | | | | | | We've been using standard C library functions `memcpy`/`memset` for these since 2016 with 67f65f66391327b2967a20a89c3627e1dd6e84eb. There was still the possibility for third-party platform ports to override the definitions with a custom header, but this doesn't seem useful anymore.
* Remove deprecated xr features properties. These properties are now provided ↵Fredia Huya-Kouadio2021-04-261-49/+0
| | | | directly by the plugin.
* Fix issue causing export to fail with "Could not unzip temporary unaligned ↵Fredia Huya-Kouadio2021-04-151-10/+28
| | | | APK" error and improve command output logging.
* Fix custom boot splash image scaling.Fredia Huya-Kouadio2021-04-121-7/+23
|
* Style: Apply clang-tidy's `readability-braces-around-statements`Rémi Verschelde2021-04-051-3/+5
|
* Style: Apply clang-tidy's `modernize-use-nullptr`Rémi Verschelde2021-04-051-4/+4
|
* Merge pull request #46457 from m4gr3d/fix_invalid_missing_templates_error_masterRémi Verschelde2021-02-271-7/+10
|\ | | | | Fix invalid missing template error when the Android build template is not installed
| * Fix invalid missing template error when the Android build template is not ↵Fredia Huya-Kouadio2021-02-261-7/+10
| | | | | | | | installed.
* | Update the logic to load Godot Android plugins packaged into the binary.Fredia Huya-Kouadio2021-02-261-9/+1
|/ | | | The previous logic had the side effect of imposing a limit of one plugin per `aar` binary. The update lifts that restriction.
* Update the filtering logic to properly handle directories with `.gdignore` ↵Fredia Huya-Kouadio2021-02-241-0/+3
| | | | files.
* Add logic to record the version of the Godot engine for the Android platform.Fredia Huya-Kouadio2021-02-241-0/+1
|
* Merge pull request #45617 from RandomShaper/modernize_atomicsRémi Verschelde2021-02-181-19/+19
|\ | | | | Modernize atomics (and fix `volatile`)
| * Modernize atomicsPedro J. Estébanez2021-02-181-19/+19
| | | | | | | | | | | | | | | | | | | | - Based on C++11's `atomic` - Reworked `SafeRefCount` (based on the rewrite by @hpvb) - Replaced free atomic functions by the new `SafeNumeric<T>` - Replaced wrong cases of `volatile bool` by the new `SafeFlag` - Platform-specific implementations no longer needed Co-authored-by: Hein-Pieter van Braam-Stewart <hp@tmm.cx>
* | Reorganize Project Settingsreduz2021-02-181-1/+1
| | | | | | | | | | | | | | -Advanced Settings toggle also hides advanced properties when disabled -Simplified Advanced Bar (errors were just plain redundant) -Reorganized rendering quality settings. -Reorganized miscelaneous settings for clean up.
* | Disable engine splash logic on Android; this is now handled by the Android ↵Fredia Huya-Kouadio2021-02-181-4/+29
|/ | | | | | | theme api. In addition, add support for scaling and applying filter to the splash screen on Android. One limitation of the api being used is that the splash screen aspect ratio is not maintained when it's scaled up.
* Add verbose logging to help with troubleshooting the Android build/export ↵Fredia Huya-Kouadio2021-02-171-3/+71
| | | | process.
* Modernize ThreadPedro J. Estébanez2021-01-291-4/+3
| | | | | | | | | - Based on C++11's `thread` and `thread_local` - No more need to allocate-deallocate or check for null - No pointer anymore, just a member variable - Platform-specific implementations no longer needed (except for the few cases of non-portable functions) - Simpler for `NO_THREADS` - Thread ids are now the same across platforms (main is 1; others follow)
* [Plugins] Rename 'PluginConfig' struct to platform specific nameSergey Minakov2021-01-151-15/+15
|
* Split OS::execute into two methodsMarcel Admiraal2021-01-091-11/+11
| | | | | 1. execute(): Executes a command and returns the results. 2. create_process(): Creates a new process and returns the new process' id.
* Merge pull request #44645 from m4gr3d/update_apk_signing_logicRémi Verschelde2021-01-011-80/+130
|\ | | | | Update the logic to sign prebuilt Godot Android apks
| * Update the logic to sign prebuilt Godot Android apks.Fredia Huya-Kouadio2021-01-011-80/+130
| | | | | | | | | | | | | | The previously used tool, `jarsigner` has been deprecated in favor of `apksigner` which is bundled with the Android SDK. The logic is refactored accordingly and a few editor settings have been deprecated in the process as they're no longer necessary. Note: As a side effect, specifying the Android SDK path is now required. The docs will be updated to reflect that change.
* | Update copyright statements to 2021Rémi Verschelde2021-01-011-2/+2
|/ | | | | | | | | | | | | | Happy new year to the wonderful Godot community! 2020 has been a tough year for most of us personally, but a good year for Godot development nonetheless with a huge amount of work done towards Godot 4.0 and great improvements backported to the long-lived 3.2 branch. We've had close to 400 contributors to engine code this year, authoring near 7,000 commit! (And that's only for the `master` branch and for the engine code, there's a lot more when counting docs, demos and other first-party repos.) Here's to a great year 2021 for all Godot users 🎆
* Merge pull request #44638 from m4gr3d/export_format_util_methodRémi Verschelde2020-12-301-17/+24
|\ | | | | Hardcode the export format for the editor 'run' feature
| * Add utility method to export the project using a preset format and sign ↵Fredia Huya-Kouadio2020-12-291-17/+24
| | | | | | | | parameter.