Unity Andriod、IOS平台调试方法

发表于2018-10-22
评论0 2.9k浏览
Unity在本地editor调试很方便,但是在android和ios上调试就非常的麻烦了,其中android的adb,xcode的控制台虽然能够调试但是效率还是不高啊,打个包机器慢的话得半个小时,再调试那就太让人无语了。

当然还可以本地保存日志,然后查看本地日志,但这样去找日志文件同样也会浪费很多时间,为了方便就用gui写了一个控制台,轻松解决Andriod、IOS平台上的调试问题,发布时通过开关或者宏定义关掉,节省资源。

代码如下:
 private string msg;  //显示到控制台上的信息
 private Rect windRect = new Rect(0, 0, 410, 330);
 private bool showWindos = false;
 public void SendLog(string s)
 {
    msg+=s;  //需要注意的是 这里msg 可以换成stringbuilder ,到了一定长度就清掉
 }
 pub void ClearLog()
 {
   msg=string.Empty
 }
 void OnGUI()
 {
    BindQuickKey(KeyCode.Q,false);// 绑定快捷键
      BindQuickKey(KeyCode.S, true);
     if (showWindos)
        {
            GUI.DrawTexture(new Rect(windRect.x + 2, windRect.y + 2, windRect.width - 4, windRect.height - 4), Resources.Load<Texture>("consolebackground")); //换上自定义背景
            windRect = GUI.Window(0, windRect, ConsoleWindow, new GUIContent("Console"));
        }
 }
   private void BindQuickKey(KeyCode keyCode, bool show)
    {
        if (Event.current.keyCode==keyCode)
        {
            if(Event.current.alt)
            {
                showWindos = show;
            }
        }
    }
    //自定义窗口哦,自己随便干
     private void ConsoleWindow(int id)
    {
        CreateTextArea();
        CreateToggleGroup();
        CreateDoButton();
        CreateCloseButton();
        CreateConsole();
        GUI.DragWindow(new Rect(0, 0, 10000, 10000));
    }
本文只是提供了想法,方便Andriod、IOS平台上的调试,具体的实现因人而异,更加自己的项目来丰富完善就行,不必生搬硬套。
来自:https://blog.csdn.net/a958832776/article/details/70792607

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引