I've followed the installation instructions for ReactNative on the official site but can't get my project to build and install on any device. The issue seems to be that ReactNative can't seem to locate my Android SDK.
If I open the Android specific part of the project in Android Studio I can start the app, so the SDK is properly installed. Maybe related is also that I'm working on a Flutter app simultaneously and Flutter has no problems locating the Android SDK.
Running nix react-native doctor
gives me the following:
Common✓ Node.js✓ yarn✓ Watchman - Used for watching changes in the filesystem when in development modeAndroid✓ JDK✓ Android Studio - Required for building and installing your app on Android✖ Android SDK - Required for building and installing your app on Android - Versions found: N/A - Version supported: 29.0.2✓ ANDROID_HOMEiOS✓ Xcode - Required for building and installing your app on iOS✓ CocoaPods - Required for installing iOS dependencies✓ ios-deploy - Required for installing your app on a physical device with the CLIErrors: 1Warnings: 0Attempting to fix 1 issue...Android✖ Android SDK Read more about how to download Android SDK at https://reactnative.dev/docs/getting-started
However trying to "fix" the issue just takes me to the getting started page, and as I mentioned before I've done the installation exactly as described. I even tried removing everything related to Android from my computer and reinstalling everything from scratch.
Runnit nix react-native info
gives me the following:
info Fetching system and libraries information...System: OS: macOS 10.15.4 CPU: (8) x64 Intel(R) Core(TM) i7-3720QM CPU @ 2.60GHz Memory: 1.97 GB / 16.00 GB Shell: 5.7.1 - /bin/zsh Binaries: Node: 12.16.3 - /usr/local/bin/node Yarn: 1.22.4 - /usr/local/bin/yarn npm: 6.14.4 - /usr/local/bin/npm Watchman: 4.9.0 - /usr/local/bin/watchman Managers: CocoaPods: 1.9.3 - /usr/local/bin/pod SDKs: iOS SDK: Platforms: iOS 13.5, DriverKit 19.0, macOS 10.15, tvOS 13.4, watchOS 6.2 Android SDK: Not Found IDEs: Android Studio: 4.0 AI-193.6911.18.40.6514223 Xcode: 11.5/11E608c - /usr/bin/xcodebuild Languages: Java: 14.0.1 - /usr/bin/javac Python: 2.7.16 - /usr/bin/python npmPackages: @react-native-community/cli: Not Found react: 16.11.0 => 16.11.0 react-native: 0.62.2 => 0.62.2 npmGlobalPackages: *react-native*: Not Found
Which just further "proves" that ReactNative can't find the Android SDK.
What I've tried so far:
Adding a local.properties
with the content:
sdk.dir=/Users/[username]/Library/Android/sdk
(And yes the folder exists and is correct, it's the same one set in Android Studio)
Updating the .zshrc
with:
export ANDROID_HOME=$HOME/Library/Android/sdkexport ANDROID_SDK_ROOT=$HOME/Library/Android/sdkexport PATH=$PATH:$ANDROID_HOME/emulatorexport PATH=$PATH:$ANDROID_HOME/toolsexport PATH=$PATH:$ANDROID_HOME/tools/binexport PATH=$PATH:$ANDROID_HOME/platform-tools
And in that sdk-folder (in platforms) I have android-28
, android-29
and android-30
.I've also (of course) looked at a number of posts here from people with the same issue, but one of these two fixes almost always seems to solve the issue, however it doesn't work for me. What else is there to test?
UPDATE:I can also add that when running npx react-native run-android
and tget the error: Task 'installDebug' not found in project ':app'.
. But this problem should also be solved with the properties.local
, which doesn't work for me.