private void RemoveLogCallback(LogCallbackWithStack callback) { if (!_hasRegisterLogCallback) { Application.logMessageReceivedThreaded += GetUnityLogCallback(callback); _hasRegisterLogCallback = true; } LogCallbackEvent -= callback; }
private Application.LogCallback GetUnityLogCallback(LogCallbackWithStack callback) { Application.LogCallback unityCallback = (c, s, type) => { LogLevel logLevel; if (type == LogType.Error) { logLevel = LogLevel.Error; } else if (type == LogType.Warning) { logLevel = LogLevel.Warning; } else { logLevel = LogLevel.Info; } OnLogCallback(c, s, logLevel); }; return(unityCallback); }