显示日志报错找不到路径_Unity 自定义日志保存

本文介绍了Unity5.x之后日志文件位置的变化,并分享了一段自定义日志保存的代码,以便在打包后能方便查看日志。在编辑器中,日志保存在项目路径下,打包后则位于exe同级目录。然而,发布版本无法捕获到异常的行号,而debug版本通过开启Development Build可以获取更多调试信息。
摘要由CSDN通过智能技术生成

f000d2aa246bfc25b076ad137d036c16.png

引言

之前unity5.x在代码中写了debug.log..等等,打包之后在当前程序文件夹下会有个对应的"outlog.txt",2017之后这个文件被移到C盘用户Appdata/LocalLow/公司名 文件夹下面。觉得不方便就自己写了个

代码如下:

using UnityEngine;
using System.IO;
using System;
using System.Diagnostics;
using Debug = UnityEngine.Debug;
 
 
public class DebugTrace
{
    private FileStream fileStream;
    private StreamWriter streamWriter;
 
    private bool isEditorCreate = false;//是否在编辑器中也产生日志文件
    private int showFrames = 1000;  //打印所有
 
    #region instance
    private static readonly object obj = new object();
    private static DebugTrace m_instance;
    public static DebugTrace Instance
    {
        get
        {
            if (m_instance == null)
            {
                lock (obj)
                {
                    if (m_instance == null)
                        m_instance = new DebugTrace();
                }
            }
            return m_instance;
        }
    }
    #endregion
 
    private DebugTrace()
    {
 
    }
 
 
 
    /// <summary>
    /// 开启跟踪日志信息
    /// </summary>
    public void StartTrace()
    {
        if (Debug.unityLogger.lo
Unity 中,弹窗提示可以使用 Unity 提供的 UI 系统来实现。具体实现方法如下: 1. 创建 UI 元素 在 Unity 中,打开场景或者新建一个场景,然后在 Hierarchy 窗口中右键选择 UI -> Panel,创建一个 Panel 元素。然后在 Panel 中添加一个 Text 元素,用于显示提示信息。最后在 Panel 上添加一个 Button 元素,用于关闭提示框。 2. 添加脚本 创建一个新的 C# 脚本,将其命名为 MessageBox。在脚本中定义一个 public 方法 Show,该方法用于显示提示框。在 Show 方法中,设置提示框的可见性,并将提示信息显示在 Text 元素中。添加一个 private 方法 Hide,该方法用于隐藏提示框。 代码如下: ```csharp using UnityEngine; using UnityEngine.UI; public class MessageBox : MonoBehaviour { public Text messageText; public GameObject panel; public void Show(string message) { messageText.text = message; panel.SetActive(true); } private void Hide() { panel.SetActive(false); } public void OnCloseButtonClicked() { Hide(); } } ``` 3. 将脚本添加到 Panel 上 将 MessageBox 脚本添加到 Panel 上,然后将 Text 和 Button 元素分别拖拽到 MessageBox 脚本中的 messageText 和 panel 变量中。 4. 使用弹窗提示 在其他脚本中,使用以下代码来显示提示框: ```csharp public MessageBox messageBox; public void ShowMessageBox(string message) { messageBox.Show(message); } ``` 在 Unity 中,将需要显示提示框的脚本拖拽到 messageBox 变量中。 这样,当调用 ShowMessageBox 方法时,就会弹出自定义的提示框。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值