以下の内容はhttps://baba-s.hatenablog.com/entry/2020/03/19/033000より取得しました。


【Unity】Addressable Asset System でダウンロード対象のアセットバンドルの容量を取得する方法

概要

var handle = Addressables.GetDownloadSizeAsync( address );
handle.Completed += _ => Debug.Log( handle.Result );
  • Addressables.GetDownloadSizeAsync を使用することで
    ダウンロード対象のアセットバンドルの容量を取得できる
  • ダウンロード対象のアセットバンドルが既にキャッシュに存在する場合は 0 が返ってくる
  • Load Path が LocalLoadPath の場合は容量が常に 0 になる
    • 正確には Load Path の文字列が http で始まらない場合は常に 0 になる
      • AssetBundleProvider.cs 93 行目の
        ResourceManagerConfig.IsPathRemote のチェックで弾かれる
var addresses = new[]
{
    "AAAAA",
    "BBBBB",
    "CCCCC",
};
var handle = Addressables.GetDownloadSizeAsync( addresses );
handle.Completed += _ => Debug.Log( handle.Result );
  • 配列やリストで複数のアドレスを指定することもできる
  • キャッシュに存在しないアセットバンドルの容量の合計を取得できる
  • サーバに接続せずに容量を取得できる
    • サーバからアセットバンドルを削除しても正常に容量を取得できる



以上の内容はhttps://baba-s.hatenablog.com/entry/2020/03/19/033000より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14