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.
Android/
ディレクトリに移動します。この行でlocal.properties
というファイルを作成します。
sdk.dir = /Users/USERNAME/Library/Android/sdk
USERNAME
はあなたのOSXユーザー名です。
local.properties
以下のようにAndroid SDKのパスを貼り付けます
sdk.dir = C:\\Users\\USERNAME\\AppData\\Local\\Android\\sdk
sdk.dir = /Users/USERNAME/Library/Android/sdk
sdk.dir = /home/USERNAME/Android/Sdk
USERNAME
をあなたのユーザー名に置き換えます。
今、あなたの端末でreact-native run-Android
を実行してください。
Android_PATHを追加してみることができます
export Android_HOME=/Users/<username>/Library/Android/sdk/
export PATH=$PATH:$Android_HOME/tools:$Android_HOME/platform-tools
しない _ update _ local.properties
、これは間違いなく悪い習慣です。
これが私がそれを直した方法です。以下を~/.bash_profile
または~/.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
注: インストールにbrew cask
を使用しました Android SDK following これらの手順 。
echo "sdk.dir = /Users/$(whoami)/Library/Android/sdk" > Android/local.properties
Windowsを使用している場合は、Android/local.properties
ファイルのバックスラッシュとコロンをエスケープ(バックスラッシュを追加)してください。ない場合はそれを作成します
sdk.dir = C\:\\Android\\sdk
プロジェクトは、指定されたパスを介してプロジェクト設定で設定されたSDKを見つけられないため、プロジェクトは正しい方向を指す必要があり、これを達成するためのいくつかのオプションがありますが、最初に正しいSDKフォルダーを見つけることから始めましょう。
パッケージマネージャーから
DebianベースのディストリビューションでカスタムPPAを介してJava 8 JREのようなパッケージベースのJREインストールを使用している場合、またはOpenJDKを使用すると、ディレクトリは/ usr/lib/jvm/Java-8-Oracle(または選択したバージョン)。このパスセットは、Java_HOME環境変数で見つけることができます。
$ echo $Java_HOME
/usr/lib/jvm/Java-8-Oracle
手動ダウンロード
Java JRE/SDKダウンロードを使用してインストールした場合、フォルダーを配置した場所になります(例: / home /username/ jdk-8u121_1.8.(または同様のもの)。
スクリプトインストールでは、SDKを/ opt/Java-8-Oracleに追加することもできますが、これを書いている時点では、Javaインストール手順ではフォルダーの配置はあなたの手に委ねられています。
Android Studio 2.2
最後に、Android Studioを使用している場合、SDKは、StudioのSDKマネージャーからダウンロードしたSDKファイルを配置するように設定した場所に配置されます。 File> Settings> Appearance&Behavior> System Settings> Android SDKに移動すると、SDKの場所の設定を見つけることができます変更するオプションがあり、デフォルトのフォルダーは〜/ Android/Sdkです。
SDKの場所がわかったので、今度は反応ネイティブに知らせます。
オプション1:local.propertiesで設定
この方法は非常に簡単で、必要なのは次のフォルダーにファイルlocal.propertiesを作成することです。ここでProject_FolderはReact-Nativeアプリケーションのベースです。
Project_Folder/Android/App
Local.propertiesで、変数sdk.dirをSDKフォルダーのパスに設定します。
sdk.dir=/home/username/Android/Sdk
これは問題を解決する最も簡単な方法ですが、特に複数のプロジェクトで作業している場合は最善ではありません。すべてのプロジェクトについて、すべてのプロジェクトに対してこのファイルを作成する必要があります。フォルダーが変更された場合は、各プロジェクトのlocal.propertiesに対してこのファイルを変更する予定です。
ファイルを保存したら、react-native run-Androidコマンドを再実行します。
オプション2:環境変数を使用してフォルダーを設定する
もう1つのオプションは、SDKフォルダーを、React-Nativeがデフォルトで検索するローカル環境変数に設定することです。そのために、Android_HOMEパスを追加します。ボーナスとして、Androidツールを同じ場所に追加することもできます。ホームディレクトリ内の.bash_profileまたは.profileファイルにこれを追加する必要があります。これらは最後にロードされるため、他の設定が設定を上書きしないようにすることができます。これらはホームディレクトリにあるため、昇格した権限で編集する必要はありません。
**$ vim ~/.profile** (use nano or pico if you prefer)
ファイルに次の行を追加して、SDKフォルダーを上記で見つけたフォルダーに置き換えます。例としてAndroid Studioフォルダーを使用します。
export Android_HOME="~/Android/Sdk"
export PATH=$PATH:~/Android/Sdk/tools:~/Android/Sdk/platform-tools
ファイルを保存してから、プロファイル設定を適用します。
$ source ~/.profile
$ echo $Android_HOME
/home/dbrown/Android/Sdk
Sdkフォルダーが正しく表示されたら、おめでとうございます!反応ネイティブコマンドを再実行し、アプリのビルドプロセスが続行されるのを確認します。
まだ問題がある場合
何らかの理由で、「>」というエラーが表示された場合:your/sdk/folderのハッシュ文字列「Android-23」でターゲットが見つかりませんでした。プロジェクトのビルドバージョンとインストールされているSDKのバージョンが一致することを確認します(React-Nativeのデフォルトは23.0.1)。デフォルトバージョンはProject_Folder/Android/app/buildにあります。 .gradle、およびbuildToolsVersionを検索します。もちろん、このファイルまたは_でバージョンを変更できますAndroid StudioはFile> Project Structureに移動して、Project SDK。自分が何をしているかを完全に把握していない限り、このバージョンを変更することはお勧めしません。
Windowsをお使いの場合
1つの簡単な解決策は、SDKパスを環境変数リストに設定することです。
注意:
あなたのAndroid Sdkは一般的にに位置しています
C:\ Users\YourUserName\AppData\Local\Android\Sdk
端末は既存の環境変数をすべて保持しているので、必ず現在の端末を閉じてください。
MAC/Unixで始めるためにReact Native0.58のためのステップを更新しました
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
正しいフルパスを書く必要があります。 '〜/ Library/Android/sdk'を使わないでください。
vi ~/.bashrc
export Android_HOME=/Users/{UserName}/Library/Android/sdk
export PATH=${PATH}:${Android_HOME}/tools
export PATH=${PATH}:${Android_HOME}/platform-tools
source ~/.bashrc
Ubuntuでは、Android Studioとは別にSDKを入手する必要があります 奇妙な パスはAndroid Studioでも機能しますが、React Nativeでは、local.properties
というファイル名を作成する必要があります。
例えばinn ~/AwesomeProject/Android
で次の行を挿入してください。sdk.dir=/path/to/sdk/in/your/computer
local.properties
ファイルをチェックしてください。
sdk.dir=C\:\\Users\\USERNAME\\AppData\\Local\\Android\\sdk
フォーマットが適切かどうか
Ubuntuを使用している場合は、React-nativeプロジェクトのAndroidディレクトリに移動してlocal.properties
というファイルを作成し、Android sdkパスを次のように追加します。
sdk.dir = /home/[YOUR_USERNAME]/Android/Sdk
私が見つけることができる最善の解決策は次のとおりです。
これがgradleファイルの外観です。
マシンのセットアップがすべてうまくいっていて、Android Studioを使用してプロジェクトをコンパイルできるのであれば、react-native cli build Androidコマンドを使用してアプリケーションをビルドするのを妨げるものは何もありません。
このアプローチでは、SDKの問題を解決するだけでなく、Android開発のためのマシン設定に関連した多くの問題も解決します。インポートは自動的にSDKの場所を見つけてlocal.propertiesを作成します。それ故にあなたは手動介入を心配する必要はありません。
プロジェクトディレクトリに "Android"というフォルダがあり、その中にlocal.propertiesファイルがあります。ファイルを削除すると、ビルドは正常に実行されます。
適切なエミュレータとAndroidのバージョンがインストールされていることを確認してください。これで問題は解決しました。
Linuxユーザーのための
あなたのアプリはAndroid-sdkのパスを取得していないので、あなたが "local.properties"という名前のファイルを追加し、あなたのアプリフォルダの中に作成されたAndroidフォルダの中に保存する必要があります。 。
アプリを実行するには、local.propertiesファイル内に次の行を追加する必要があります。これは、Android-sdkのパスがシステム内のシステム内にあることです。
sdk.dir=/opt/Android-sdk/
react-native run-Androidコマンドを保存して再実行します。
_または_
端末を開くことができます
Sudo nano〜/ .bashrc
下のパスをファイルの末尾に貼り付けます
export Android_HOME = "/ opt/Android-sdk /"
その後、コンピュータを再起動して、もう一度react-native run-Androidを実行してください。
注: - set pathを.bashrcファイルに入れた場合は、local.propertiesファイルを作成する必要すらありません。
お使いのシステムの他のAndroidプロジェクトlocal.propertiesをコピーして、動作するReactネイティブプロジェクトのAndroidフォルダに貼り付けます。
これは私のために働きました。
私はUdemyでStephen GriderのReact Nativeを取っています、そして、学生の1人はこれをレクチャー50に投稿しました。
$ export "Android_HOME=/usr/local/opt/Android-sdk" >~/.bash_profile
Android studio
プロジェクトを作成した場合、local.properties
ファイルがプロジェクトのルートディレクトリ内に作成されているのがわかります。反応性のあるネイティブプロジェクトを作成しても、そのファイルは作成されません。それで、あなたはそれを手動で作成しなければなりません。それにskd dirを追加する必要があります。だから(ルート上の)Androidフォルダ内に新しいファイルを作成します。そして、あなたのSDKパスをこのようにしてください。sdk.dir=D\:\\Android\\SDK\\Android_sdk_studio .
覚えておいてください:singleで\をdoubleで削除してください。上記と同じです。
2つのgradleファイルがあります、 あなたのC:\ myapp\Android\build.gradleの中のものを変更してください そして親ディレクトリmyappにはありません。
23.0.1を私のケース25.0.0にインストールされているAndroidビルドツールのバージョンに置き換えます
エミュレータであなたのアプリを見るために 反応ネイティブの実行 - アンドロイド を実行してください。
私はWindows上にいて、PATH環境にあるかどうかにかかわらず、sdkパスを修正しなければなりませんでした。変数
sdk.dir=C:/Users/MY_USERNAME/AppData/Local/Android/Sdk
このファイルを変更しました:
MyProject\Android\local.properties
でAndroidのプロジェクト でプロジェクトのAndroidフォルダを開くだけです。 Androidスタジオは必要なファイル(local.properties)を作成し、必要なAndroidを実行するためのSDKバージョンをダウンロードします。