运行时初始化方法
运行时初始化方法允许你在初始化时调用静态方法。
这类似于 UnityEngine.RuntimeInitializeOnLoadMethod,区别在于调用由 winS for Unity 发起而非 Unity 引擎。
提示
运行时初始化方法总是在模块初始化完成之后调用,所以您可以在方法中访问模块。
示例
通过将 winS.Unity.RuntimeInitializeMethod 特性应用在静态方法上即可使用运行时初始化方法。
若您的静态方法是一个异步方法,则 winS for Unity 会等待其执行完毕。
您可以通过向特性传递一个 int 参数来指定初始化优先级;值越小,其调用越靠前。默认的优先级为 0。
using System.Threading.Tasks;
using UnityEngine;
using winS.Unity;
public class Example_InitializeMethod
{
[RuntimeInitializeMethod]
private static void PrintResolution()
{
Debug.Log(Runtime.device.display.resolution);
}
[RuntimeInitializeMethod]
private static async Task DoAsync()
{
await Awaitable.WaitForSecondsAsync(2);
//Do Something....
}
[RuntimeInitializeMethod(1)]
private static async Task DoAsyncPost()
{
await Awaitable.WaitForSecondsAsync(4);
//Do Something....
}
}