Android アプリのビルド

ビルドの種類

Monaca では、デバッグビルド版、リリースビルド版の 2 種類の Android アプリをビルドできます。これらの相違点は、次のとおりです。

ビルドの種類

説明

インストール方法

デバッグビルド

パッケージに署名がないため、

マーケットでの配布は行えません。

リリースビルド

コードサイン ( コード署) を使用して、

署名したパッケージです。

マーケットで配布できます。

  • サイドローディング

  • Google Play ストア経由

    または他のマーケット経由

サイドローディング ( Sideloading ) とは、一般的にはファイルのアップロード・ダウンロードを指しますが、ここでは、アプリのパッケージ ( APK 形式 ) を、マーケットを経由せずに、端末にインストールすることを指します。ビルド後、APK ファイルを直にダウロードして、インストールします。

ステップ 1 : Android アプリの設定

  1. Monaca クラウド IDE のメニューから、設定 → Android アプリ設定 を選択します。

  2. アプリに関する情報を入力します。

  • 一般的な設定

アプリケーション名

アプリの名前を入力します。

マーケット上などで表示されます。

パッケージ名

Android のマーケットへのアップロード時に使用される、一意の名前を入力します。

逆ドメイン形式を推奨します ( io.monaca.app_name など )。

英数字のみ使用でき、各節はピリオドで区切ります ( 1 つ以上のピリオドを使用 )。

ピリオドで区切られた各節の先頭文字には、英字を使用します。

また、アンダースコア ( _ ) も使用可能です。

ビルド種別ごとにパッケージ名を分ける

有効にした場合、リリースビルド版アプリのパッケージ名と

デバッグビルト版アプリのパッケージ名は、異なる名になります。

デバッグビルド版アプリのパッケージ名の拡張子は .debug となり、

プロジェクトのデバッガーのパッケージ名の拡張子は .debugger となります。

ただし、デフォルトでは、このオプションは無効になっています。

有効にしてしまうと、

決まったパッケージ名に紐付けされているプラグインが存在する場合 ( In-App Purchase など )、デバッグができなくなるためです。

バージョン

アプリのバージョン番号を入力します。

バージョン番号には、ドット区切りの数値を使用します ( 例 : 1.0.0 )。

バージョンコード

内部処理で使用する、アプリのバージョン番号です

( バージョンが複数ある同一アプリの処理用 )。

整数を使用します。このコードを使用して、アプリの更新の有無を決定します。

フルスクリーン

有効にした場合、フルスクリーン ( 全画面表示 ) でアプリを実行します。ステータスバーは非表示になります。

  • その他 : ここでは、Android アプリに関する詳細を設定します。

    許可する外部 URL

    *

    アプリからアクセスできる URL ( 単数または複数 ) を指定します。「 * 」 に設定した場合、すべてのドメインへのアクセスを許可します。

    バックグラウンド時もアプリを常に実行

    有効

    バックグラウンド時にも Cordova を実行したい場合、有効化します。

    オーバースクロールを無効

    有効

    WebView の端を越えたときの挙動 ( オーバースクロールの有無 ) を設定します。

    画面の向き

    Default

    Landscape または Portrait を指定できます ( アプリ実行時の画面の向き )。

設定後、保存する をクリックします。

現在、iOS の [ App ID ] または Android の [ パッケージ名 ] のいずれかを変更すると、両方とも同じ名前に更新されます。それぞれに別の名を設定する場合には、 App ID ( iOS 側 ) と パッケージ名 ( Android 側 ) にそれぞれ異なる値を設定するには? をご確認ください。

3. アダプティブ アイコンの設定

Cordova 9.0 以降の Monaca プロジェクトを使用している場合は、Android 8.0 以降にアダプティブ アイコンを設定することができます。

アダプティブ アイコンを設定する場合は、res フォルダー配下に画像ファイルをアップロードし、config.xml の icon タグに background 属性と foreground 属性を追加します。これまでの src 属性が設定されている場合は、src 属性の値は使用されません。

アダプティブ アイコンに対応していない OS バージョン場合は、foreground 属性に設定された画像が表示されます。これまでの src 属性を設定した場合は、src 属性の値が優先されます。

以下は、/res/android/icon/ 配下に画像を配置している例になります。

<platform name="android">
 <icon density="ldpi" background="/res/android/icon/ldpi-background.png" foreground="/res/android/icon/ldpi-foreground.png"/>
 <icon density="mdpi" background="/res/android/icon/mdpi-background.png" foreground="/res/android/icon/mdpi-foreground.png"/>
 <icon density="hdpi" background="/res/android/icon/hdpi-background.png" foreground="/res/android/icon/hdpi-foreground.png"/>
 <icon density="xhdpi" background="/res/android/icon/xhdpi-background.png" foreground="/res/android/icon/xhdpi-foreground.png"/>
 <icon density="xxhdpi" background="/res/android/icon/xxhdpi-background.png" foreground="/res/android/icon/xxhdpi-foreground.png"/>
 <icon density="xxxhdpi" background="/res/android/icon/xxxhdpi-background.png" foreground="/res/android/icon/xxxhdpi-foreground.png"/>
</platform>

以下は、src 属性を設定した例になります。

<platform name="android">
 <icon src="/res/android/icon/ldpi.png" density="ldpi" background="/res/android/icon/ldpi-background.png" foreground="/res/android/icon/ldpi-foreground.png"/>
 <icon src="/res/android/icon/mdpi.png" density="mdpi" background="/res/android/icon/mdpi-background.png" foreground="/res/android/icon/mdpi-foreground.png"/>
 <icon src="/res/android/icon/hdpi.png" density="hdpi" background="/res/android/icon/hdpi-background.png" foreground="/res/android/icon/hdpi-foreground.png"/>
 <icon src="/res/android/icon/xhdpi.png" density="xhdpi" background="/res/android/icon/xhdpi-background.png" foreground="/res/android/icon/xhdpi-foreground.png"/>
 <icon src="/res/android/icon/xxhdpi.png" density="xxhdpi" background="/res/android/icon/xxhdpi-background.png" foreground="/res/android/icon/xxhdpi-foreground.png"/>
 <icon src="/res/android/icon/xxxhdpi.png" density="xxxhdpi" background="/res/android/icon/xxxhdpi-background.png" foreground="/res/android/icon/xxxhdpi-foreground.png"/>
</platform>

現在、Androidアプリ設定画面からはアダプティブ アイコン用アイコン画像の表示・アップロードができません。上記の方法で直接config.xmlファイルに設定を加えてください。

ステップ 2 : Android キーストア ( KeyStore ) の設定

キーストアは、バイナリーファイルです。このファイルには、秘密鍵 ( 単数または複数 ) が格納されています。秘密鍵は、組織または個人を表す 「 判子 」 の役割をします。キーストアは、パスワードを使用して、暗号化されます ( パスワードを紛失した場合には、復旧できません )。キーストアを紛失した場合、または、別のキーストアで上書きされてしまった場合、同じ鍵を使用しても、署名済みパッケージを再署名することはできません。[ 翻訳者メモ : キーストアの内容に関しては、いろいろな説明方法があるようで、人によっては、「 キーストアには秘密鍵と証明書の情報がセットで格納されている 」、「 キーストアとは証明書そのものであり、そこには鍵情報が格納されている 」 としています。なお、このキーストアを apk ファイルに添えれば、「 署名 」 完了となります ]

リリースビルド版の Android アプリをビルドするときに、キーストアが必要となります。Monaca では、新規のキーストアを作成するか、または、既存のキーストアをインポートできます。ここでは、新規に作成することを前提に解説します。次の手順に従います。

  1. Monaca クラウド IDE のメニューから、設定 → Android キーストア設定を選択します。

  2. 「 キーストアとエイリアスの管理 」 画面が表示されます。

3. クリアして新規作成ボタンをクリックすると、キーストアの設定画面が表示されます。

4. 上のスクリーンショットに表示されている項目に、必要な情報を入力します。

  • エイリアス : アプリの署名時に使用する秘密鍵の名前です。1 つのキーストア内に、複数のエイリアスを格納できます。

  • エイリアスのパスワード : エイリアス ( 秘密鍵 ) 用のパスワードです。

  • キーストアのパスワード : キーストア用のパスワードです。このキーストアをインポートするときに、このパスワードが必要となります。

5. 次に、キーストアとエイリアスを作成する ボタンをクリックして、キーストアを作成します。

キーストアを紛失した場合、同じ鍵を使用しても、署名済みのパッケージに再署名を行うことはできなくなります。よって、アプリの署名に使用したキーストアの取り扱いには注意しましょう。バックアップを取ることを推奨します。キーストアをダウンロードする場合には、エクスポート ボタンをクリックします。

ステップ 3 : アプリのビルド

  1. Monaca クラウド IDE のメニューから、ビルド → Android アプリのビルド を選択します。

  2. 目的に応じたビルドの種類を選択して、 ビルドを開始するボタンをクリックします。

3. 「 リリース向けビルド 」 の 「 リリースビルド 」 を選択した場合、ビルドを開始する前に、署名用エイリアスの選択とパスワードの入力を行います。

4. ビルドが完了するまで、しばらく待ちます。ビルドが成功した場合には、次のような画面が表示されます。ビルドの完了後、ビルド済みアプリをインストールまたはダウンロードできます。

最終更新