|
@@ -1744,6 +1744,11 @@ String EditorExportPlatformAndroid::get_export_option_warning(const EditorExport
|
|
|
if (xr_mode_index == XR_MODE_OPENXR && !gradle_build_enabled) {
|
|
|
return TTR("OpenXR requires \"Use Gradle Build\" to be enabled");
|
|
|
}
|
|
|
+ } else if (p_name == "gradle_build/compress_native_libraries") {
|
|
|
+ bool gradle_build_enabled = p_preset->get("gradle_build/use_gradle_build");
|
|
|
+ if (bool(p_preset->get("gradle_build/compress_native_libraries")) && !gradle_build_enabled) {
|
|
|
+ return TTR("\"Compress Native Libraries\" is only valid when \"Use Gradle Build\" is enabled.");
|
|
|
+ }
|
|
|
} else if (p_name == "gradle_build/export_format") {
|
|
|
bool gradle_build_enabled = p_preset->get("gradle_build/use_gradle_build");
|
|
|
if (int(p_preset->get("gradle_build/export_format")) == EXPORT_FORMAT_AAB && !gradle_build_enabled) {
|
|
@@ -1799,6 +1804,7 @@ void EditorExportPlatformAndroid::get_export_options(List<ExportOption> *r_optio
|
|
|
r_options->push_back(ExportOption(PropertyInfo(Variant::STRING, "custom_template/release", PROPERTY_HINT_GLOBAL_FILE, "*.apk"), ""));
|
|
|
|
|
|
r_options->push_back(ExportOption(PropertyInfo(Variant::BOOL, "gradle_build/use_gradle_build"), false, false, true));
|
|
|
+ r_options->push_back(ExportOption(PropertyInfo(Variant::BOOL, "gradle_build/compress_native_libraries"), false, false, true));
|
|
|
r_options->push_back(ExportOption(PropertyInfo(Variant::INT, "gradle_build/export_format", PROPERTY_HINT_ENUM, "Export APK,Export AAB"), EXPORT_FORMAT_APK, false, true));
|
|
|
// Using String instead of int to default to an empty string (no override) with placeholder for instructions (see GH-62465).
|
|
|
// This implies doing validation that the string is a proper int.
|
|
@@ -3040,6 +3046,7 @@ Error EditorExportPlatformAndroid::export_project_helper(const Ref<EditorExportP
|
|
|
String enabled_abi_string = join_abis(enabled_abis, "|", false);
|
|
|
String sign_flag = should_sign ? "true" : "false";
|
|
|
String zipalign_flag = "true";
|
|
|
+ String compress_native_libraries_flag = bool(p_preset->get("gradle_build/compress_native_libraries")) ? "true" : "false";
|
|
|
|
|
|
Vector<String> android_libraries;
|
|
|
Vector<String> android_dependencies;
|
|
@@ -3104,6 +3111,7 @@ Error EditorExportPlatformAndroid::export_project_helper(const Ref<EditorExportP
|
|
|
cmdline.push_back("-Pplugins_maven_repos=" + combined_android_dependencies_maven_repos); // argument to specify the list of maven repos for android dependencies provided by plugins.
|
|
|
cmdline.push_back("-Pperform_zipalign=" + zipalign_flag); // argument to specify whether the build should be zipaligned.
|
|
|
cmdline.push_back("-Pperform_signing=" + sign_flag); // argument to specify whether the build should be signed.
|
|
|
+ cmdline.push_back("-Pcompress_native_libraries=" + compress_native_libraries_flag); // argument to specify whether the build should compress native libraries.
|
|
|
cmdline.push_back("-Pgodot_editor_version=" + String(VERSION_FULL_CONFIG));
|
|
|
|
|
|
// NOTE: The release keystore is not included in the verbose logging
|