Improve building for Android

This commit is contained in:
Wojtek Figat
2023-02-14 15:27:13 +01:00
parent 752fa64cc3
commit 47afc7817f
2 changed files with 12 additions and 7 deletions

View File

@@ -289,13 +289,14 @@ bool AndroidPlatformTools::OnPostProcess(CookingData& data)
return true; return true;
} }
String androidSdk; String androidSdk;
if (!envVars.TryGet(TEXT("ANDROID_SDK"), androidSdk) || !FileSystem::DirectoryExists(androidSdk)) if (!envVars.TryGet(TEXT("ANDROID_HOME"), androidSdk) || !FileSystem::DirectoryExists(androidSdk))
{ {
LOG(Error, "Missing or invalid ANDROID_SDK env variable. {0}", androidSdk); if (!envVars.TryGet(TEXT("ANDROID_SDK"), androidSdk) || !FileSystem::DirectoryExists(androidSdk))
return true; {
LOG(Error, "Missing or invalid ANDROID_HOME env variable. {0}", androidSdk);
return true;
}
} }
if (!envVars.ContainsKey(TEXT("ANDROID_SDK_ROOT")))
envVars[TEXT("ANDROID_SDK_ROOT")] = androidSdk;
// Build Gradle project into package // Build Gradle project into package
LOG(Info, "Building Gradle project into package..."); LOG(Info, "Building Gradle project into package...");

View File

@@ -33,7 +33,9 @@ namespace Flax.Build.Platforms
return; return;
// Find Android SDK folder path // Find Android SDK folder path
var sdkPath = Environment.GetEnvironmentVariable("ANDROID_SDK"); var sdkPath = Environment.GetEnvironmentVariable("ANDROID_HOME");
if (string.IsNullOrEmpty(sdkPath))
sdkPath = Environment.GetEnvironmentVariable("ANDROID_SDK");
if (string.IsNullOrEmpty(sdkPath)) if (string.IsNullOrEmpty(sdkPath))
{ {
// Look for adb in Android folders of some common locations // Look for adb in Android folders of some common locations
@@ -53,6 +55,8 @@ namespace Flax.Build.Platforms
foreach (string searchDir in searchDirs) foreach (string searchDir in searchDirs)
{ {
string androidDir = Path.Combine(searchDir, "Android"); string androidDir = Path.Combine(searchDir, "Android");
if (!Directory.Exists(androidDir))
androidDir = Path.Combine(searchDir, "sdk");
if (Directory.Exists(androidDir)) if (Directory.Exists(androidDir))
{ {
string[] subDirs = Directory.GetDirectories(androidDir, "*sdk*", SearchOption.TopDirectoryOnly); string[] subDirs = Directory.GetDirectories(androidDir, "*sdk*", SearchOption.TopDirectoryOnly);
@@ -72,7 +76,7 @@ namespace Flax.Build.Platforms
} }
else if (!Directory.Exists(sdkPath)) else if (!Directory.Exists(sdkPath))
{ {
Log.Warning(string.Format("Specified Android SDK folder in ANDROID_SDK env variable doesn't exist ({0})", sdkPath)); Log.Warning(string.Format("Specified Android SDK folder in ANDROID_HOME env variable doesn't exist ({0})", sdkPath));
} }
if (string.IsNullOrEmpty(sdkPath)) if (string.IsNullOrEmpty(sdkPath))
{ {