Unityでアプリ開発をしています。
アセットをサーバからダウンロードさせるため、
Addressable Assets Systemを使用しています。
PlayModeはUse Existing build
LoadPathはRemoteLoadPath
で実際にPacked Assets
のデータをサーバ上に配置しています。
Addressables.GetDownloadSizeAsync
を使用して
サーバからダウンロードすべきアセットのサイズを取得し
サイズが0より大きい場合はアセットをダウンロードする処理をしています。
しかし、オフライン状態での挙動を確認するため、ネットワーク通信を切った状態で実行した場合でも
Addressables.GetDownloadSizeAsync
で通信成功し、アセットサイズを取得出来てしまっています。
(PC、Android実機でも同様でした)
以下のコードで実装していますが、原因はどこでしょうか。
オフラインならAsyncOperationStatus.Failed
が返ってくると思ったのですが…。
var handle = Addressables.GetDownloadSizeAsync("Label"); yield return StartCoroutine(WaitDownload(handle)); // オフラインの場合でも,Succeededで必要サイズがちゃんと返ってくる if (handle.Status == AsyncOperationStatus.Succeeded) { var dataSize = handle.Result; if (dataSize > 0) { // オフラインの場合、DownloadDependenciesAsyncはFailedになる var download = Addressables.DownloadDependenciesAsync("CharaKnight"); } } else if (handle.Status == AsyncOperationStatus.Failed) { } else { }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/04 08:19