summaryrefslogtreecommitdiff
path: root/platform/android
AgeCommit message (Collapse)Author
2019-04-06Use mix rate and output latency constants in audio driversRémi Verschelde
Fix default mix rate in Xaudio2 and potential shadowing issue in JAndroid.
2019-04-05Restructuring glue code to make it easier to extendBastiaan Olij
2019-04-02Enable warnings=extra on clang and GCC testers.marxin
And remove 2 warnings from warnings=extra.
2019-03-08Request Android record permission when neededDESKTOP-3H3MR3A\eloisa
2019-03-07Define android/modules globally so it appears in Project SettingsRémi Verschelde
Until now people had to add it manually to project.godot to load custom modules.
2019-03-06Restart game on GL context loss on AndroidPedro J. Estébanez
Bonus: Remove useless old code about reload hooks Fixes #22955.
2019-03-06Fix directory check when exporting projectvolzhs
Fix #26702
2019-03-06Merge pull request #26633 from akien-mga/driver-fallback-etcRémi Verschelde
Disable driver fallback to GLES2 by default
2019-03-05Fixes misleading error message when trying to exportRicardo Lüders
This patch fixes the misleading error message when users try to "export all" into an invalid destination path. Closes #26539
2019-03-05Disable driver fallback to GLES2 by defaultRémi Verschelde
GLES2 is not designed to be a drop-in replacement for the GLES3 backend, so the fallback mode has to be used knowingly. It *can* make sense for simple projects which make sure to handle the differences between both rendering backends, but most users should stick to one supported backend. By making it opt-in, we can now use this parameter to define whether to export ETC textures to Android and iOS when using GLES3 + Fallback. When using GLES3 without Fallback on Android, set the proper min GLES version in the AndroidManifest. Also made the option boolean and renamed it for clarity and to avoid conflict with the previous String option (which would always evaluate as "true" otherwise). Fixes #26569.
2019-03-03Improve VRAM texture compression checks for mobile/webRémi Verschelde
For HTML5, we need to support S3TC if running on desktop, and ETC or ETC2 for mobile, so make this explicit. Add logic to check for ETC2 support on GLES3, and remove incorrect ETC feature for GLES3 on Android. Fix ETC check invalidating templates on HTML5. Fixes #26476.
2019-03-02SCons: Move platform-specific Opus config to its moduleRémi Verschelde
2019-03-01Merge pull request #26353 from ivanarh/android_hide_keyboard_crashRémi Verschelde
Android: Fixed a possible crash in keyboard hide method.
2019-02-28Implement Audio Input support on AndroidMarcelo Fernandez
2019-02-27Android: Fixed a possible crash in keyboard hide method. It's called not ↵Ivan Ponomarev
from main thread so InputMethodManager can't be used directly.
2019-02-27Android: Fixed problems with memory leaks due to absent ↵Ivan Ponomarev
ReleaseStringUTFChars calls.
2019-02-26-Properly handle missing ETC support on exportJuan Linietsky
-Added ability for resource importers to save metadata -Added ability for resource importers to validate depending on project settings
2019-02-26-Remove harcoded opengl extension testing from OS, ask rasterizer instead.Juan Linietsky
-Fixed a bug where etc textures were imported broken
2019-02-20Add -Wshadow=local to warnings and fix reported issues.marxin
Fixes #25316.
2019-02-12Platform: Ensure classes match their header filenameRémi Verschelde
Also drop some unused files. Renamed: - `platform/iphone/sem_iphone.h` -> `semaphore_iphone.h` (same for `osx`) - `platform/uwp/gl_context_egl.h` -> `context_egl_uwp.h` - in `platform/windows`: `context_gl_win.h`, `crash_handler_win.h`, `godot_win.cpp`, `joypad.h` and `key_mapping_win.h` all renamed to use `windows`. Some classes renamed accordingly too. - `EditorExportAndroid` and `EditorExportUWP` renamed to `EditorExportPlatformAndroid` and `EditorExportPlatformUWP` - `power_android` and `power_osx` renamed to `PowerAndroid` and `PowerOSX` - `OSUWP` renamed to `OS_UWP` Dropped: - `platform/windows/ctxgl_procaddr.h`
2019-01-26Fix code style issuesRémi Verschelde
2019-01-25Improve custom thread numbering for POSIXIgnacio Etcheverry
We lazily assign new IDs to threads that do not have one. This is the case for threads not created by the Godot API.
2019-01-21Add function to obtain filesystem type from DirAccess.Juan Linietsky
Change EditorFileSystem to not use directory modification times on FAT32, fixes #20946
2019-01-21ExportDialog: Make error messages translatableRémi Verschelde
Also fix missing newlines that caused #24202.
2019-01-16Android: Enable arm64-v8a export by defaultRémi Verschelde
From August 1, 2019, Google Play requires that all new apps and app updates include 64-bit versions, so we enable ARM64 by default. IINM support for x86 and x86_64 is still be optional, so not enabling them out of the box. Part of #25030.
2019-01-16SCons: Drop unused MPC_FIXED_POINT defineRémi Verschelde
2019-01-16Android: Add support for x86_64 architectureRémi Verschelde
Like arm64v8, this is only supported by API 21 and later, so we enforce 21 as min API for x86_64. Part of #25030.
2019-01-15Fix Android keep screen on working properlyvolzhs
2019-01-09Don't use -ffast-math or other unsafe math optimizationsHein-Pieter van Braam
Godot supports many different compilers and for production releases we have to support 3 currently: GCC8, Clang6, and MSVC2017. These compilers all do slightly different things with -ffast-math and it is causing issues now. See #24841, #24540, #10758, #10070. And probably other complaints about physics differences between release and release_debug builds. I've done some performance comparisons on Linux x86_64. All tests are ran 20 times. Bunnymark: (higher is better) (bunnies) min max stdev average fast-math 7332 7597 71 7432 this pr 7379 7779 108 7621 (102%) FPBench (gdscript port http://fpbench.org/) (lower is better) (ms) fast-math 15441 16127 192 15764 this pr 15671 16855 326 16001 (99%) Float_add (adding floats in a tight loop) (lower is better) (sec) fast-math 5.49 5.78 0.07 5.65 this pr 5.65 5.90 0.06 5.76 (98%) Float_div (dividing floats in a tight loop) (lower is better) (sec) fast-math 11.70 12.36 0.18 11.99 this pr 11.92 12.32 0.12 12.12 (99%) Float_mul (multiplying floats in a tight loop) (lower is better) (sec) fast-math 11.72 12.17 0.12 11.93 this pr 12.01 12.62 0.17 12.26 (97%) I have also looked at FPS numbers for tps-demo, 3d platformer, 2d platformer, and sponza and could not find any measurable difference. I believe that given the issues and oft-reported (physics) glitches on release builds I believe that the couple of percent of tight-loop floating point performance regression is well worth it. This fixes #24540 and fixes #24841
2019-01-04Merge pull request #24592 from volzhs/android-etcRémi Verschelde
Make possible to use ETC texture format with GLES3 on Android
2019-01-01Update copyright statements to 2019Rémi Verschelde
Happy new year to the wonderful Godot community!
2018-12-26Make possible to use ETC texture format with GLES3 on Androidvolzhs
Currently, textures are not exported if use ETC on project settings and export project with GLES3. GLES3 should be able to use ETC format also.
2018-12-20Android: Better identify thirdparty C/C++ codeRémi Verschelde
- The `cpu-features.{c,h}` code was only used by chance by the webm (libvpx) code, so I moved it there. It was actually introduced before that and wasn't in use, and libvpx just happened to be able to compile thanks to it being bundled. It could potentially be compiled on the fly from the Android NDK, but since we plan to replace the webm module by a GDNative plugin in the near future, I went the bundling route. - `ifaddrs_android.h` is already provided in the Android NDK as `ifaddrs.h`, same as on other Unixes. Yet we cannot use it until we up the min API level to 24, where `getifaddrs` is first defined. I moved the files to `thirdparty/misc` and synced them with upstream WebRTC (only indentation changes and removal of `static` qualifiers). Also removes dropped thirdparty files from COPYRIGHT.txt after changes in #24105 and #24145.
2018-12-20Core: Drop unused global_defaults logicRémi Verschelde
It used to be used for Android and iOS to specify platform-specific project settings overrides, but we now have feature tags for that.
2018-12-19Add option to add debug keystore in Android exportGeorge Marques
2018-12-18Fix lint error/warning while building android templatevolzhs
2018-12-14Android: Don't expose x86_64 ABI for export if we can't build templates for itRémi Verschelde
Support for x86_64 *could* be added in detect.py, but AFAIK this is not a widespread architecture for Android, much less for gaming devices.
2018-12-02Merge pull request #24105 from BastiaanOlij/cleanup_old_android_nativeRémi Verschelde
Remove obsolete ANDROID_NATIVE_ACTIVITY
2018-12-02Remove obsolete ANDROID_NATIVE_ACTIVITYBastiaan Olij
2018-11-30Change custom permissions in Android export to an arrayGeorge Marques
Don't limit the amount of permissions and makes it simpler to understand.
2018-11-24Remove an unused scriptHugo Locurcio
[ci skip]
2018-11-20Adding support for java.lang.Long values in Android GodotLib.calldeferred callsSimon Sikström
2018-11-20Remove trailing whitespaceRémi Verschelde
With `sed -i $(rg -l '[[:blank:]]*$' -g'!thirdparty') -e 's/[[:blank:]]*$//g'` (+ manual revert of some thirdparty code under `platform/android`).
2018-11-02Merge pull request #23389 from marcelofg55/multiple_extRémi Verschelde
Export for OS X on OS X now lets you select .dmg or .zip
2018-11-01Fix init of VisualServerRasterRémi Verschelde
Contrarily to what #23434 assumed, this is not a memory leak, the VisualServerRaster instance is passed as a parameter to VisualServerWrapMT's constructor. Fixes #23437.
2018-11-01Fix initialization of visual server in all platformsGeorge Marques
Avoid leaking an extra instance when using threads. Also fix threaded loading issues on Android and iOS.
2018-11-01Export for OS X on OS X now lets you select .dmg or .zipMarcelo Fernandez
2018-11-01Merge pull request #23320 from lethiandev/android-invalid-package-name-errorRémi Verschelde
Add android export error on invalid package name
2018-10-29Style: Apply clang-format to wrongly formatted filesRémi Verschelde
2018-10-29Prevent a device to be added/deleted more than once on AndroidXavier Sellier
cherry-picked from fb5a601217eed9da6c9b4260c3dfc775abee2733