重要: Windows 11向けAmazonアプリストアは、2025年3月5日をもってサービスを終了します。詳しくは、ブログをご参照ください。
Amazonアプリストアの既存のアプリは、Android™️用Windowsサブシステム(WSA)を介してWindows 11で実行できるようになりました。ほとんどのWindowsデバイスはx86アーキテクチャベースのIntelまたはAMDプロセッサを搭載していますが、ほとんどのAndroidアプリはARMアプリケーションバイナリインターフェイス(ABI)を利用してビルドされています。Android™️用Windowsサブシステム(WSA)では、Intel Bridge Technology(IBT)を使用して、x86ベースのプロセッサでARM®アプリをエミュレートします。
ARMバイナリを使用してビルドされたAndroidアプリは、Windows 11のエミュレーションレイヤーを介してWSAで実行されます。エミュレーションプロセスによるパフォーマンス面での負荷の増大を解決するために、アプリのx86バージョンとARMバージョンを提供し、アプリをネイティブハードウェアで直接実行できるようにすることをお勧めします。本記事では、x86バイナリファイルをターゲットにして、Amazonデバイスとサポート対象のWindows PC向けにアプリを最適化する方法を説明します。ターゲットアーキテクチャを含むApp BundleやAPKでWindowsデバイスをターゲットにすることにより、ユーザーがアプリのインストールを選択したときに、常に快適なエクスペリエンスを得られます。
Unityでのターゲットアーキテクチャの指定:
ゲームでUnityゲームエンジンの互換バージョンを使用している場合は、次の手順に従ってx86/x86-64 Androidターゲットを有効にします。
Gradle/ndk-build/CMakeでのターゲットアーキテクチャの指定:
x86およびx86_64のサポートを追加すると、ネイティブライブラリのサイズに影響を与える場合があります。Android App Bundleを活用して、4つのアーキテクチャ(arm64-v8a、armeabi-v7a、x86、x86_64)のサポートを含める際のサイズの影響を最小限に抑えることをお勧めします。Fireタブレット用とWindows 11デバイス用の両方のaabバイナリを申請できます。
各App Bundleが一意のバージョンコードを持つように設定してください(バージョン管理の構成)
Googleは、2021年8月以降、Google Playで新規アプリを公開する際の必須形式として、Android App Bundle形式を発表しました。複数のABIをターゲットとする場合は、AABバイナリを申請することをお勧めします。これにより、アプリをさまざまなデバイスでダウンロードし、インストールする前に、ファイルのサイズが最適化します。Windowsデバイス用にアプリの準備ができたら、Windows 11をターゲットとするアプリを申請できます。AABビルドを申請できず、APKファイルのサイズが懸念される場合に備えて、開発者コンソールには同じアプリに複数のバイナリを追加するオプションが用意されています。複数のバイナリを使用する場合、アプリの申請時のエラーを回避するには、各パッケージには一意のバージョンコードを使用し、同じ公開アプリの各バイナリには同じパッケージ名を使用します。
ARMとX86の両方のABIをサポートしてAmazonデバイスとWindows 11をターゲットにすることにより、アプリを最適化し、シームレスなクロスプラットフォームユーザーエクスペリエンスをユーザーに提供できます。Windows 11用にアプリのパフォーマンスを最適化する方法については、WSAを使用した入力のマッピング、起動時間の改善に関する関連記事や、Windows 11用Amazonアプリストアの記事を参照してください。