监听Unity的打印事件,如常规打印,报错等等。
如下代码为自制的打印日志:
List<string> mWriteTxt = new List<string>();
void OnEnable()
{
Application.logMessageReceived += HandleLog;
}
void OnDisable()
{
Application.logMessageReceived -= HandleLog;
}
void HandleLog(string logString, string stackTrace, LogType type)
{
mWriteTxt.Add(logString);
}
private void Start()
{
if (File.Exists(Application.dataPath + "/Log/12.txt"))
{
File.Delete(Application.dataPath + "/Log/12.txt");
}
for (int i = 0; i < 3; i++)
{
Debug.Log("aaa");
}
Debug.LogError("cuowu "); -->正常打印事件
int[] str = new int[2] {1,2 };
for (int i = 0; i < 3; i++)
{
Debug.Log(str[i]); -->写一个数组溢出来引发报错
}
}
void Update()
{
if (mWriteTxt.Count > 0)
{
string[] temp = mWriteTxt.ToArray();
foreach (string t in temp)
{
using (StreamWriter writer = new StreamWriter(Application.dataPath+"/Log/12.txt", true, Encoding.UTF8))
{
writer.WriteLine(t);
}
mWriteTxt.Remove(t);
}
}
}
写入本地的txt文件如下:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)