J'ai une erreur lorsque je lance Android
What went wrong:
A problem occurred evaluating project ':app'.
> SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.
J'ai une erreur lorsque je lance Android
What went wrong:
A problem occurred evaluating project ':app'.
> SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.
Réponses:
android/
répertoire de votre projet natif réactiflocal.properties
avec cette ligne:sdk.dir = /Users/USERNAME/Library/Android/sdk
Où USERNAME
est votre nom d'utilisateur macOS
sdk.dir = C:\\Users\\USERNAME\\AppData\\Local\\Android\\sdk
local.properties
collez votre chemin SDK Android comme ci-dessous
sdk.dir = C:\\Users\\USERNAME\\AppData\\Local\\Android\\sdk
sdk.dir = /Users/USERNAME/Library/Android/sdk
sdk.dir = /home/USERNAME/Android/Sdk
Remplacez USERNAME
par votre nom d'utilisateur
Maintenant, exécutez le react-native run-android
dans votre terminal.
sdk.dir=/home/USERNAME/Android/Sdk
Vous pouvez essayer d'ajouter ANDROID_PATH
export ANDROID_HOME=/Users/<username>/Library/Android/sdk/
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
ANDROID_PATH
dans l'environnement (Ubuntu, fichier .bashrc). Cependant, pour certaines raisons, je reçois toujours le problème. Je l'ai corrigé en créant local.properties
et en mettant le chemin comme indiqué dans d'autres réponses.
local.properties
cependant.
Ouvrez ~/.bash_profile
et ajoutez:
export ANDROID_HOME=~/Library/Android/sdk/
export PATH=$PATH:~/android-sdks/platform-tools/
export PATH=$PATH:~/android-sdks/tools/
source ~/.bash_profile
pour que les nouvelles lignes d'exportation prennent effet.
NE PAS METTRE À JOUR local.properties
, c'est définitivement une mauvaise pratique.
C'est ainsi que je l'ai corrigé. Ajoutez ce qui suit dans ~/.bash_profile
ou ~/.bashrc
.
export ANDROID_HOME=/usr/local/share/android-sdk
export PATH=$ANDROID_HOME/tools:$PATH
export PATH=$ANDROID_HOME/platform-tools:$PATH
export PATH=$ANDROID_HOME/build-tools/23.0.1:$PATH
Remarque: j'ai l'habitude brew cask
d'installer le SDK Android en suivant ces instructions .
echo "sdk.dir = /Users/$(whoami)/Library/Android/sdk" > android/local.properties
Si vous êtes sous Windows, échappez (ajoutez des contre-obliques) les contre-obliques et les deux-points dans le android/local.properties
fichier. Si ce n'est pas là, créez-le
sdk.dir = C\:\\Android\\sdk
Mise à jour des étapes pour que React Native0.58 démarre sur MAC / Unix
nano ~ / .bash_profile
export ANDROID_HOME = $ HOME / Library / Android / sdk
export PATH = $ PATH: $ ANDROID_HOME / emulator
export PATH = $ PATH: $ ANDROID_HOME / tools
export PATH = $ PATH: $ ANDROID_HOME / tools / bin
export PATH = $ PATH: $ ANDROID_HOME / platform-tools
Control+S to save
Control+X to exit
Y to save changes
source ~/.bash_profile
echo $PATH
adb devices
Pour les utilisateurs de Windows
Une solution simple consiste à définir le chemin du SDK vers la liste des variables d'environnement.
Remarque:
Votre Android Sdk est généralement situé dans
C: \ Users \ YourUserName \ AppData \ Local \ Android \ Sdk
Assurez-vous de fermer votre terminal actuel, car votre terminal contient toutes vos variables d'environnement préexistantes.
Votre projet ne trouve pas le SDK défini dans les paramètres du projet via le chemin d'accès fourni, donc le projet doit pointer dans la bonne direction, et vous avez quelques options pour y parvenir, mais commençons par trouver le dossier SDK correct en premier.
Depuis le gestionnaire de packages
Si vous utilisez une installation JRE basée sur un package comme Java 8 JRE via un PPA personnalisé dans une distribution basée sur Debian, ou utilisez OpenJDK , le répertoire sera très probablement / usr / lib / jvm / java-8-oracle (ou quelle que soit la version que vous avez choisie). Vous pouvez trouver ce chemin d'accès défini dans la variable d'environnement JAVA_HOME :
$ echo $JAVA_HOME
/usr/lib/jvm/java-8-oracle
Téléchargement manuel
Si vous avez installé via le téléchargement Java JRE / SDK , ce sera là où vous avez placé le dossier, par exemple / home / nom d'utilisateur /jdk-8u121_1.8.0 (ou quelque chose de similaire).
Les installations par script peuvent même ajouter le SDK à / opt / java-8-oracle , mais à ce jour, les instructions d'installation de Java laissent le placement du dossier entre vos mains.
Android Studio 2.2
Enfin, si vous utilisez Android Studio, le SDK est placé là où vous l'avez défini pour placer les fichiers SDK téléchargés via le gestionnaire de SDK du Studio. En allant dans Fichier> Paramètres> Apparence et comportement> Paramètres système> SDK Android , vous pouvez trouver le paramètre d'emplacement du SDK en haut avec l'option à modifier, et le dossier par défaut étant ~ / Android / Sdk .
Maintenant que nous savons où se trouve le SDK, il est temps de le faire savoir aux natifs de React.
Option 1: définir avec local.properties
Cette méthode est très simple, et il suffit de créer le fichier local.properties dans le dossier suivant, où Project_Folder est la base de votre application React-Native:
Dossier_projet / Android / App
Dans votre local.properties, vous souhaitez définir la variable sdk.dir sur le chemin de votre dossier SDK:
sdk.dir=/home/username/Android/Sdk
Bien que ce soit le moyen le plus simple de résoudre le problème, ce n'est pas le meilleur, surtout si vous travaillez avec plusieurs projets. Pour chaque projet, vous devrez créer ce fichier pour chaque projet, et si le dossier change, prévoyez de changer ce fichier pour chaque projet local.properties.
Une fois le fichier enregistré, réexécutez la commande react-native run-android .
Option 2: dossiers de paramètres avec des variables d'environnement
L'autre option consiste à définir les dossiers du SDK sur les variables d'environnement local que React-Native recherche par défaut. Pour ce faire, nous allons ajouter le chemin ANDROID_HOME. En prime, nous pouvons également ajouter nos outils Android au même endroit. Nous devons l'ajouter plutôt aux fichiers .bash_profile ou .profile dans notre répertoire personnel, qui sont chargés en dernier, afin que nous puissions nous assurer que rien d'autre ne remplace les paramètres que nous définissons. Comme ils se trouvent dans votre répertoire personnel, il n'est pas nécessaire de les modifier avec des privilèges augmentés.
**$ vim ~/.profile** (use nano or pico if you prefer)
Dans le fichier, ajoutez les lignes suivantes en remplaçant le dossier SDK par celui que vous avez trouvé ci-dessus. J'utiliserai le dossier Android Studio comme exemple:
export ANDROID_HOME="~/Android/Sdk"
export PATH=$PATH:~/Android/Sdk/tools:~/Android/Sdk/platform-tools
Enregistrez le fichier, puis appliquez les paramètres de profil:
$ source ~/.profile
$ echo $ANDROID_HOME
/home/dbrown/Android/Sdk
Si le dossier Sdk s'affiche correctement, félicitations! Réexécutez votre commande react-native et regardez le processus de création d'application continuer.
Si vous avez encore des problèmes
Si, pour une raison quelconque, vous recevez l'erreur " > n'a pas pu trouver la cible avec la chaîne de hachage 'android-23' dans: votre dossier / sdk / , vous devez vous assurer que la version de construction du projet et la version du SDK installé correspondent (React -Native par défaut à 23.0.1). Vous pouvez trouver la version par défaut dans Project_Folder / android / app / build.gradle , puis rechercher buildToolsVersion . Vous pouvez bien sûr changer la version à partir de ce fichier, ou dans Android Studio, allez dans Fichier > Structure du projet pour changer le SDK du projet . Je ne suggérerais pas de changer cette version à moins que vous ne sachiez absolument ce que vous faites, sinon installez la version du SDK que le projet recherche.
Sur Ubuntu, où vous devez obtenir SDK séparément de l'Android studio étrange le chemin fonctionnera avec Android Studio , mais avec React natif, vous devrez créer un nom de fichierlocal.properties
.
Par exemple inn ~/AwesomeProject/android
et insérez cette ligne:
sdk.dir=/path/to/sdk/in/your/computer
Supprimez le local.properties
du dossier Android dans votre projet React et essayez-le.
Je l'ai fait et j'ai réussi.
Cela a fonctionné pour moi.
Je prends React Native de Stephen Grider sur Udemy et l'un des étudiants l'a posté dans la leçon 50. Collé textuellement dans la ligne de commande (sans «$» bien sûr).
$ export "ANDROID_HOME=/usr/local/opt/android-sdk" >~/.bash_profile
> The SDK directory '/usr/local/opt/android-sdk' does not exist.
La meilleure solution que je puisse trouver est la suivante:
Voici à quoi ressemblera le fichier gradle:
Si tout s'est bien passé avec la configuration de votre machine et que vous pouvez compiler le projet à l'aide d'Android Studio, rien ne vous empêchera de créer votre application via la commande android-native cli build android.
Avec cette approche, non seulement vous résoudrez le problème du SDK, vous résoudrez également de nombreux problèmes liés à la configuration de votre machine pour le développement Android. L'importation trouvera automatiquement l'emplacement du SDK et créera local.properties. Vous n'avez donc pas à vous soucier des interventions manuelles.
Pour les utilisateurs Linux
Votre application n'obtient pas le chemin de android-sdk, donc si vous utilisez linux (ubuntu), vous devez ajouter un fichier nommé "local.properties" et l'enregistrer dans le dossier android, qui est créé à l'intérieur de votre dossier d'application .
Vous devez ajouter la ligne ci-dessous dans le fichier local.properties, qui est le chemin de votre android-sdk se trouve à l'intérieur de votre système à l'intérieur du système afin d'exécuter l'application.
sdk.dir=/opt/android-sdk/
enregistrer et réexécuter la commande react-native run-android
OU
vous pouvez ouvrir le terminal, tapez
sudo nano ~ / .bashrc
et collez le chemin ci-dessous à la fin du fichier
export ANDROID_HOME = "/ opt / android-sdk /"
et redémarrez votre ordinateur et exécutez à nouveau run-android réactif natif après cela.
Remarque: - Si vous mettez set path dans le fichier .bashrc, vous n'avez même pas besoin de créer le fichier local.properties.
Si vous créez et android studio
projetez, vous pouvez voir qu'un local.properties
fichier est créé dans le répertoire racine de votre projet. Lorsque vous créez un projet natif réactif, il ne crée pas ce fichier pour vous. Vous devez donc le créer manuellement. Et je dois y ajouter skd dir. Créez donc un nouveau fichier dans le dossier Android (à la racine). et mettez votre chemin sdk comme ceci
sdk.dir=D\:\\Android\\SDK\\android_sdk_studio .
N'oubliez pas: supprimez single \ with double. Comme ci-dessus.
Il existe 2 façons de résoudre ce problème:
Exécutez simplement votre projet Android natif React dans le studio Android, il générera automatiquement votre fichier local.properties dans le projet Android natif React.
une. Allez dans React-native Project -> Android
b. Créez un fichier local.properties
c. Ouvrez le fichier
d. Collez votre chemin SDK Android comme ci-dessous
Dans votre répertoire de projets, il y a un dossier appelé "android" et à l'intérieur, il y a le fichier local.properties. Supprimez le fichier et la construction devrait s'exécuter correctement
Si le fichier local.properties est manquant, créez-en un dans le dossier "project / android" avec 'sdk.dir = / Users / apple / Library / Android / sdk' et assurez-vous que votre SDK se trouve à cet emplacement.
pour créer un fichier avec des extensions personnalisées sur mac référez-vous au lien suivant
Comment enregistrer un fichier TextEdit (mac) avec une extension personnalisée (.sas)?
Il y a deux fichiers gradle, changez celui à l'intérieur de votre C: \ myapp \ android \ build.gradle et non dans le répertoire parent myapp.
Remplacez 23.0.1 par votre version d'Android Build Tool installée dans mon cas 25.0.0
Exécutez run-android react-native pour voir votre application dans l'émulateur.
Ouvrez simplement le dossier android dans le projet d' Android Studio . Le studio Android crée le fichier nécessaire (local.properties) et télécharge la version du SDK pour exécuter Android nécessaire.
Le problème est que vous avez mal configuré les variables d'environnement. Vous devez utiliser (sous Windows) le SDK de:C:\Users\YOUR_USERNAME\AppData\Local\Android\Sdk
Pour plus d'informations: https://facebook.github.io/react-native/docs/getting-started
Sélectionnez: React Native CLI Quickstart dans la section Environnement de développement Android au point 3. Configurez le ANDROID_HOME
variable d'environnement
Si vous le faites tel que vous l'avez en ce moment, vous devez configurer chaque projet pour utiliser vos variables d'environnement et si le projet concerne plusieurs personnes avec leur équipement, cela peut provoquer un problème. Si vous le faites comme je vous l'ai dit, vous n'aurez à configurer aucun projet.
Si vous avez installé Project/android
Android Studio, ouvrez simplement l' aide d'Android Studio et il vous avertira de changer le chemin d'emplacement du SDK dans le projet.
Copiez l'autre projet Android local.properties de votre système et collez-le dans le dossier Android du projet natif React, cela fonctionnera.
sdk.dir=C\:\\Users\\paul\\AppData\\Local\\Android\\Sdk