はじめに
今更ですがcordovaを触ってみようと思い、開発環境を作ってみました。cordova自体の導入はすごく楽だったのですが、android周りが結構大変だったので、そのメモを残します。
公式サイトなど
ぶっちゃけ、公式サイトを見ながらやれば大体はできます。こういうのは情報がすぐに古くなるので、下手に日本語の解説サイトを見るよりも英語の原文を見た方がいいと思います。
cordovaのインストール
https://cordova.apache.org/docs/en/latest/guide/cli/index.html
android関係のインストール
https://cordova.apache.org/docs/en/latest/guide/platforms/android/index.html
android関係で詰まったところ
java、Android Studioはそこまで苦労しませんでしたが、androidのシュミレータを動かすのに滅茶苦茶苦労しました。私の開発環境は2年前のmac book airですが、こいつのパワーだとandroidシュニレータがまともに動きません。これを回避するためには、intelアーキテクチャ専用のVMイメージを導入します。詳細はこの記事を見るといいと思います。
これで大丈夫かと思いきや、そうは問屋が卸しません。androidシュミレータを使うためには、ANDROID_AVD_HOMEという環境変数を設定する必要があります。これを設定しないと、androidエミュレータを立ち上げた瞬間に、以下のエラーが出ます。
PANIC: HOME is defined but could not find cordova.ini file in
ここの詳細はこのStack Overflowに載っています。ちなみにOSXの場合はANDROID_AVD_HOMEに${HOME}/.android/avdを設定すれば大丈夫だと思います。
最後に
cordovaはnpmで簡単に入れられますが、android関係は本当に苦労しました。android sdkのインストールも結構時間がかかったし。