XA5104 Could not locate the Android NDK - xamarin

XA5104: Could not locate the Android NDK. Please make sure the Android NDK is installed in the Android SDK Manager, or if using a custom NDK path, please ensure the $(AndroidNdkDirectory) MSBuild property is set to the custom path.
The NDK location is set to the ndk within the android sdk but still this shows up

All the answers above are valid.
But in case you can't change the default location of the Android NDK through the settings (it was my case, I think it's a Windows 11 problem as surprising as it may sound):
Make sure you installed NDK, if not:
Tools > Android > Android SDK manager > Tools > select NDK > Apply Changes
Create a folder named "AndroidNDK64" in C:\ProgramData\Microsoft
Move the C:\Microsoft\AndroidNDK\android-ndk-... folder to the folder you just created
It worked for me and I hope it works for you too 😉

I came across this issue and it turned out to have nothing to do with the Android NDK. I was trying to deploy a debug version of my app on top of a release build, changing back to debug or uninstalling my app solved the problem.

happens to me after updating VS 2019 to Version 16.11.5 two days ago,
it happens before AND after I install ndk from Android SDK Manager,
and Android NDK Location setting is NOT in VS Options->Xamarin->Android Setting, check this FAQ https://learn.microsoft.com/en-us/xamarin/android/troubleshooting/questions/android-sdk-location?tabs=windows

I had same issue just reverted to version 21.4.702 and everyting started to work

Had the same issue on Visual Studio for Mac. Downgrading to 21.4.7075529 allowed the Android project to build and deploy.

I was getting this error after changing to a Release build and trying to deploy. I tried the other answers and made sure the app was not present on the device. Nothing worked.
What did work, was opening the Android SDK manager and uninstalling the NDK and then re-installing.
After that, I was able to deploy the Release config of the app with no problem.
This was VS2019 for Windows 10.

I had the same issue and fixed it by adding the NDK manually. Please follow the steps down below.
Make sure that you have already installed NDK from Visual Studio's Android SDK Manager window.
Copy "ndk-bundle" folder from "C:\Program Files (x86)\Android\android-sdk"
Paste it under the "C:\ProgramData\Microsoft\AndroidNDK64" path.
Rename the pasted "ndk-bundle" folder to "android-ndk-r21"
Finally, run the project and enjoy.

just toasted this problem and suggestions here either outdated or makes less sense. You dont need to separately install NDK, VS22 is deliviring it together with SDK installation. So there is a folder called NDKbundle under the SDK folder. Only problem here is that you need to make sure that you have the correct NDK. You cannot use latest version of NDK if you arent using everything up to date and if you comply with the NDK criterias. Here you can find the history
https://developer.android.com/ndk/downloads/revision_history
For example, if you are NDK23 you cannot use if you target APIs 16, 17, and 18 as it is stated in the release notes "Jelly Bean (APIs 16, 17, and 18) will not be supported in the next NDK release. ".
For me was the case, I had recently VS22 repair and somehow, SDK installed the latest version of NDK and i was getting this error. Once i downgraded back to NDK21 version, it worked like a charm.

Related

Android SDK location in OSX - Has it been actually installed by Unity Hub?

We are using Unity 2018.3.8f1.
We have added Android Build Support from Unity Hub - Add Component:
But if we go to Unity Preferences - External Tools, the Android SDK location is empty:
I have not been able to find the location of the Android SDK folder anywhere. I'm wondering if the component installed by Unity Hub is something different to Android SDK. Maybe it must be installed separately from: https://developer.android.com/studio?pkg=tools#downloads?
UPDATE
So far I have installed "Command line tools only" from the previous link. Then, I have installed OpenSDK (Vistual Studio did it for me: it asked me to update and install it as one of the things to update).
But when I opened tools/bin/sdkmanager, it said "Java is not installed". So I also installed Oracle Java SDK. Unfortunately tools/bin/sdkmanager returned errors after it. I applied a few workarounds I found by googling the errors. Still not luck.
So I have moved to the easy way: installing the full version of Android Studio. If we choose custom, we'll see that Android SDK Platform is going to be installed:
So it is working, but I still have not idea of how many things I have duplicated on my system wasting space. I have:
The Android component installed from Unity Hub
Android Studio installed, which comes with the emulator and the IDE (I don't need them)
OpenSDK (installed by Visual Studio)
An embedded version of Java in Unity
Oracle Java
Are they all actually needed? I don't think so!
It seems the only thing you are wondering is if the component installed by Unity hub is something different to Android SDK... the short answer is yes. You have to download it on the Android Developer SDK website you linked in the question. You only need the SDK under "Command line tools only" at the bottom of the page. If you do this you also need to download the jdk separatly here.

Appcelerator | 'Android Distribution' Android SDK version 4.1.2 not found

I have pulled an Appcelerator project from our developer group and unable to publish or run the project on a local Android device.
When trying to publish the below error screen immediately pops up.
Android SDK version 4.1.2 not found.
I have checked both in the Appcelerator platform settings and Android Studio config and have the SDK installed.The install SDK screen in Appcelerator Tried uninstalling/reinstalling Appcli and the SDK to no avail.
After a few days of searching all the appecelerator files in my project. I finally found the fix for my problem (for anyone googling this).
There's a hidden file in the root of the Appcli project called .settings
Inside of settings there's a package called com.appcelerator.titanium.android.core.prefs
There is an android/sdk_version=4.1.2 that was causing all my issues. Hope that helps someone.
Most likely, your issue seems to be with unsupported Android SDK version as per Ti SDK you are using.
So before doing anything, try to grab what this page says to know all about software compatibilities: Titanium Comptability Matrix
It says that minimum Android version as of latest Ti SDK 6.x.x is API 16.
Now, follow these steps carefully to get a fresh start on your system.
First of all, download Android latest SDK from here: Android SDK
Unzip it & put it in at some simple path like in /Users/username/android-sdk
Download Appcelerator Studio (AS) & install it. It will download all pre-requisites like Java, Python
Open Appcelerator Studio & go to Preferences->Studio->Platforms->Android. Select the path of android sdk you unzipped in step 2.
After all these steps, you can open Android SDK Manager (see screenshot where it is) & install necessary SDK, Tools, etc.
Note: I do not suggest to download SDKs via AS as I have faced path issues in beginning.
Even if these steps do not help you, then provide us the log output after running this command on terminal: appc info
If terminal says this command is not found, then you need to go through the AS installation properly.
I had the same issue. Simply deleting all " Android Play Store Distribution" configurations solved my problem.

Xamarin Android SDK Manager doesn't save locations

Using Visual Studio 2017 and Xamarin, I installed the Xamarin Android SDK Manager to replace the default Android SDK Manager, which is now deprecated.
Then I updated JDK to the current x64 version and, using the Xamarin SDK Manager, I installed the most recent version of Android NDK.
I now want to update the locations of these SDK's in the Xamarin Android SDK Manager, Locations tab like so:
Yet, every time I restart the tool, the locations are reset. It also keeps telling me there's 2 components to install, yet when I do, it doesn't complain about any failure.
I have tried running as Admin and cannot seem to figure out what is wrong. Log files seem to be non existent. Is there anyone who has the same problem and found a solution?
This was a bug and has been fixed in 0.1.76.
See https://bugzilla.xamarin.com/show_bug.cgi?id=58319 for details.
Download the newest version here: https://marketplace.visualstudio.com/items?itemName=Xamarin.XamarinAndroidSDKManager

Android SDK could not be found - Android SDK Location is correct

I've installed Xamarin and tried in Visual Studio to start with a small app and test the web view with this. So for this, I've installed the JDK, the Android SDK and Android NDK on my computer. I'm working throught a tutorial for a web view and I have the problem, when I run the Main.axml, it shows me the error, that my Android SDK could not be found (look at the first attachement). When I check my location paths for the JDK, SDK and NDK, it shows me the correct path and a green tick, so the path and files are correct (look at the second attachement). But my app don't recognize it. What's the problem here? I found some threads on stackoverflow for the same problem, but nothing helped me.
1. Attachement
2. Attachement
OS: Windows 8.1
IDE: MS Visual Studio 14.0.23
Xamarin: 4.2.0
EDIT:
I also tried to open my Android SDK Manager, but this one is disabled in my visual studio. I've installed Xamarin, so it should work:
Any ideas? Thanks.
I tried so many things and finally I have the solution for my problem:
Possible reason for the problem: I just installed the Xamarin, which installes also the JDK, Android SKD and Android NDK in it's wizzard, so I thought this should be the correct versions. After installing Xamarin, I opened my Visual Studio and checked the paths (Tool - Options - Xamarin - Android seetings) for my JDK, SDK and NDK. The paths show on the versions, which were installed by Xamarin. My Android SDK Manager was disabled.
Solution: Then I uninstall everything - the JDK, SDK and NDK and also the whole Xamarin and my old Android Studio. After that, I decided to install the newest JDK from the Java website, the newes Android SDK/NDK from the Android Studio website and a plane xamarin without the sdk/jdk installation. So I could be sure, that I have the correct versions. After the installation, I again opened Visual Studio - Tool - Options - Android seetings and set the paths to the new versions. Than I checked my Android SDK Manager and it was finally enabled and so I installed also the newest Android SDK Tools. After that I cleaned and builded my solution, start it and my android emulator opens my webview page. So I think, the best way is to install the required programms from their website and not automaticlly with xamarin. Now it works. Cheers.

Deployment Error in Xamarin

I have started getting the following error after I have updated my java. I could not able to find a way to fix it. I even uninstalled and reinstalled Xamarin Android Player.
By the way, I have deleted jdk1.6.9 already but it still pointing the same directory.
But I checked the Xamarin options (Tools-->Options-->Xamarin --> Android), it points to jdk1.7
Xamarin doesn't work properly when you have installed two version of java .
Uninstall one version and try just with on of them .
There's a conflict in the version of java that the visual studio xamarin is fetching.
After Adding the path in Tools-->Options-->Xamarin --> Android
Also check path set in your environment variables in My Computer properties,
Set the same path till bin folder as for JAVA_HOME
it also causes this error.
thank you for bring up this question.
You must uninstall a version of java that not compatible with your android SDK.its better that install java and android SDK and NDK and also xamarin for visual studio manually(do not install with visual studio install file).i promis you that this problem and a lot of problem like it is solved when we setup dependency of xamarin manually .finaly i said this that i can catch all output of xamarin project in all platforms,simulators and real devices.
Uninstall jdk which is pointed to that path from Tools -> Options -> Xamarin and then re install it and update environment variables and then set its jdk path in xamarin.

Resources