Androidでの開発
このガイドでは、Capacitor または Cordovaを使用して、Androidエミュレータおよびデバイス上でIonicアプリケーションを実行およびデバッグする方法について説明します。AndroidアプリはWindows、macOS、Linux上で開発できます。
Android Studio
Android Studio はネイティブなAndroidアプリを作るためのIDEです。Android SDKが含まれており、コマンドラインで使用できるように設定する必要があります。
Androidエミュレータに必要な Android仮想デバイス の作成にもAndroid Studioが使用されます。Ionicアプリは デバイスに起動することもできます。
note
Android Studioを使ってIonicアプリを開発することはお勧めしません。実際には、ネイティブのAndroidプラットフォーム向けにアプリをビルドして実行したり、Android SDKや仮想デバイスを管理するためだけに使うべきです。
Android Studioのインストール
Android website からAndroid Studioをダウンロードします。より詳しいインストール手順は User Guide をご覧ください。Android SDKのインストール
Android Studioをインストールしたら起動します。IDEは、Android SDKのインストールが必要であることを検出するはずです。SDK Components Setupの画面で、SDKのインストールを完了して、Android SDKのパスのをメモしておいてください。
デフォルトでは、最新の安定版SDKプラットフォームがインストールされ、そのバージョンのAndroidをターゲットにするために必要なパッケージもコレクションされています。
システムイメージやその他のマイナーSDKプラットフォームパッケージをインストールするには、SDK Managerの下部にある Show Package Details がオンになっていることを確認する必要があります。
今後の参考情報ですが、Android SDKはAndroid Studioの起動画面の Configure » SDK Manager メニュー、またはAndroidプロジェクト内の Tools » SDK Manager で管理することができます。
コマンドラインツールの設定
Android SDKには便利なコマンドラインツールが付属しています。これは利用する前に、いくつかの環境変数を設定する必要があります。以下のドキュメントは、macOSとLinuxのものです。WIndowsの場合は、ターミナルセッションでの環境変数の設定と保存に関するドキュメントを確認ください。
~/.bashrc
もしくは~/.bash_profile
、または同様のシェル起動スクリプトを、次のように変更します。s:
ANDROID_SDK_ROOT
環境変数を設定します。このパスは、前のセクションでメモしたAndroid SDKのパスです。For Mac:
$ export ANDROID_SDK_ROOT=$HOME/Android/sdk
For Linux/Windows:
$ export ANDROID_SDK_ROOT=$HOME/Android/Sdk
Add the Android SDK command-line directories to
PATH
. Each directory corresponds to the category of command-line tool.$ # avdmanager, sdkmanager
$ export PATH=$PATH:$ANDROID_SDK_ROOT/tools/bin
$ # adb, logcat
$ export PATH=$PATH:$ANDROID_SDK_ROOT/platform-tools
$ # emulator
$ export PATH=$PATH:$ANDROID_SDK_ROOT/emulatornote
For
apksigner
andzipalign
,$ANDROID_SDK_ROOT/build-tools<version>
must also be added toPATH
.
Android仮想デバイスの作成
Android仮想デバイス(AVD)は、AndroidエミュレータがAndroid OSを実行するために利用する設計図です。以下のドキュメントはAndroidエミュレータをセットアップするための簡単な方法です。詳細な手順と情報は、Android のドキュメントを参照ください。
AVDはAVD Managerで管理します。Android Studioの初期画面で、 Configure » AVD Manager をクリックします。AVD Managerは、Androidプロジェクト内で、-Tools » AVD Manager メニューから開くこともできます。
Create Virtual Device をクリックし、適切なデバイス定義を選択します。不明な場合は、 Pixel 2 を選択し、適切なシステムイメージを選択します。よく分からない場合は、Pie (API 28) with Google Play servicesを選択してください。Androidのバージョンについては、Androidのバージョン履歴を参照してください。
AVDが作成されたら、AndroidエミュレータでAVDを起動します。エミュレータを実行し続けることは、Android用のIonicアプリケーションを開発しながら検出を確実にするための最良の方法です。
Androidデバイスを設定する
Androidハードウェアの実物は、Ionicアプリ開発でも使用できます。しかし、最初に、デバイスを開発用にセットアップする必要があります。以下のドキュメントは開発用にAndroidデバイスを設定する簡単な方法です。詳細な手順と情報については、the Android documentationを参照してください。
- デバイスのUSBデバッグを有効にします。Settingsを開き、Developer optionsに移動し、USB debuggingを有効にします。Developer optionsのメニューを最初に有効にする必要があるかもしれません。手順についてはthe Android documentationをご確認ください。
- デバイスにコンピュータへの接続許可があることを確認してください。macOSの場合、追加の設定は不要です。Windowsの場合はOEM USB driversをインストールしてください。
USBケーブルでデバイスをコンピュータに接続し、次のコマンドを使用して接続が機能することを確認します。
adb devices
デバイスがリストされます。トラブルシューティングと詳細情報については、 adb
documentation を参照してください。
Cordova Setup
Cordovaがプログラムビルドをサポートするには、追加のセットアップが必要です。 Capacitorには不要です。
Java
ネイティブのAndroidアプリは Java プログラミング言語でコンパイルされている。ダウンロードページからJDK 8をdownload pageします。
note
残念ながら、Cordovaは最新バージョンのJavaと互換性がありません。
Gradle
Gradle はAndroidアプリで使用されるビルドツールで、別途インストールする必要があります。詳細については、 install page を参照してください。プロジェクトのセットアップ
アプリをAndroidシミュレータやデバイスにデプロイする前に、ネイティブプロジェクトを設定する必要があります。
ネイティブプロジェクトが存在しない場合は、生成します。
Capacitorでは以下の実行をサポートしています:
$ ionic capacitor add android
For Cordova, run the following:
$ ionic cordova prepare android
Set the Package ID.
For Capacitor, open the
capacitor.config.json
file and modify theappId
property.For Cordova, open the
config.xml
file and modify theid
attribute of the root element,<widget>
. See the Cordova documentation for more information.
Capacitorでの実行
CapacitorはAndroid Studioを使って、シミュレータやデバイスへのアプリの構築と実行を行います。
Ionicアプリを開発してネイティブプロジェクトに同期します
重要な変更が行われるたびに、変更がAndroidシミュレータやデバイスに表示されるようにするには、WebアセットにIonicアプリを組み込む必要があります。次に、Webアセットをネイティブプロジェクトにコピーする必要があります。幸い、このプロセスはIonic CLIコマンド1つで簡単になります。
$ ionic capacitor copy android
Android StudioでRunボタンをクリックして、シュミレーターかデバイスを選択ください。
ライブリロード
リロードサーバを起動するには、次のコマンドを実行します。
ionic capacitor run android -l --external
デバイス上で実行する場合は、デバイスと開発マシンが同じネットワークに接続されていることを確認してください。
Cordova で実行する
Ionic CLI は、コマンドひとつで Ionic アプリをビルド、コピー、Android シミュレーターやデバイスにデプロイすることができます。また、ionic serve
で使用されているような開発サーバーをスピンアップして、live-reload 機能を提供することが可能です。
次のコマンドを実行すると、live-reload サーバを起動する CLI プロセスが長時間実行されます。
ionic cordova run android -l
これで、アプリのソースファイルに変更があった場合、Web アセットが再構築され、再度デプロイしなくてもシミュレータやデバイスに変更が反映されるようになりました。
Androidアプリのデバッグ
アプリがAndroidデバイスやエミュレータ上で動作するようになったら、 Chrome DevToolsを使ってデバッグすることができます。
Chrome DevToolsの利用
Chromeは、AndroidシミュレータとデバイスのためのWeb開発者ツールをサポートしている。シミュレータが動作している間、またはデバイスがコンピュータに接続されている間にChromeで chrome://inspect
に移動し、デバッグが必要なアプリケーションを Inspect します。
note
アプリケーションがデバイスまたはシミュレータで実行されていることを確認してください。実行されていない場合は、リストに表示されません。
Native Logsの表示
Android Studioで実行している場合、ネイティブログは Logcat に表示されます。
note
Logcat ウインドウが非表示の場合は、 View » Tool Windows » Logcat から有効にします。
Logcat には ADB を利用してアクセスすることもできます。
adb logcat