diff --git a/.external b/.external
index 77fb4e82e3a..47e02be365c 100644
--- a/.external
+++ b/.external
@@ -1,2 +1,2 @@
-xamarin/monodroid:main@91b4ef9fcfad5906b0699865afb3e46c383a5710
+xamarin/monodroid:main@297767fcc65fc43487949d51dee753d454c647f1
mono/mono:2020-02@148f536b0b463a111a021b960ee3aeaed0cf203b
diff --git a/Configuration.props b/Configuration.props
index ae219baaf67..0c78b76e492 100644
--- a/Configuration.props
+++ b/Configuration.props
@@ -78,7 +78,9 @@
$(HOME)\android-toolchain
\usr
$(HostHomebrewPrefix)
+ $(ANDROID_SDK_ROOT)
$(AndroidToolchainDirectory)\sdk
+ $(ANDROID_NDK_LATEST_HOME)
$(AndroidToolchainDirectory)\ndk
$(AndroidToolchainDirectory)\dotnet\
$(DotNetPreviewPath)dotnet
diff --git a/build-tools/scripts/JavaCallableWrappers.targets b/build-tools/scripts/JavaCallableWrappers.targets
index 7b2509bd93b..ba601dae4bd 100644
--- a/build-tools/scripts/JavaCallableWrappers.targets
+++ b/build-tools/scripts/JavaCallableWrappers.targets
@@ -33,7 +33,7 @@
<_Target>-source $(JavacSourceVersion) -target $(JavacTargetVersion)
<_D>-d "$(IntermediateOutputPath)jcw/bin"
- <_AndroidJar>"$(AndroidToolchainDirectory)\sdk\platforms\android-$(AndroidPlatformId)\android.jar"
+ <_AndroidJar>"$(AndroidSdkDirectory)\platforms\android-$(AndroidPlatformId)\android.jar"
<_MonoAndroidJar>$(OutputPath)mono.android.jar
<_MonoAndroidRuntimeJar>$(OutputPath)..\..\..\xbuild\Xamarin\Android\java_runtime.jar
diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Android/AndroidSdkResolver.cs b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Android/AndroidSdkResolver.cs
index c8f63bd957d..d392dda5a1a 100644
--- a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Android/AndroidSdkResolver.cs
+++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Android/AndroidSdkResolver.cs
@@ -28,6 +28,8 @@ public static string GetAndroidSdkPath ()
sdkPath = Environment.GetEnvironmentVariable ("ANDROID_SDK_PATH");
if (String.IsNullOrEmpty (sdkPath))
sdkPath = GetPathFromRegistry ("AndroidSdkDirectory");
+ if (String.IsNullOrEmpty (sdkPath))
+ sdkPath = Environment.GetEnvironmentVariable ("ANDROID_SDK_ROOT");
if (String.IsNullOrEmpty (sdkPath))
sdkPath = Path.GetFullPath (Path.Combine (ToolchainPath, "sdk"));
@@ -42,6 +44,8 @@ public static string GetAndroidNdkPath ()
ndkPath = Environment.GetEnvironmentVariable ("ANDROID_NDK_PATH");
if (String.IsNullOrEmpty (ndkPath))
ndkPath = GetPathFromRegistry ("AndroidNdkDirectory");
+ if (String.IsNullOrEmpty (ndkPath))
+ ndkPath = Environment.GetEnvironmentVariable ("ANDROID_NDK_LATEST_HOME");
if (String.IsNullOrEmpty (ndkPath))
ndkPath = Path.GetFullPath (Path.Combine (ToolchainPath, "ndk"));
diff --git a/src/java-runtime/java-runtime.targets b/src/java-runtime/java-runtime.targets
index 6b43550ea1e..4966c24f6e2 100644
--- a/src/java-runtime/java-runtime.targets
+++ b/src/java-runtime/java-runtime.targets
@@ -51,7 +51,7 @@
/>
<_Target Condition="'$(JavacSourceVersion)' != ''">-source $(JavacSourceVersion) -target $(JavacTargetVersion)
- <_AndroidJar>"$(AndroidToolchainDirectory)\sdk\platforms\android-$(AndroidJavaRuntimeApiLevel)\android.jar"
+ <_AndroidJar>"$(AndroidSdkDirectory)\platforms\android-$(AndroidJavaRuntimeApiLevel)\android.jar"