| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- using System.Threading;
- using UnityEngine;
- namespace ET
- {
- // 1 mono模式 2 ILRuntime模式 3 mono热重载模式
- public enum CodeMode
- {
- Mono = 1,
- ILRuntime = 2,
- Reload = 3,
- }
-
- public class Init: MonoBehaviour
- {
- public CodeMode CodeMode = CodeMode.Mono;
-
- private void Awake()
- {
- #if ENABLE_IL2CPP
- this.CodeMode = CodeMode.ILRuntime;
- #endif
-
- System.AppDomain.CurrentDomain.UnhandledException += (sender, e) =>
- {
- Log.Error(e.ExceptionObject.ToString());
- };
-
- SynchronizationContext.SetSynchronizationContext(ThreadSynchronizationContext.Instance);
-
- DontDestroyOnLoad(gameObject);
- ETTask.ExceptionHandler += Log.Error;
- Log.ILog = new UnityLogger();
- Options.Instance = new Options();
- CodeLoader.Instance.CodeMode = this.CodeMode;
- }
- private void Start()
- {
- CodeLoader.Instance.Start();
- }
- private void Update()
- {
- CodeLoader.Instance.Update();
- }
- private void LateUpdate()
- {
- CodeLoader.Instance.LateUpdate();
- }
- private void OnApplicationQuit()
- {
- CodeLoader.Instance.OnApplicationQuit();
- CodeLoader.Instance.Dispose();
- }
- }
- }
|