このページでは

Google Play への公開

Qt for Androidは、Android アプリの開発、ビルド、パッケージに必要なすべてを提供します。このガイドでは、アプリの設定、ビルド、Google Play Console への公開方法を説明します。

アプリの設定

CMake API を使用して、またはマニフェストを直接編集して、Android アプリの設定を構成します。Android アプリでは、AndroidManifest.xml や Gradle のビルドファイルでさまざまな設定が必要です。Qt 6 では、これらをプロジェクトで管理するための便利な CMake API を提供しています。

アプリの必須プロパティを設定する

アプリのパッケージ名、バージョン、Android SDK の要件を定義します:

set_target_properties(${appname} PROPERTIES
    QT_ANDROID_PACKAGE_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/android"
    QT_ANDROID_PACKAGE_NAME "io.qt.calqlatr"
    QT_ANDROID_APP_NAME "Calqlatr"
    QT_ANDROID_TARGET_SDK_VERSION 35
    QT_ANDROID_MIN_SDK_VERSION 28
    QT_ANDROID_VERSION_NAME "1.0"
    QT_ANDROID_VERSION_CODE 10
)

注意: 現在の Google Play ターゲットの SDK バージョン要件を確認し、それに応じてQT_ANDROID_TARGET_SDK_VERSION を設定します。最小要件よりも高いバージョンをターゲットにすることもできます。

アプリアイコンの設定

アプリアイコンを設定し、正しいディレクトリにアイコンファイルを作成します:

set_target_properties(${appname} PROPERTIES
    QT_ANDROID_APP_ICON "@drawable/ic_launcher"
)

アイコンファイルは以下のディレクトリに配置します:

<QT_ANDROID_PACKAGE_SOURCE_DIR>/res/drawable-<dpi>

アイコンファイルは

プラグイン・パッケージングの最適化

インクルードするプラグインを指定することで、アプリのサイズを縮小できます。androiddeployqtツールは、アプリの実行時に不要なプラグインを含めることがあります:

qt_import_plugins(${appname}
    INCLUDE_BY_TYPE imageformats Qt::QSvgPlugin Qt::QJpegPlugin
    EXCLUDE_BY_TYPE iconengines networkinformation tls platforminputcontexts qmltooling
)

注意: qt_import_plugins()関数は、ターゲットのリンクされた依存関係からプラグインのみを含めます。

アプリのビルド

リリース用にアプリをビルドし、Google Play Console に投稿する準備をします。

リリースビルドの設定

Google Play はリリースビルドを要求します。デバッグ情報は別のファイルとして含めることができ、より良いクラッシュレポートのために推奨されます:

  1. でプロジェクトを開きます。Qt Creator
  2. サイドバーからProjects を選択する。
  3. Release ビルド構成を選択します。
qt-cmake -DCMAKE_BUILD_TYPE=Release

マニフェストまたは Gradle 設定で debuggable がfalse に設定されていることを確認します。

マルチ ABI サポートを有効にする

互換性を最大化するために、複数のデバイスアーキテクチャ用にアプリをビルドします:

  1. Projects >にアクセスしてください。Build
  2. CMakeのコンフィギュレーション設定で、QT_ANDROID_BUILD_ALL_ABISON
qt-cmake -DQT_ANDROID_BUILD_ALL_ABIS:BOOL=ON ...

署名キーの作成

Google Play Consoleは署名付きのアプリリリースを必要とします。Googleは、2つのキーでGoogle Playマネージド署名を使用することを推奨しています:

  • 署名キー:Google Play Console でアプリを作成する際に Google が生成・管理する署名キー。
  • アップロード キー:アップロードするアプリのバンドルに署名するためにローカルで管理されます。
  1. Projects > を開くBuild
  2. 選択Build Android APK
  3. の下にあるCreate をクリックします。Application Signature
  4. キーストアの詳細を入力
  5. 有効にするSign package

詳細な手順については、Androidパッケージの署名を参照してください。

キーストアを生成します:
keytool -genkey -keyalg RSA -keystore upload-key.keystore \
    -alias play_apps \
    -storepass <password> -keypass <key-password> \
    -dname "CN=<n>, OU=<unit>, O=<organisation>, L=<city>, ST=<state>, C=<country>"

署名を有効にする:

qt-cmake -DQT_ANDROID_SIGN_APK:BOOL=ON -DQT_ANDROID_SIGN_AAB:BOOL=ON ...

環境変数を設定する:

export QT_ANDROID_KEYSTORE_PATH=upload-key.keystore
export QT_ANDROID_KEYSTORE_ALIAS=play_apps
export QT_ANDROID_KEYSTORE_STORE_PASS=<password>
export QT_ANDROID_KEYSTORE_KEY_PASS=<key-password>

アプリバンドル(AAB)の生成

Google Play Consoleでは、APKの代わりにAndroidアプリバンドル(AAB)を主に受け付けるようになりました。AAB パッケージは、Google Play が各デバイス向けにアプリの配信を最適化することを可能にします。

  1. Projects > にアクセスBuild
  2. 選択Build Android APK
  3. Advanced Actions で有効にする。Build Android App Bundle
  4. オプションで有効にするOpen package location after build
  5. プロジェクトのビルド

AABを生成する:

cd build
cmake --build . --target aab

特定のターゲットに対して

cmake --build . --target appname_make_aab

AABファイルが保存されます: /<build-path>/android-build-appname/build/outputs/bundle/release/

Google Play Console への公開

アプリのビルドと署名が完了したら、Google Play Console にアプリを公開して配布します。

アップロードの準備

アップロードする前に

  1. 異なるデバイスと Android バージョンでアプリを徹底的にテストします。
  2. プロモーション資料(スクリーンショット、説明文、機能グラフィック)を準備する。
  3. Google Play のコンテンツ ポリシーとガイドラインを確認します。

Google Play Console でアプリを作成する

  1. Google Play コンソールにログインする
  2. 新しいアプリを作成するか、既存のアプリを選択する
  3. アプリの詳細とコンテンツ評価のアンケートに回答する
  4. 価格設定と配信設定を行う

アカウントをお持ちでない場合は、Google のPlay Console 設定ガイドを参照してアカウントを作成してください。

アプリバンドルをアップロードする

  1. Release > に移動します。Production
  2. 新しいリリースを作成する
  3. 署名済みのAABファイルをアップロードします。
  4. リリースノートを追加します。
  5. リリースのレビューとロールアウト

リソース

特別な考慮事項

レガシープロジェクトのシングル ABI ビルド

マルチ ABI ビルドをサポートしていない Qt バージョン(qmake プロジェクトなど)では、各アーキテクチャを異なるバージョンコードで個別にビルドしてください:

ANDROID_VERSION_CODE = <unique_version>

<Platform><ABI><AppVersion> のようなバージョン管理スキームの使用を検討してください:

  • プラットフォーム:1: Arm 用、2: Intel 用
  • アーキテクチャ:32 ビットは 32、64 ビットは 64

例arm64-v8a用のリリース1.0では、バージョンコード16410

詳細については、Googleのアプリのバージョン管理に関するドキュメントを参照してください。

Androidにアプリケーションをデプロイする」も参照してください

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.