質問: 私は、CordovaとMiddlemanを使って、AndroidとiOS両対応のアプリを開発しています。 構成は単純で、MiddlemanとCordovaのプロジェクトを別々に作り、Middlemanのbuild出力先をCordovaプロジェクトのwwwに指定しているだけです。 開発が進みcordova.jsを用いた機能を作る事になりましたが、いくつか問題が発生しました。 * Middleman上ではcordova.jsというファイルは無い * Middlemanのserverで実行した際に、deviceOnReadyイベントも飛んでこない なので、現状、いちいち実機(シミュレータ)に転送してデバッグしています。 簡単にデバッグ可能なうまいやり方は無いでしょうか?
回答: 通常のブラウザで動作確認したい、かつcordova.js使いたい場合には、 browser platformを追加するとブラウザ用のcordova.jsを利用できるようになります。 ``` $ cordova platform add browser $ cordova prepare ``` 上のコマンドをcordovaプロジェクト内で実行すると、platforms/browser/www以下にプロジェクトのファイルを生成してくれます。Middlemanでこのディレクトリをホストするとブラウザでもdevicereadyイベントが発火するようになるはずです。 このbrowser platformはCordova4から新しく追加されたplatformで、ブラウザで動作確認したい時の開発用のplatformです。このplatformに対応しているプラグインであれば通常のブラウザでも動作するようになっているようです。 browser platformの詳細については以下の記事で紹介されているので参照してみてください。 * ブラウザではなく実機でなるべく素早く動作確認したい場合には、ライブリロードを行ってくれるMonaca LocalkitやPhoneGap Developer Appなどの専用のツールを使うことを検討すると良いでしょう。