hAcKTion

日々のアウトプット場所。

IonicとCapacitorを使ったアプリを準備する(Androidプロジェクトの設定)

前回から引き続き、IonicとCapacitorのアプリを構築していきます。
次は、Androidのプラットフォーム(プロジェクト)をアプリに追加します。

$ npx cap add android

差分はこのようになりました

package.jsondependencies@capacitor/android が追加されています。
そして android/ というディレクトリが作られて中に様々なファイルが入っています。
Androidアプリを作った事がないので詳細はよくわかりませんが、アプリを起動してWebviewのガワを表示するところまでを準備してくれていそうです。
ここにリソースとしてSPAを埋め込んでおくのかなと今のところ理解しています。

こうする事で、Android Studioで作ったSPAを内包したアプリを開く事ができます。
下記コマンドで、SPAをAndroidプロジェクトに反映させることができます。

$ npx cap copy

上記の通り、アプリとして動かすためにはAndroid Studioをインストールする必要があります。(1.5GBもあるんですね...)

developer.android.com

初めてAndroid Studioを開くと、SDKを選択しようと言われます。

f:id:akt-uehr:20200829180139p:plain

このダイアログ中にあるリンクは切れているので、一旦無視して Cancel で抜けます。

Android Studioをインストールできたら、下記コマンドでAndroidプロジェクトをAndroid Studioで開きます。

$ npx cap open android

アプリを起動するために、SDKをインストールします。
Android SDK Tools 26.0 .1以上と、Android SDK Platforms for API21以降が必要なので、SDKをインストールします。

Android Studio で、 Android Studio -> Preference を開きます。

f:id:akt-uehr:20200829192046p:plain

Appearance & Behavior -> System Settings -> Android SDK を選択し、
Android SDK Location のボックスにある Edit を押します。

f:id:akt-uehr:20200829192130p:plain

自分の場合、下記のようなチェックになっており、特にチェックをつけたり外したりはできなかったです。

f:id:akt-uehr:20200829192303p:plain

そのまま進んでいくと、ダウンロードが始まります。 終わったら Finish で完了です。

先ほどの Android SDK の画面で SDK Platform もダウンロードします。
現時点では、Android10.0 (Q) がCapacitorの対応範囲で最新なので、これを入れておきます。

f:id:akt-uehr:20200829202848p:plain

f:id:akt-uehr:20200829202929p:plain

続いて、 AVD Manager で、 Simulator をダウンロードします。

f:id:akt-uehr:20200829203307p:plain

+ Create Virtual Device を押します。

f:id:akt-uehr:20200829203322p:plain

今回は、 Pixel 3a を選択して、 Next を押します。

f:id:akt-uehr:20200829203401p:plain

System imageとしてAndroidのバージョンを選択します。未ダウンロードの場合は、ダウンロードします。

f:id:akt-uehr:20200829203507p:plain

画面上部のツール部分に Add Configration... を押して、 Templates から Android App を選択し、 Module から app を選択します。

f:id:akt-uehr:20200829204316p:plain

f:id:akt-uehr:20200829204337p:plain

f:id:akt-uehr:20200829204350p:plain

Sync Project with Gradle Files を押します。

f:id:akt-uehr:20200829204617p:plain

ここまでくると、画面上部のツール部分が以下のようになっていて、再生アイコンを押すとシミュレータで作ったアプリが起動します。

f:id:akt-uehr:20200829204639p:plain

f:id:akt-uehr:20200829204718p:plain

これでAndroidプロジェクトの作成はできました!

ハイブリッドアプリの差分としては、

jarRepository.xml
misc.xml
Project.xml

3つが差分として出てきました。(途中色々設定をいじってしまったので、もしかするとここは環境によって違うかも)

次は、 iOSプロジェクトの作成をしていきます。