Описание
Represents a request for On Demand Resources (ODR). It's an AsyncOperation and can be yielded in a coroutine.
ПРИМЕЧАНИЕ. доступно только на iOS.
Создание OnDemandResourcesRequest эквивалентно вызову NSBundleResourceRequest.beginAccessingResourcesWithCompletionHandler . Запрос будет поддерживать ресурс по требованию до тех пор, пока не будет вызван Dispose() или объект запроса не будет собран сборщиком мусора, что эквивалентно вызову NSBundleResourceRequest.endAccessingResources .
using UnityEngine;
using UnityEngine.iOS;
using System;
using System.Collections;
public static class Loader
{
public static IEnumerator LoadAsset(string resourceName)
{
// Создаем запрос
var request = OnDemandResources.PreloadAsync(new string[] { "Asset's ODR tag" });
// Ждем, пока запрос не будет выполнен
yield return request;
// Check for errors
if (request.error != null)
throw new Exception("ODR request failed: " + request.error);
// Получаем путь к ресурсу и используем его
var path = request.GetResourcePath(resourceName);
Debug.Log(path);
// Вызываем Dispose(), когда ресурс больше не нужен.
request.Dispose();
}
}
Свойства
Публичные Методы
Dispose |
Освободите все ресурсы, поддерживаемые запросом ресурсов по требованию (ODR). |
GetResourcePath |
Получает путь файловой системы к ресурсу, доступному в запросе ресурсов по запросу (ODR). |
Унаследованные члены
Свойства
allowSceneActivation |
Разрешить активировать сцены, как только они будут готовы. |
isDone |
Операция закончилась? (Только чтение) |
priority |
Priority позволяет настроить порядок выполнения вызовов асинхронных операций. |
progress |
Как продвигается операция. (Только чтение) |
Events
completed |
Событие, которое вызывается после завершения операции. Обработчик событий, зарегистрированный в том же кадре, что и вызывающий его вызов, будет вызван в следующем кадре, даже если операция может завершиться синхронно. Если обработчик зарегистрирован после завершения операции и уже вызвал событие завершения, обработчик будет вызываться синхронно. |