検証環境
概要
- Addressable を使用しているプロジェクトで Android ビルドして
StreamingAssets からアセットバンドルを読み込んだ時に
そのアセットバンドルがキャッシュに保存されない現象に遭遇した
- Addressable の AssetBundleProvider を使用してアセットバンドルを読み込む場合
Android において StreamingAssets からアセットバンドルを読み込むのは
UnityWebRequestAssetBundle.GetAssetBundle ではなく
AssetBundle.LoadFromFileAsync が使用されるのでキャッシュには保存されない
AssetbundleProvider.cs
223 行目以降
if (File.Exists(path) || (Application.platform == RuntimePlatform.Android && path.StartsWith("jar:")))
{
m_RequestOperation = AssetBundle.LoadFromFileAsync(path, m_Options == null ? 0 : m_Options.Crc);
m_RequestOperation.completed += LocalRequestOperationCompleted;
}