Add logic to automatically pick up jar/aar library dependencies in the `res://addons` directory
This commit is contained in:
parent
5e0805a813
commit
4587d14796
|
@ -3263,8 +3263,11 @@ Error EditorExportPlatformAndroid::export_project_helper(const Ref<EditorExportP
|
|||
cmdline.push_back(apk_build_command);
|
||||
}
|
||||
|
||||
String addons_directory = ProjectSettings::get_singleton()->globalize_path("res://addons");
|
||||
|
||||
cmdline.push_back("-p"); // argument to specify the start directory.
|
||||
cmdline.push_back(build_path); // start directory.
|
||||
cmdline.push_back("-Paddons_directory=" + addons_directory); // path to the addon directory as it may contain jar or aar dependencies
|
||||
cmdline.push_back("-Pexport_package_name=" + package_name); // argument to specify the package name.
|
||||
cmdline.push_back("-Pexport_version_code=" + version_code); // argument to specify the version code.
|
||||
cmdline.push_back("-Pexport_version_name=" + version_name); // argument to specify the version name.
|
||||
|
|
|
@ -63,6 +63,12 @@ dependencies {
|
|||
implementation files(pluginsBinaries)
|
||||
}
|
||||
|
||||
// Automatically pick up local dependencies in res://addons
|
||||
String addonsDirectory = getAddonsDirectory()
|
||||
if (addonsDirectory != null && !addonsDirectory.isBlank()) {
|
||||
implementation fileTree(dir: "$addonsDirectory", include: ['*.jar', '*.aar'])
|
||||
}
|
||||
|
||||
// .NET dependencies
|
||||
String jar = '../../../../modules/mono/thirdparty/libSystem.Security.Cryptography.Native.Android.jar'
|
||||
if (file(jar).exists()) {
|
||||
|
|
|
@ -408,3 +408,8 @@ ext.shouldUseLegacyPackaging = { ->
|
|||
// Default behavior for minSdk >= 23
|
||||
return false
|
||||
}
|
||||
|
||||
ext.getAddonsDirectory = { ->
|
||||
String addonsDirectory = project.hasProperty("addons_directory") ? project.property("addons_directory") : ""
|
||||
return addonsDirectory
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue