APK vs XAPK vs AAB: 完全な比較

A small APK box, a bigger XAPK box and a sealed AAB parcel compared in a row

XAPKとAPKの比較 (および AAB を比較した場合、実質的な最大の違いは Android でのインストール方法です。標準の .apk) は 1 タップで直接インストールされますが、.xapk は分割された APK と OBB ゲーム アセットをバンドルしており、最初にマージまたはアンパックする必要があります。以下は、APK 対 XAPK 対 AAB の視覚的なアーキテクチャ図と比較表を並べたものです。

Visual comparison chart of Android package formats: .APK vs .XAPK vs .APKS/.APKM vs .AAB
ビジュアル アーキテクチャの比較 (XAPK vs APK vs AAB): 内部 ZIP ツリー、Android PackageInstaller の直接サポート、および各形式をスタンドアロン .apk に変換するブラウザ ツール。

早見表

特徴 APK XAPK AAB
フルネーム Androidパッケージ 拡張APK Android アプリバンドル
直接インストール可能 はい いいえ いいえ
OBBを含む いいえ はい 該当なし
Play ストアで使用される 遺産 いいえ はい
最大サイズ ~150MB 4GB以上 150MBベース
デバイスごとに最適化 いいえ いいえ はい

APK (Android パッケージ)

APK

オリジナルで最も広く知られている形式。 APK は、アプリの実行に必要なすべてのコード、リソース、アセットを含む単一のファイルです。

長所

  • 取り付けが簡単
  • 広くサポートされている
  • 簡単に共有できる
  • すべての Android デバイスで動作します

短所

  • サイズ制限 (~150MB)
  • すべてのデバイスで同じファイル
  • 組み込みの拡張サポートはありません

以下に最適: 小規模から中規模のアプリ、サイドローディング、アプリを直接共有

XAPK (拡張APK)

XAPK

XAPK は、APK ファイルと OBB 拡張ファイルを 1 つのパッケージにバンドルします。主に APKPure などのサードパーティのアプリ ストアで使用されます。

長所

  • 大規模なアプリの単一ダウンロード
  • 必要なデータがすべて含まれています
  • 個別の OBB ダウンロードは必要ありません

短所

  • 直接インストールできない
  • 特別なインストーラーまたは解凍が必要
  • Google の公式形式ではありません

以下に最適: 大規模なゲーム、追加のデータ ファイルを含むアプリ

AAB (Android アプリバンドル)

AAB

Google の最新の出版形式。 AAB ファイルは Play ストアにアップロードされ、各デバイスに最適化された APK が生成されます。

長所

  • ユーザーのダウンロード サイズを小さくする
  • デバイス固有の最適化
  • Play 署名によるセキュリティの向上
  • 動的な機能配信

短所

  • デバイスに直接インストールできない
  • Play ストアまたはバンドルツールが必要です
  • 開発者にとってはより複雑

以下に最適: Google Play ストアで公開

各形式をいつ使用するか

次の場合に APK を使用します。

  • Play ストア以外のソースからアプリをインストールする
  • 他のユーザーとアプリを直接共有する
  • アプリのサイズは 150MB 未満です

次の場合に XAPK を使用します。

  • APKPure などから大規模なゲームをダウンロードする
  • アプリには OBB データ ファイルが必要です
  • すべてを 1 回のダウンロードで済ませたい

次の場合に AAB を使用します。

  • Google Play ストアにアプリを公開する
  • ユーザーにとって最適なダウンロード サイズが必要
  • 動的な機能配信が必要

フォーマット間の変換が必要ですか?

無料のツールを使用して、XAPK を APK などに変換します。

実際のファイル サイズ: これらの数値は実際にはどうなるか

実際にダウンロードしたアプリのサイズを確認すると、これらの違いは抽象的ではなくなります。以下の数字は、2026 年に人々が遭遇するおおよその数字ですが、正確な数字はお使いのデバイス、言語、携帯電話が使用する CPU によって変化します。

アプリ/ゲーム 単一の APK XAPK バンドル Play ストア (AAB より)
中規模のユーティリティ (天気アプリなど) ~30MB 該当なし (単一の APK は問題ありません) ~12 MB (分割後)
生産性スイート ~150MB ~150MB ~70 MB デバイス固有
中型 3D ゲーム 該当なし (単一APKの制限を超えています) ~600MB ~250 ~ 350 MB (デバイス固有)
大規模なオープンワールド ゲーム 該当なし 2~4GB 1 ~ 2 GB デバイス固有

経験則は非常にシンプルです。全体が約 100 ~ 150 MB に収まり、1 つの CPU アーキテクチャのみを対象とする場合は、プレーン APK が最も扱いやすいです。パッケージが複数のアーキテクチャ (arm64-v8a、armeabi-v7a、x86_64)、さまざまな画面密度のアセット、または大量のゲームプレイ データを保持する必要がある瞬間、そのシンプルさは崩れます。XAPK はすべてを 1 回のダウンロードにまとめて自分で移動できるのに対し、AAB は Play に仕事を渡し、各デバイスが実際に必要とするものにバンドルをトリミングします。

各コンテナの内部: クイック ツアー

APK の実際の内容

アーカイブ ツールで .apk を開くと、ほぼ同じレイアウトが表示されます。アプリの ID と権限を記述する AndroidManifest.xml、コンパイルされたバイトコードを保持する classes.dex ファイル (または複数)、resources.arsc リソース テーブル、コンパイル済みのイメージとレイアウトの res/ ディレクトリ、開発者がそのまま出荷することを選択した生ファイルの assets/ ディレクトリです。ネイティブ コードは lib/<abi>/ の下に存在し、アビ は CPU アーキテクチャです。 META-INF/ ディレクトリには、ファイルの作成者を証明する暗号署名が含まれています。

XAPK 内の変更点

XAPK 自体は、1 つ以上の APK ファイルとサイドカー manifest.json を含む ZIP アーカイブです。最も単純な XAPK は「ベース APK + 1 つの OBB ファイル」です。より複雑なバンドルは、「ベース APK + いくつかの config.<abi>.apk、config.<density>.apk、および config.<language>.apk 分割」のように見えます。つまり、AAB がサーバー上で生成するものと同じ構造が、オフライン配布用にパッケージ化されています。

AAB 内での変更点

AAB も ZIP ですが、意図的に 直接インストールできない になっています。内部には、バンドルを分割する方法を記述した BundleConfig.pb プロトバッファに加えて、マニフェスト、リソース、dex ファイル、分割前の形式でネイティブ ライブラリを保持する base/ ディレクトリと (オプションで) feature_module/ ディレクトリがあります。 Google 独自のサーバー側ツールとオープンソース bundletool により、このバンドルは、ユーザーが実際にインストールするデバイスごとの APK 分割に変換されます。

意思決定ガイド: どの形式を選択する必要がありますか?

ファイルを手に持っていて、それをどうすればよいかわからないためにこれを読んでいる場合は、次の質問に順番に答えてください。

  1. ファイルは 150 MB 以下の単一の .apk ですか? 直接インストールしてください。 Play ストア以外から来たものである場合は、最初に APK ベリファイア を使用して署名証明書を確認します。
  2. .xapk ファイルですか? SAI などのオープンソースの分割 APK インストーラーを使用してインストールするか、ブラウザベースのコンバータ を使用して単一の APK に変換してインストールします。
  3. .apks アーカイブですか? これは、既にデバイスごとの APK に分割された bundletool の出力です。関連する分割を APK と APK の統合 とマージするか、ADB の install-multiple コマンドを使用します。
  4. .aab ファイルですか? 直接インストールすることはできません。 AABからAPKへ を使用して bundletool を実行し、最初にユニバーサル APK を生成します。

よくある誤解

「XAPK はより新しく、より優れた APK です。」

Android プラットフォームの機能という意味では、新しいものではありません。 Android OS は XAPK が何であるかを知りません。サードパーティのインストーラー アプリのみが可能です。オペレーティング システムの観点から見ると、インストール時間はプレーン APK でも機能します。

「AAB は単なる別の APK です。」

AAB はパブリッシャー側の形式です。ユーザーが AAB を直接インストールすることはありません。 Play ストア ユーザーが AAB として公開されたアプリで [インストール] をタップすると、Google のサーバーがその特定のデバイスに合わせた APK のセットを生成し、発行者のアップロード キーで署名し、デバイスにそれらがインストールされます。

「XAPK が大きいほど、ゲームの能力が高くなります。」

必ずしもそうとは限りません。同様の機能を持つ 2 つのゲームは、XAPK サイズが大きく異なる可能性があります。これは、1 つは非圧縮テクスチャと 1 つの ABI を提供し、もう 1 つは圧縮されたアセットと 4 つの ABI を提供するためです。ファイル サイズの数値が意味のある品質信号となることはほとんどありません。

「.xapk の名前を .apk に変更してインストールできます。」

あなたはできません。 有効な APK ではないため、OS はそのファイルを拒否します。それは 含まれています APK の ZIP です。最初に内部 APK を抽出する必要があります。それがまさに私たちのコンバーターが行うことです。

クイックリファレンス

この記事のいくつかの文しか覚えていない場合は、次のようにしてください。

Mst Shaefale による設計と文書化 リード開発者兼 Android パッケージ アーキテクト • Android 12 ~ 15 で検証済み

Mst Shaefale は、クライアント側の XAPK/APKS マージ、バイナリ マニフェスト パーサー、APK v1+v2 署名ツールを xapktoapk.com で保守しています。古いコマンドや OS の変更を見つけましたか?編集メモを送信します。