Mac に Cordova をインストールしてみたら android のエミュレーターが起動しなかったので対処してみた

スマホアプリの開発に Monaca を使っていたのですが、無料の範囲で出来ることに限界を感じてきたので、Cordova で開発してみることにしました。

インストール後、android のエミュレーターを起動しようとしたところで色々と困ったところがあったので、トラブルと対処方法を記録しておきます。

スポンサーリンク
AMP広告用336x280Adsense

Cordova インストール方法

基本はこちらの記事を参考にインストールしました。簡潔に手順が書かれていて、すごく分かりやすかったです。

Mac OS X で Apache Cordova の開発環境を構築したので、備忘録を残しておきます。私の環境は macOS Sierra 10.12 でした。Android 開発だけであれば他の OS でも構築できると思うのでその場...

nodebrew、cordova、Xcode、JDK、android studio の順にインストールして、sdk の $PATH を .profile に設定しました。

新しいプロジェクトを作成して cordova run で browser、ios・・とエミュレーターを起動させたところ・・・ android のエミュレーターが起動しない!

エラー1:Gradle が見つからない

CordovaError: Could not find an installed version of Gradle either in Android Studio ...

android studio をインストールした時に、Gradle もあるはずなのに見つからないらしい。

ネットで対策を探したら、ちょっと古い Cordova と android studio の組み合わせで起こる問題のようです。

.profile に Gradle のパスを反映させて解消。android studio のパスにはスペースが含まれていたので、バックスラッシュでエスケープしています。

echo 'export PATH=/Applications/Android\ Studio.app/Contents/gradle/gradle-4.1/bin:$PATH' >> .profile
source ~/.profile

もう一度 cordova run android を実行すると、またエラー発生。

エラー2:spawn EACCES

Error: spawn EACCES

どうやら先ほどパスを通した Gradle の実行権限がないらしい。chmod で対応。

chmod +x /Applications/Android\ Studio.app/Contents/gradle/gradle-4.1/bin/gradle

これでOKか?と cordova run android を実行すると、またエラー発生。

エラー3:No target specified and no devices found, deploying to emulator

ターゲットが見つからないとな。

参考にしていた手順の「Android Virtual Device にチェックを入れる」を忘れてたのか・・・?

android studio で適当にプロジェクトを作ってから、AVD Manager を起動してから 「Nexus_5X_API_27_x86」 の仮想デバイスを作ってみたけれど、エラーは解消出来ず。

新しいAPIでは良くないのかと 「Nexus_5X_API_24」 を作ってみると、エラーなくエミュレーターが起動しました!

なかなか遠い道のりでした。

1+