タブレット、折りたたみ式デバイス、ChromeOS デバイス、PC には、次の基本品質要件があります。
要件 | タブレットと折りたたみ式デバイス | ChromeOS | PC 版 Google Play Games |
---|---|---|---|
x86-64 | 任意 | 推奨 | 必須 |
サイズ変更可能性、さまざまなウィンドウ サイズ、アスペクト比をサポートする | サイズ変更のサポートを推奨 | サイズ変更のサポートを推奨 | 16:9、16:10、3:2、21:9、または縦向きのアスペクト比 9:16 のいずれかまたはすべてをサポートしていること |
構成の変更(サイズ変更、回転、折りたたみ / 展開など)時に再起動することなくゲームの状態を維持する | 必須 折りたたみ式の形状のサポートが推奨されます |
必須: サイズ変更、回転、キーボードの変更 | なし |
サポートされていない機能と権限を削除する | 推奨 特に、タブレット デバイスのリーチを最大化するために、以下は必要ありません。
|
必須 | 必須 |
ゲームのコントロール、ビジュアル、パフォーマンスがプレイアビリティを損なわない(例: 不鮮明で判読できない、UI はすべて使用可能) | 必須 | 必須 | 必須 |
マウスとキーボードのサポート | 推奨 | シングルタップ入力でゲームをプレイできない場合は必須 | シングルタップ入力でゲームをプレイできない場合は必須 |
ゲーム コントローラのサポート | 推奨 | 推奨 | 推奨 |
高解像度のグラフィック | 推奨 | 推奨 | 推奨 |
Input SDK | なし | なし | ゲームをプレイするためにキーボードが必要な場合は必須です |
PGS v2 | 任意 | 任意 | 必須 |
x86-64 ABI アーキテクチャを含める
ChromeOS デバイスや PC 版 Google Play Games などのフォーム ファクタで最高のパフォーマンスと安定性を実現するため、ゲームに含まれるすべてのライブラリに x86-64 ABI 互換バージョンを追加します。
Google は、ゲームエンジンおよびサードパーティのライブラリ プロバイダと連携して、デバイスのサポートを確保しています。最小限の作業で x86_64 バージョンのゲームを実装できるはずです。
Android App Bundle では、x86-64 の .so
ファイルの増加は、Google Play Console へのアップロード サイズにのみ影響します。Google Play ストアは必要な ABI を各デバイスに提供するため、対象のフォーム ファクタでのダウンロード サイズは変わりません。
Android マニフェストを監査してフォーム ファクタの互換性を確認する
カメラや位置情報など、スマートフォンやタブレットの一般的なハードウェア機能は、他のフォーム ファクタではご利用になれません。機能要件があるゲームを、その機能がないフォーム ファクタ デバイスにダウンロードしてインストールすることはできません。
次の ADB コマンドを使用すると、利用可能な機能の完全なリストを表示できます。
adb shell pm list features
できるだけ多くのデバイスでゲームに対応させるには、以下の推奨事項と非推奨事項に従ってください。
<uses-feature>
宣言にandroid:required="false"
を追加して、マニフェストで機能をオプションとしてマークします。これは、マニフェストですでに宣言されている機能にのみ適用されます。コード内で機能が存在することを前提としていないことを確認します。- 不足している機能を実行時に使用しないでください。
- サポートされていない Android 権限を実行時にリクエストしないでください。
- 利用可能な機能を実行時に検出し、フォーム ファクタ固有のコードパスを回避します。
マニフェストの互換性について詳しくは、以下をご覧ください。
- ChromeOS: Chromebook 向けアプリ マニフェストの互換性
- PC 版 Google Play Games: PC 版 Google Play Games の互換性と最適化
一般的な課題は、プレーヤーが従量制ネットワークに接続しているかどうかを確認するためだけに android.hardware.wifi
をリクエストするゲームが、追加の権限をリクエストせずに ConnectivityManager
API を使用できることです(接続ステータスとコネクション メータリングのモニタリングを参照)。
Google Play Console を使用して配布をサポートする
フォーム ファクタ フィルタ
Google Play Console のサポートでは、次の場所でフォーム ファクタをフィルタとして使用します。
- Android Vitals
- リーチとデバイス
- 統計情報
- 評価とレビュー
たとえば、Android Vitals で「Chromebook」をフィルタすると、すべての ChromeOS デバイスにおけるクラッシュ発生率と ANR を確認できます。次に、明確な目標を設定してゲームを最適化します。
デバイス カタログ
デバイス カタログは、ゲームに対応しているデバイスとサポートされていないデバイスを見つけるのに便利なツールです。フォーム ファクタ フィルタを使用して、サポートされていないデバイスとその理由を確認します。デバイスの詳細ページに移動して [もっと見る] をクリックすると、特定のデバイスでゲームがサポートされていない正確な理由を確認できます。次に例を示します。
- サポートされていない ABI
- サポートされていない機能と権限
- サポートされていないグラフィック API
要件を修正すると、それらのデバイスのプレーヤーが Google Play ストアでゲームを見つけられるようになります。
フォーム ファクタ トラック
フォーム ファクタの設定は、Google Play Console の [設定] > [詳細設定] > [フォーム ファクタ] で管理できます。モバイル、タブレット、折りたたみ式デバイス、ChromeOS は、デフォルトのトラックにバインドされます。すべてのフォーム ファクタに対応するために単一のリリース アーティファクトを使用すると、リリースの管理が容易になります。
PC 版 Google Play Games を管理する場合は、専用のリリース トラックを作成するか(ベータ版プログラムに参加している場合)、Android TV 向けリリース(機能を管理するために別のビルドが必要な場合)を作成します。このオプションを選択した場合、元に戻すことはできません。フォーム ファクタ向けリリースの管理に別々のトラックを使用する場合は、製品版トラックとテストトラックでさまざまなフォーム ファクタにアクセスできます。
Android App Bundle を使用してさまざまな機能を管理する
Android App Bundle は、アプリのコンパイル済みコードとリソースがすべて含まれた公開形式です。APK の生成と署名は Google Play が行います。
さまざまなフォーム ファクタをサポートするには、多くの場合、フォーム ファクタごとに異なる ABI、アセット、ライブラリ、コードパスが必要です。プロジェクトに機能モジュールを追加できる Play Feature Delivery を利用できます。モジュールに含まれる機能とリソースは、指定した条件に基づいてアプリにのみ含まれるか、後で Play Core ライブラリを使用してダウンロードできるようになります。
また、大量のゲームアセットを柔軟な配信方法と高いパフォーマンスで配信できる Google Play のソリューションである Play Asset Delivery を使用することもできます。