react-native run-androidのエラー解決方法【react-native-cli】

React Nativeでアプリ開発をしていて、普段はcreate-react-native-appとExpoで開発をしているのですが、react-native-cliでやってみようと思ったらAndroidの闇に飲み込まれてエラー多発したのでどうやって解決したか残しておきます。

とりあえず一時的な直し方だけなので良い解決方法あればコメントいただけると嬉しいです。

Expoほんと楽です…

エラーメッセージの* What went wrong:のところを見ています。

 

com.android.build.gradle.tasks.factory.AndroidJavaCompile.setDependencyCacheDir(Ljava/io/File;)V

/android/gradle/wrapper/gradle-wrapper.propertiesの一部を以下のように直しました

distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip

参考

 

A problem occurred configuring project ‘:app’.
> Failed to notify project evaluation listener.
> javax/xml/bind/annotation/XmlSchema

JDKを8に下げました。9 or 10だとダメなようです。(JDKが複数インストールされている場合も)

参考

 

 

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

参考

Unable to load script from assets ‘index.android.bundle’ Make sure your bundle is packaged correctly or you’re running a packager server.

実機でのエラーです。

mkdir android/app/src/main/assets

react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res

react-native run-android

で正常に動作しました。

参考

 

Android開発慣れていないのでなかなか闇が深いです…余裕があれば原因しっかり調べようと思います。(調べなきゃダメ)