Legacy Documentation: Version 4.5.0

Script language:

  • JS
  • C#
  • Boo
Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

Caching.IsVersionCached

static function IsVersionCached(url: string, version: int): bool;
static bool IsVersionCached(string url, int version);
static def IsVersionCached(url as string, version as int) as bool

Parameters

stringUrl The filename of the AssetBundle. Domain and path information are stripped from this string automatically.
intVersion The version number of the AssetBundle to check for. Negative values are not allowed.

Returns

bool True if an AssetBundle matching the url and version parameters has previously been loaded using WWW.LoadFromCacheOrDownload() 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.

Description

Checks if an AssetBundle is cached.

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.

if (Caching.IsVersionCached("http://myserver.com/bla.unity3d", 3))
    GUILayout.Button("Load Level");