1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-12 13:20:55 +00:00

Add support for export plugins to modify the Android prebuilt manifest

This commit is contained in:
Fredia Huya-Kouadio
2025-02-22 06:03:10 -08:00
parent 87f897ae0a
commit 845c925b67
11 changed files with 268 additions and 162 deletions

View File

@@ -34,6 +34,8 @@
#include "godot_plugin_config.h"
#endif // DISABLE_DEPRECATED
#include "gradle_export_util.h"
#include "core/io/image.h"
#include "core/io/zip_io.h"
#include "core/os/os.h"
@@ -75,6 +77,12 @@ class EditorExportPlatformAndroid : public EditorExportPlatform {
EditorProgress *ep = nullptr;
};
struct FeatureInfo {
String name;
bool required;
String version;
};
#ifndef DISABLE_DEPRECATED
mutable Vector<PluginConfigAndroid> android_plugins;
mutable SafeFlag android_plugins_changed;
@@ -151,7 +159,7 @@ class EditorExportPlatformAndroid : public EditorExportPlatform {
bool _has_manage_external_storage_permission(const Vector<String> &p_permissions);
void _get_permissions(const Ref<EditorExportPreset> &p_preset, bool p_give_internet, Vector<String> &r_permissions);
void _get_manifest_info(const Ref<EditorExportPreset> &p_preset, bool p_give_internet, Vector<String> &r_permissions, Vector<FeatureInfo> &r_features, Vector<MetadataInfo> &r_metadata);
void _write_tmp_manifest(const Ref<EditorExportPreset> &p_preset, bool p_give_internet, bool p_debug);
@@ -235,6 +243,8 @@ public:
virtual List<String> get_binary_extensions(const Ref<EditorExportPreset> &p_preset) const override;
String _get_deprecated_plugins_names(const Ref<EditorExportPreset> &p_preset) const;
String _get_plugins_names(const Ref<EditorExportPreset> &p_preset) const;
String _resolve_export_plugin_android_library_path(const String &p_android_library_path) const;