Unity の Addressables 使用し Google Play Asset Delivery に対応する
※ これは 2022/08/26 時点の Unity 2022.1.14f1 Addressables v1.20.5 Windows 11 の情報です
最新版では動作が異なる可能性がありますのでご注意ください
前回引き続きAddressables を使いつつ、今回は Android アプリでインストール時のダウンロードサイズを増やせるようになる Google Play Asset Delivery 対応をしてみたい
Google Play ストアには通常 150 MB までの .aab のアプリバンドルファイルしかアップロードできない
これが Google Play Asset Delivery に対応させると、.aab のアプリバンドルファイルに埋め込んですぐ使用できるようにしたとしても、アセットを 1GB まで増やすことができるらしい
まず Unity 公式 Addressables サンプルの GitHub リポジトリ を Clone する
Clone したリポジトリの中の Addressables-Sample/Advanced/Play Asset Delivery/Assets/PlayAssetDelivery を Unity プロジェクトの Assets 配下にコピーする

次に Assets/AddressableAssetsData/AddressableAssetSettings.asset を開き、Build and PlayMode Scripts のリストに Assets/PlayAssetDelivery/Data/BuildScriptPlayAssetDelivery.asset を追加する

次に Addressables Groups のウィンドウを開き、Google Play Asset Delivery の 1GB 分に含めたい Addressables Group を選択、Add Schema ボタンを押下し、Play Asset Delivery を選択して追加する

この際に Content Packing & Loading の Asset Bundle Provider を Play Asset Delivery Provider に変更し、追加した Play Asset Delivery の Schema の Asset Pack が InstallTimeContent (アプリインストール直後に読み込める設定)になっていることを確認する

この Asset Pack は他に FastFollow と OnDemand があるが、iOS との両対応を考えるとほぼこの二つは使えないので InstallTime だけ使うようにする
あとは .aab をビルドするための諸々設定
Player Settings の Other Settings にある IL2CPP を有効化することで ARM64 ビルドをできるようにする

Player Settings の Publishing Settings にある Split Application Binary を有効化しアセットパックの分割ビルドできるようにする

最後に Build Settings ダイアログを開き、Build App Bundle を有効化してビルドする

これで 1 GB までのアセットを埋め込んだ .aab ファイルがビルドされ、そのまま Google Play ストアの Developer Console でアップロードできるようになった
ちなみにアセットの容量が 1GB を超えてしまうと Google Play Asset Delivery に対応しない内部構造になりアセットが読み込めなくなるので注意が必要