Androidへのエクスポート

Exporting for Android has fewer requirements than compiling Godot for Android. The following steps detail what is needed to set up the Android SDK and the engine.

Android SDKをダウンロード

Download and install the Android SDK.

  • You can install it using Android Studio version 4.1 or later.

    • Run it once to complete the SDK setup using these instructions.

    • Ensure that the required packages are installed as well.

      • Android SDK Platform-Tools version 30.0.5 or later

      • Android SDK Build-Tools version 30.0.1

      • Android SDK Platform 29

      • Android SDK Command-line Tools (latest)

      • CMake version 3.10.2.4988404

      • NDK version 21.4.7075529

  • You can install it using the command line tools.

    • Once the command line tools are installed, run the sdkmanager command to complete the setup process:

sdkmanager --sdk_root=<android_sdk_path> "platform-tools" "build-tools;30.0.1" "platforms;android-29" "cmdline-tools;latest" "cmake;3.10.2.4988404" "ndk;21.4.7075529"

注釈

If you are using Linux, do not use an Android SDK provided by your distribution's repositories as it will often be outdated.

Install OpenJDK 8

Download and install OpenJDK 8.

デバッグキーストアを作成する

Android needs a debug keystore file to install to devices and distribute non-release APKs. If you have used the SDK before and have built projects, ant or eclipse probably generated one for you (in the ~/.android directory on Linux and macOS, in the C:\Users\<user>\.android\ directory on Windows).

見つからない場合や生成する必要がある場合は、JDKのkeytoolコマンドをこの目的に使用できます:

keytool -keyalg RSA -genkeypair -alias androiddebugkey -keypass android -keystore debug.keystore -storepass android -dname "CN=Android Debug,O=Android,C=US" -validity 9999 -deststoretype pkcs12

これにより、現在のディレクトリに debug.keystore ファイルが作成されます。後の手順で場所が必要になるため、%USERPROFILE%\.android\ などの記憶に残る場所に移動する必要があります。keytool の使用方法の詳細については、このQ&A記事 を参照してください。

Godotで設定する

Enter the Editor Settings screen. This screen contains the editor settings for the user account in the computer (it's independent of the project).

../../../_images/editorsettings.png

Androidの設定が配置されているセクションまで下にスクロールします:

../../../_images/androidsdk.png

In that screen, 2 paths need to be set:

  • The Android Sdk Path should be the location where the Android SDK was installed. - For example %LOCALAPPDATA%\Android\Sdk\ on Windows or /Users/$USER/Library/Android/sdk/ on macOS.

  • デバック .keystore``ファイル - 上記で作成した ``debug.keystore ファイルを置いたフォルダにあります。

設定が完了すれば、Androidにエクスポートできるようになります!

ランチャーアイコンの提供

ランチャーアイコンは、Androidランチャーアプリでユーザーにアプリケーションを表すために使用されます。 Godotは高解像度アイコン(xxxhdpi 密度画面用)のみを必要とし、低解像度のバリアントを自動的に生成します。

Godotに必要なアイコンには2つのタイプがあります:

  • Main Icon: The "classic" icon. This will be used on all Android versions up to Android 8 (Oreo), exclusive. Must be at least 192×192 px.

  • Adaptive Icons: Android 8 からは、アダプティブ アイコンが導入されています。ネイティブの見た目にするには、アプリケーションはアイコンを前面と背景に分けて含める必要があります。アイコンのアニメーションとマスキングは、ランチャーによってコントロールされます。最低でも 432x432 ピクセルが必要。

参考

アダプティブ アイコンをデザインする際は、いくつかのルールに従うことが重要です。Google Designが、それらのルールとアダプティブ アイコンの機能について解説するすばらしい記事を公開 (英語)しています。

注意

The most important adaptive icon design rule is to have your icon critical elements inside the safe zone: a centered circle with a diameter of 66dp (264 pixels on xxxhdpi) to avoid being clipped by the launcher.

もし要求されるアイコンを指定しなかった場合、Godotは失敗するたびにフォールバック チェーンから次のものを試し、置き換えます:

  • Main Icon: 指定されたメイン アイコン -> プロジェクト アイコン -> デフォルトのGodotメインアイコン。

  • Adaptive Icon Foreground: 指定された前面アイコン -> 指定されたメイン アイコン -> プロジェクト アイコン -> デフォルトのGodot前面アイコン。

  • Adaptive Icon Background: 指定された背景アイコン -> デフォルトのGodot背景アイコン。

It's highly recommended to provide all the requested icons with their specified resolutions. This way, your application will look great on all Android devices and versions.

Google Playストア用にエクスポート

APKをGoogleのPlayストアにアップロードするには、デバッグ以外のキーストアファイルを使用して署名する必要があります。このようなファイルは次のように生成できます。

keytool -v -genkey -v -keystore mygame.keystore -alias mygame -keyalg RSA -validity 10000

このキーストアとキーは、開発者の身元を確認し、パスワードを記憶し、安全な場所に保管するために使用されます。GoogleのAndroidデベロッパー ガイドを使用して、APK 署名 の詳細をご覧ください。

次に、Android エクスポートプリセットで次のフォームに入力します:

../../../_images/editor-export-presets-android.png
  • Release: 生成したばかりのキーストアファイルへのパスを入力します。

  • Release User: キーエイリアスで置き換えます。

  • Release Password: キーパスワード。現在、キーストアのパスワードとキーのパスワードは同じでなければならないことに注意してください。

export_presets.cfgファイルには機密情報が含まれるようになりました。 バージョン管理システムを使用する場合は、パブリックリポジトリから削除し、 .gitignore ファイルまたは同等のファイルに追加する必要があります。

APKの名前を選択する際は、[** Export with Debug **]チェックボックスをオフにすることを忘れないでください。

../../../_images/export-with-debug-button.png

APKサイズの最適化

デフォルトでは、APKにはARMv7アーキテクチャとARMv8アーキテクチャの両方のネイティブライブラリが含まれます。これにより、サイズが大幅に増加します。より小さなAPKを作成するには、プロジェクトのAndroidエクスポートプリセットで Armeabi-v 7a または Arm 64 -v 8a のチェックを外します。これにより、単一のアーキテクチャのライブラリのみを含むAPKが作成されます。 ARMv7をターゲットとするアプリケーションはARMv8デバイスでも実行できますが、その逆は当てはまりません。

2019年8月以降、Google Playではすべてのアプリケーションを64ビット形式で利用可能である必要があります。これは、 ARMV7ライブラリ*のみ* を含むAPKはアップロードできないことを意味します。これを解決するには、Multiple APK support を使用して、いくつかのAPKをGoogle Playにアップロードできます。各APKは単一のアーキテクチャをターゲットにする必要があります。通常、ARMv7およびARMv8用のAPKを作成するだけで、現在使用されているほとんどのデバイスをカバーできます。

必要な機能のみを使用してAndroidエクスポートテンプレートをコンパイルすることにより、サイズをさらに最適化できます。詳細については、ビルドのサイズを最適化する を参照してください。