AppSeedのアプリ開発ブログ

アプリ開発会社AppSeed(アップシード)開発担当のブログです。iOS、Android、Unity、Cocos2d-xなどアプリ開発関連のTipsや備忘録、アプリ開発に役立つ情報を発信します。

【Unity】Android App Bundle (abbファイル)を作成する方法に関するメモ

最近開発したアプリがapkでビルドした時に100MB以上になってしまったので、apk+obbファイルの形式でアプリをリリースする事になりました。

apk+obbファイルを生成する方法は以前紹介した通り簡単に作成できますが、どうもAndroid10やAndroid11端末でobbがうまく読まれないという現象が多数発生したので、abbファイルを作成する事にしました。

develop.hateblo.jp

今回は、apk+obbファイル方式の厄介な点の紹介と、abbファイルの作成方法やメリット・デメリット等をまとめておければと思います。

 

apk+obbファイル方式は問題が起きやすい

apk+obbファイルの方式でアプリをリリースしてみて、Android10やAndroid11端末で読み込み時にエラーが発生する傾向が見られました。以前Android11対応時に遭遇した現象と同じようなものです。

develop.hateblo.jp

ざっくりとまとめると、内容としては以下のような感じです。

  • アプリ起動後画面が真っ黒のまま先へ進めない(Android11端末)
  • 1つ目のシーンだけしかプレイできない(obbが正しく読み込めない?)
  • Android9.0以下の端末では問題なくプレイ可能
  • Unityで「Build and Run」だとおかしくなるが、GooglePlay経由でインストールすると問題なくプレイ可能(おかしくなる場合もあり)
  • obbファイルを利用しているアプリでも、毎回普通にプレイできるものと、動作が不安定なものがある

上記の問題への対処としては以下のことを行いました。

  • Unity obb Down Loaderを導入
  • READ_EXTERNAL_STORAGEをマニフェスト に追加してみた(obbファイル生成時はUnityが自動で追加してくれるらしいけど一応)
  • Android Studioでログをチェック(エラー原因っぽいものは見当たらなかった)

丸一日くらい試行錯誤してみましたが、どうも動作が不安定なことや、ネットを調べると、大手企業の出しているアプリでもobbファイル関連の問題が結構出てくるので、obbファイルを使わない方向で行くことにしました。

 

2021年8月からapk+obbファイル方式はGoogle Playで配信できなくなる

developers-jp.googleblog.com

Android App Bundle (abbファイル)を作成する方法に関するメモ

Googleのリリースによると、2021年8月からobbファイルはサポート対象外になるそうです。apkを使わず、Android App Bundle(abb)形式で公開することが必須になるそうです。

まあ、obbは動作が不安定で問題も結構あったということもあり、obbがサポートされなくなったのはよかったです。

また、apkの場合は100MBの制限でしたが、Android App Bundle(abb)形式の場合、150MBまで引き上げられるので、apkでギリギリ100MB超えちゃうって人はAndroid App Bundle(abb)形式にすれば問題解決できそうですね。

 

 

Android App Bundle (abbファイル)を作成する方法

Android App Bundle(abb)形式でビルドする方法ですが、やってみたらめっちゃ簡単でした。UnityのPlayerSettingでBuild App Bundle(GooglePlay)にチェックを入れてビルドするだけです。

Android App Bundle (abbファイル)を作成する方法に関するメモ

apkでビルドするよりもビルドに時間がかかるのがデメリットみたいですが、アプリのサイズ自体はapkよりも抑えることができるらしいので、開発段階ではapkで開発メンバーに共有して、リリース段階でabbにするというのがよさそうですね。

 

Android App Bundle は150MBまでしかGooglePlayにアップロードできない

abbのサイズが150MB以上のアプリをGoogle Playにアップロードしたところ、以下のエラーが出てアップロードに失敗しました。

Android App Bundle (abbファイル)を作成する方法に関するメモ

abbは150MBの制限なのでapkよりはまだマシですが、微妙に超えちゃうアプリが結構あるので、対策する必要があります。

 

 

Android App Bundle が150MB以上になる場合の対処法

abbが150MB以上になってしまうアプリに関しては、調べた感じだと、Play Asset Deliveryを使うのが良さそうです。

以前は自前でサーバーを用意してAssets Bundleをアップロードしていたようですが、Play Asset Deliveryは無料で Assets Bundleをアップロードできるらしいです。

developer.android.com

とりあえず、現状aabファイルにしてみて150MBになってしまうアプリでPlay Asset Deliveryが使えるか試してみたいと思います。

 

 お知らせ

謎解き推理ゲーム「イラスト探偵」を最近リリースしました!

もしよろしければダウンロードお願い致します!

 

app-seed.com

イラスト探偵-謎解き推理ゲーム-

イラスト探偵-謎解き推理ゲーム-

  • AppSeed, Incorporated.
  • ゲーム
  • 無料

apps.apple.com

play.google.com

www.amazon.com