志远 【日志】 Debug改造-格式重写

16
回复
1277
查看
打印 上一主题 下一主题
[ 复制链接 ]
排名
9397
昨日变化

7

主题

190

帖子

891

积分

Rank: 9Rank: 9Rank: 9

UID
21402
好友
5
蛮牛币
106
威望
0
注册时间
2014-4-14
在线时间
413 小时
最后登录
2019-4-18

认证开发者

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册帐号

x
#0x001 需求
很多框架都包含了自己的日志功能,如果我们自己去写框架难免会用到这个功能,如写出Log文件,进行跨平台调试。


#0x002 分析
根据上述需求,做出如下分析
经过测试,使用扩展方法去扩展Debug类无效,原因是Debug类是只读属性的。
那么我们只有去重写或者利用命名空间让编译器选择我们的Debug类,从而实现替换unityDebug的效果。


#0x003 实现步骤
#####1.创建Debug类
不需要继承任何类,设置为静态类
[C#] 纯文本查看 复制代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public static class Debug  {

}


#####2.查看UnityEngine.Debug类
查看类中方法及方法的参数,并在我们的Debug类中进行实现。


我们在自己的类中实现,主要实现这几个就可以了,这里我就只实现单参数的=-=
[C#] 纯文本查看 复制代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public static class Debug  {
    public static void Log(object message)
    {
        UnityEngine.Debug.Log(message);
    }
    public static void LogWarning(object message)
    {
        UnityEngine.Debug.LogWarning(message);
    }
    public static void LogError(object message)
    {
        UnityEngine.Debug.LogError(message);
    }
}


我们当然可以去做一些前缀之类的= =
[C#] 纯文本查看 复制代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public static class Debug  {
    public static void Log(object message)
    {
        
        UnityEngine.Debug.Log("zhiyuan1:"+message);
    }
    public static void LogWarning(object message)
    {
        UnityEngine.Debug.LogWarning("zhiyuan2:" + message);
    }
    public static void LogError(object message)
    {
        UnityEngine.Debug.LogError("zhiyuan3:" + message);
    }
}


#0x004 实现效果
随便新建一个脚本
[C#] 纯文本查看 复制代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class test : MonoBehaviour {

	// Use this for initialization
	void Start () {
        Debug.Log("Log");
        Debug.LogWarning("LogWarning");
        Debug.LogError("LogError");
    }
}




5熟悉之中
962/1000
排名
3927
昨日变化

0

主题

296

帖子

962

积分

Rank: 5Rank: 5

UID
251353
好友
0
蛮牛币
7131
威望
0
注册时间
2017-10-29
在线时间
286 小时
最后登录
2019-4-18
沙发
2019-3-1 13:14:52 只看该作者
顶顶顶
2初来乍到
113/150
排名
16217
昨日变化

0

主题

25

帖子

113

积分

Rank: 2Rank: 2

UID
207231
好友
1
蛮牛币
7471
威望
0
注册时间
2017-2-18
在线时间
44 小时
最后登录
2019-4-10
板凳
2019-3-1 14:09:02 只看该作者
顶顶顶,顶顶顶
排名
48129
昨日变化

0

主题

4

帖子

9

积分

Rank: 1

UID
315087
好友
0
蛮牛币
13
威望
0
注册时间
2019-2-28
在线时间
1 小时
最后登录
2019-3-4
地板
2019-3-1 15:30:18 只看该作者
顶顶顶dingding
7日久生情
2124/5000
排名
2613
昨日变化

2

主题

1076

帖子

2124

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
209046
好友
0
蛮牛币
2906
威望
0
注册时间
2017-3-30
在线时间
492 小时
最后登录
2019-4-18
5#
2019-3-1 16:01:08 只看该作者
6蛮牛粉丝
1052/1500
排名
5543
昨日变化

0

主题

659

帖子

1052

积分

Rank: 6Rank: 6Rank: 6

UID
300432
好友
1
蛮牛币
1452
威望
0
注册时间
2018-10-18
在线时间
133 小时
最后登录
2019-3-27
6#
2019-3-2 09:29:04 只看该作者
顶顶顶顶顶顶顶顶顶顶...
7日久生情
2689/5000
排名
2230
昨日变化

1

主题

1716

帖子

2689

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
119154
好友
0
蛮牛币
2771
威望
0
注册时间
2015-8-21
在线时间
342 小时
最后登录
2019-4-18
7#
2019-3-2 22:15:52 只看该作者
谢谢楼主大大。
3偶尔光临
190/300
排名
15023
昨日变化
1

3

主题

66

帖子

190

积分

Rank: 3Rank: 3Rank: 3

UID
256890
好友
0
蛮牛币
743
威望
0
注册时间
2017-11-29
在线时间
69 小时
最后登录
2019-4-2
8#
2019-3-4 10:37:55 只看该作者

顶顶顶顶顶顶顶顶顶顶...
5熟悉之中
671/1000
排名
4910
昨日变化

0

主题

107

帖子

671

积分

Rank: 5Rank: 5

UID
259566
好友
0
蛮牛币
875
威望
0
注册时间
2017-12-14
在线时间
268 小时
最后登录
2019-4-18
9#
2019-3-4 13:44:49 只看该作者
顶顶顶
7日久生情
1623/5000
排名
4093
昨日变化

0

主题

977

帖子

1623

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
254705
好友
1
蛮牛币
1556
威望
0
注册时间
2017-11-16
在线时间
284 小时
最后登录
2019-4-18
10#
2019-3-5 08:20:25 只看该作者
66666666666666666666666666666
7日久生情
4885/5000
排名
1669
昨日变化

0

主题

3464

帖子

4885

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
185339
好友
1
蛮牛币
3542
威望
0
注册时间
2016-11-20
在线时间
643 小时
最后登录
2019-4-18
11#
2019-3-5 09:09:13 只看该作者
{:93:}
5熟悉之中
742/1000
排名
4111
昨日变化

1

主题

233

帖子

742

积分

Rank: 5Rank: 5

UID
245227
好友
0
蛮牛币
956
威望
0
注册时间
2017-9-21
在线时间
148 小时
最后登录
2019-4-18
12#
2019-3-5 09:16:42 只看该作者
然后console里面双击LOG, 跳转到你写的Debug类去了, 系统自带的双击会跳到最后的执行代码那里
排名
9397
昨日变化

7

主题

190

帖子

891

积分

Rank: 9Rank: 9Rank: 9

UID
21402
好友
5
蛮牛币
106
威望
0
注册时间
2014-4-14
在线时间
413 小时
最后登录
2019-4-18

认证开发者

13#
楼主 2019-3-5 10:26:32 只看该作者
tiancaiwlk 发表于 2019-3-5 09:16
然后console里面双击LOG, 跳转到你写的Debug类去了, 系统自带的双击会跳到最后的执行代码那里{:106: ...

是的调试这里会麻烦很多 不过可以写出堆栈
2初来乍到
119/150
排名
18289
昨日变化

1

主题

12

帖子

119

积分

Rank: 2Rank: 2

UID
295537
好友
0
蛮牛币
146
威望
0
注册时间
2018-9-3
在线时间
72 小时
最后登录
2019-4-18
14#
2019-3-6 13:48:17 只看该作者
看标题进来,忽然想到是不是可以做出可以添加自定义标签的log
7日久生情
2603/5000
排名
474
昨日变化

6

主题

181

帖子

2603

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
84820
好友
17
蛮牛币
2702
威望
0
注册时间
2015-3-26
在线时间
864 小时
最后登录
2019-4-18
15#
2019-3-6 18:34:35 只看该作者
请问这样写有什么区别吗?
您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则