Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


IsVersionCached

Checks if an AssetBundle is cached.
Read time 3 minutesLast updated 4 days ago

Definition

  • Type: Method
  • Namespace: UnityEngine
  • Assembly: UnityEngine.CoreModule

IsVersionCached(string, int)

Checks if an AssetBundle is cached.
Warning
Deprecated. Please use IsVersionCached with Hash128 instead.
public static bool IsVersionCached(string url, int version)

Parameters

The filename of the AssetBundle. Domain and path information are stripped from this string automatically.

version

The version number of the AssetBundle to check for. Corresponds to the numeric version in some signatures of UnityWebRequestAssetBundle.GetAssetBundle.

Returns

Type

Description

boolTrue if an AssetBundle matching the
url
and
version
parameters has previously been loaded using UnityWebRequestAssetBundle.GetAssetBundle() and is currently stored in the cache. Returns false if the AssetBundle is not in cache, either because it has been flushed from the cache or was never loaded using the Caching API.

Remarks

When using the default shared cache, the URL of the WebPlayer application bundle is automatically prepended to the
url
parameter; this prevents filename collisions with identically-named AssetBundles used by other developers' WebPlayer applications. WebPlayer applications that use a dedicated cache do not experience this behavior. This function can be utilized to enable AssetBundle preloading. First, call Caching.IsVersionCached() to see if the current version of an AssetBundle is already cached. If the AssetBundle is not cached, it can be preloaded in the background so that it is immediately available for loading into memory when requested.

IsVersionCached(string, Hash128)

Checks if an AssetBundle is cached.
public static bool IsVersionCached(string url, Hash128 hash)

Parameters

The filename of the AssetBundle. Domain and path information are stripped from this string automatically.

hash

Hash128
The version hash of the AssetBundle to check for. Corresponds to the version hash in some signatures of UnityWebRequestAssetBundle.GetAssetBundle.

Returns

Type

Description

boolTrue if an AssetBundle matching the
url
and
version
parameters has previously been loaded using UnityWebRequestAssetBundle.GetAssetBundle() and is currently stored in the cache. Returns false if the AssetBundle is not in cache, either because it has been flushed from the cache or was never loaded using the Caching API.

Remarks

When using the default shared cache, the URL of the WebPlayer application bundle is automatically prepended to the
url
parameter; this prevents filename collisions with identically-named AssetBundles used by other developers' WebPlayer applications. WebPlayer applications that use a dedicated cache do not experience this behavior. This function can be utilized to enable AssetBundle preloading. First, call Caching.IsVersionCached() to see if the current version of an AssetBundle is already cached. If the AssetBundle is not cached, it can be preloaded in the background so that it is immediately available for loading into memory when requested.

IsVersionCached(CachedAssetBundle)

Checks if an AssetBundle is cached.
public static bool IsVersionCached(CachedAssetBundle cachedBundle)

Parameters

cachedBundle

A CachedAssetBundle struct that pairs the AssetBundle name with the version hash to check for.

Returns

Type

Description

boolTrue if the specified AssetBundle version is currently stored in the cache. Otherwise, false.