CordovaとAngular8でハイブリットアプリを始める手順
その前は1年ほど、Androidアプリのエンジニアだったり、PHP、JavaなどのサーバサイドエンジニアだったりLinuxが主体のインフラエンジニアだったりしましたが、
最近は主体の業務をハイブリットアプリにおいています。
ハイブリットアプリとは1ソースでIOS,Android,Webサイトなどを作れてしまうアプリケーションの開発スタイルのことで、慣れると圧倒的に工数削減ができます。
デメリットとして、ネイティブのアプリ(swiftやjava)と比べると速度が落ちるなどのデメリットもありますが、1ソースで開発ができるメリットの方が高いという判断などもあり、導入される企業なども少なくありません。
今回はAngular 8とCordovaを用いてハイブリットアプリを作る基盤を作っていきます。
実際にエミュレータ上でiOSアプリとしてAngularのコードを動かすところまで作成していきます。
- 環境
- 【手順 1】Cordovaのインストール
- 【手順 2】Angularのインストール
- 【手順 3】 Angularプロジェクトの作成
- 【手順 4】Angular プロジェクトの中にCordovaプロジェクトを組み込む
- 【手順 5】iosビルドをできるようにする
- 【手順 6】 Angularビルドを行う
- 【手順 7】 Cordova を使って実際にiOSアプリを動かす
環境
以下の物を揃えてください
- Node JS ((https://nodejs.org/ja/からインストール))
- Visual Studio Code (JavaScriptの開発はこちらを使うと便利です)
- Mac端末
【手順 1】Cordovaのインストール
以下のコマンドでApache Cordovaをインストールします。
npmコマンドはNode JSのインストールが完了していれば自動的に使えるようになります。
-gオプションはcordovaをグローバルにどこでも使えるようにインストールするためのオプションです。
npm install -g cordova
【手順 2】Angularのインストール
同じようにAngularをインストールします。
以下を行うことにより、Angularを使うためのコマンド(ng)が使えるようになります。
npm install -g @angular/cli@8.3.9
【手順 3】 Angularプロジェクトの作成
以下のコマンドでAngular プロジェクトを作成します。
フォルダが作成されるので、ソースコードを置きたいディレクトリで行ってください。
ng new MyApp
【手順 4】Angular プロジェクトの中にCordovaプロジェクトを組み込む
AngularプロジェクトとCordovaプロジェクトは別です。
Angularプロジェクトでは、アプリの動きの部分を担って
Cordovaプロジェクトではアプリのネイティブプラグイン(カメラやプッシュ通知など)やネイティブの設定をしていきます。
cd myApp
cordova create CordovaMobileApp example.com "CordovaMobileApp"
【手順 5】iosビルドをできるようにする
cordova platform add ios
【手順 6】 Angularビルドを行う
いよいよ、アプリを動かすためにAngularビルドをしていきます。
Angularで何もソースコードを書いていないと思うかもしれませんが、
Angularにはデフォルトで動くソースコードがあらかじめ入っているので、それを使って動かしていきます。
ビルドしたファイルはCordovaのwwwフォルダに出力します。
こうすることによって、CordovaプログラムがAngularで作成したhtmlやjsを使ってアプリを起動するよ雨になります。
ng build --prod --base-href . --output-path CordovaMobileApp/www/
【手順 7】 Cordova を使って実際にiOSアプリを動かす
最後にエミュレータを使ってアプリを動かしてみます。
以下のコマンドを入力して、実際にエミュレータにアプリが起動すれば完了です。
今後はAngularのコードを修正して手順6と手順7を行うことでアプリを更新していくことができるようになりました。
cordova run ios