Search Issue Tracker
Fixed in 2020.1.X
[Linux] Unity Hub sets up Android SDK, NDK and JDK incorrectly on Linux
Android deployment tools are set up incorrectly on Linux, we've found the following issues, resulting in the tools not being recognized by Unity:
1) The executables in OpenJDK (Editor/Data/PlaybackEngines/AndroidPlayer/OpenJDK) don't have the right permissions for execution (possibly due to wrong compression/uncompression of JDK archive) - "chmod +x OpenJDK" fixes the JDK location.
2) Android SDK (Editor/Data/PlaybackEngines/AndroidPlayer/SDK) is missing the tools directory in it. Copying the tools dir from somewhere else fixes SDK.
3) Android NDK is unpacked to the wrong directory (Editor/Data/PlaybackEngines/AndroidPlayer/NDK/android-ndk-r19 instead of Editor/Data/PlaybackEngines/AndroidPlayer/NDK, compared to other platforms) - moving the contents to the correct directory fixes NDK.
How to reproduce:
1. Create or open any project on a version that was installed via Unity Hub (along with Android SDK & NDK tools)
2. Go to Preferences -> External Tools and make sure that Android SDK/NDK Installed with Unity checkmarks are ticked
3. Build for Android
Expected results: Project .apk is successfully built
Actual results: Errors regarding not being able to locate Android SDK
Reproducible with: 2019.1.14f1, 2019.2.6f1, 2019.3.0b4, 2020.1.0a3 (versions downloaded through Unity Hub)
Versions 2018.4 and below do not have the option of downloading SDK & NDK tools through the Hub
Behavior in 2019.1.14f1 - when trying to build, a dialog box appears "Android SDK is outdated. SDK Tools version 0.0.0 < 26.1.1."
Behavior in 2019.2.6f1 - dialog box contains "Unable to locate Android SDK"
Behavior in 2019.3.0b4, 2020.1.0a3 - dialog box contains "Android SDK not found or invalid. Please, fix it in Preferences -> External Tools"
- In 2019.3.0b4 and 2020.1.0a3, in Preferences window under Android SDK Tools and NDK Installed with Unity (recommended) there are warnings that say:
"You are missing the recommended Android SDK Tools / NDK. Install the recommended version with Unity Hub."
- Workaround is to use external SDK & NDK, for instance downloaded through Android Studio
- In Data/PlaybackEngines/AndroidPlayer SDK & NDK content exists, but Editor does not locate it correctly
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
- [macOS] There is no way to tell if you are running under Rosetta
- [AssetImport] Changing Graphics APIs in Android platform reimports most of the assets (textures, fonts, ...)
- Stack frames are missing from Console window when in Full Stack trace mode
- An error is returned and no package is listed if an invalid package is hosted on a scoped registry
- Crash with ComputeTileMeshJob when generating Navmesh