再也不用为真机调试发愁!!

项目开发时候有些调试需要在真机才能看到运行结果,例如:第三方支付、登陆、分享等功能。需要在真机上查看日志,每次插线调试很不方便,unity的AssetsStore终有一款免费的调试工具:LogViewer,此文章推荐大家接入LogViewer方便调试。

1. 导入工具

AssestStore 搜索 LogViewer,导入Unity。

2. 创建LogViewer GameObject

导出LogViewer后会在选择Reporter/create创建LogViewer的GameObject,会自动生成在场景中,名为Reporter。
注意:项目有多个场景,需要在入口场景创建,会跟在DontDestroyOnLoad中跟随整个项目的进行。
此时就可以愉快的使用了:屏幕使用手势画圈,调出界面。

3. 扩展

3.1 手势设置

在Reporter上的Reporter组件中名为NumOfCircleToShow属性,作用为:手势画圈个数调起界面。

3.2 启用/禁用

/Assets/Unity-Logs-Viewer/Reporter/Reporter.cs文件中,大概在1780行左右,有如下代码:

void Update(){fpsText = fps.ToString("0.000");gcTotalMemory = (((float)System.GC.GetTotalMemory(false)) / 1024 / 1024);//addSample();#if UNITY_CHANGE3int sceneIndex = SceneManager.GetActiveScene().buildIndex ;if( sceneIndex != -1 && string.IsNullOrEmpty( scenes[sceneIndex] ))scenes[ SceneManager.GetActiveScene().buildIndex ] = SceneManager.GetActiveScene().name ;
#elseint sceneIndex = Application.loadedLevel;if (sceneIndex != -1 && string.IsNullOrEmpty(scenes[Application.loadedLevel]))scenes[Application.loadedLevel] = Application.loadedLevelName;
#endifcalculateStartIndex();// 这里 增加自定义判断条件if (!show && isGestureDone()) {doShow();}if (threadedLogs.Count > 0) {lock (threadedLogs) {for (int i = 0; i < threadedLogs.Count; i++) {Log l = threadedLogs[i];AddLog(l.condition, l.stacktrace, (LogType)l.logType);}threadedLogs.Clear();}}

在你 doShow()函数调用时,可以修改代码自定义增加判断条件,可根据release版本还是beta版本等。

3.3 设备信息存储文件

LogViewer会在每次初始化时候存储一个本地设备信息文件:build_info.txt,不同设备会做修改,协同开发会出现此文件冲突,需要在SVN或者Git中将此文件过滤,或者修改代码解决此文件。
在/Assets/Unity-Logs-Viewer/Reporter/Editor/ReporterEditor.cs文件有如下代码:

public class ReporterModificationProcessor : UnityEditor.AssetModificationProcessor
{[InitializeOnLoad]public class BuildInfo{static BuildInfo(){EditorApplication.update += Update;}static bool isCompiling = true;static void Update(){if (!EditorApplication.isCompiling && isCompiling) {//Debug.Log("Finish Compile");if (!Directory.Exists(Application.dataPath + "/StreamingAssets")) {Directory.CreateDirectory(Application.dataPath + "/StreamingAssets");}string info_path = Application.dataPath + "/StreamingAssets/build_info.txt";StreamWriter build_info = new StreamWriter(info_path);build_info.Write("Build from " + SystemInfo.deviceName + " at " + System.DateTime.Now.ToString());build_info.Close();}isCompiling = EditorApplication.isCompiling;}}
}

Updata函数中有写入并保存本地功能,可将此部分代码进行修改,避免协同开发遇到冲突。

另外有更多扩展功能可以按照需求自己修改代码,例如:上传错误,警告等信息,Unity-Logs-Viewer的Reporter.cs中有名为Log的类,可以获取Unity抛出的异常,自己探索吧。

方便的Unity真机调试工具:LogViewer相关推荐

  1. (转载)Unity真机调试

    Unity Android模拟器调试 Unity项目遇到了只会在Android上出现的问题,code review再三没有找到问题,只能想到动态调试了.Unity Android的真机调试只能使用Wi ...

  2. WebApp网页真机调试工具-(Android)

    待我年逾花甲,重新回到乡下. 池里养些鱼虾,坡上满是山茶. 不见雾霾黄沙,只有朝阳晚霞. 牛羊伴着鸡鸭,瓜田李下小麻. 孙儿承欢膝下,老伴陪与床榻. 纵是满口假牙,却也笑靥如花. 现在的移动端开发主要 ...

  3. 移动端真机调试工具--weinre

    目录 1. weinre (1)weinre安装 (2)weinre使用 虽然当前各种浏览器都为开发者提供了很多模拟手机设备的功能,但是模拟毕竟是模拟,模拟环境中正常的代码到了真机上访问,仍旧会有各种 ...

  4. Unity真机非全屏播放视频

    转载注明出处:点击打开链接 刚开始工作就遇到了一个麻烦的问题,在Android及ios设备上实现视频的非全屏播放. 在Unity的原生技术中,可以使用MovieTexture实现PC上的该功能,但是在 ...

  5. unity调试手机游戏(Android)【模拟器+真机】+设置运行时游戏横屏

    untiy调试手机游戏(Android)[模拟器+真机]+设置游戏横屏 模拟器调试 真机调试 设置发布游戏为横屏 注:我使用的unity版本为2021.3.2f1c1 1.将平台调整为Android ...

  6. Unity Android真机测试

    Unity Android真机测试 两种方法,首先在你需要debug的代码位置用Debug.log("你想要的信息") 一.wifi 1.手机连数据线,要求电脑,手机同一网段,手机 ...

  7. Unity 打包程序后PC或Android真机调试Debug日志及调出的Profiler面板

    几个注意点: 1.Unity BuildSettings中勾选Copy PDB files.Development Build.Autoconnect profiler(自动连接性能分析).Scrip ...

  8. android studio 远程调试,Unity3D学习笔记——Android远程真机调试(Unity Remote)

    前言:当使用Unity开发移动端的游戏,特别是使用到手机的传感器,如重力感应等,调试的时候,很麻烦, 因为每次都需要编译成APK后安装到手机中测试,而Unity Remote便能很好的解决这个问题,U ...

  9. Unity安卓应用闪退-使用DDMS工具查看安卓日志/ADB真机调试

    前言 最近遇到一个应用闪退问题,在某些机型和mumu模拟器上会出现,而其他机型和模拟器都是正常的,从Unity代码层面并没有发现问题,只能利用安卓调试看看了 工具 首先需要的工具: DDMS:查看安卓 ...

  10. Unity 使用USB、WiFi连接真机调试 Profiler

    亲测可用. USB连接: 发布一个development apk,在buildsetting发布界面,勾选Development build. 手机usb连接打开调试模式,在电脑上使用adb查看是否连 ...

最新文章

  1. JPA 复杂查询 - Querydsl
  2. 电子班牌系统服务器,电子班牌管理系统
  3. nodejs ejs模版 layout使用 注意点
  4. makefile中的函数
  5. udhcp源码详解(四) 之租赁IP的管理
  6. (Java)注解和反射
  7. 博士申请 | 香港理工大学滕龙老师课题组招收机器人方向博士生/研究助理
  8. 开闭原则------(转)
  9. 线程同步以及yield()、wait()、Notify()、Notifyall()
  10. 微信多开txt_电脑版微信怎么双开、多开
  11. micro_macro
  12. 论文html5的英文文献,html论文英文参考文献(优质论文108个).pdf
  13. Python数据分析与展示[第二周]
  14. 保姆级别mysql 基础练习题
  15. PASCAL VOC 2012数据集
  16. 使用python的requests模块实现百思不得其姐抓取(多线程版)
  17. php m3u8cms,苹果cms V8和V10整合Dplayer播放器插件支持mp4和m3u8格式播放
  18. 截屏、文字提取一气呵成,超实用 OCR 开源小工具
  19. Filecoin矿商史上最全测评,看完这篇谁也坑不了我
  20. ZigBee 设置信道、PANID、发射功率

热门文章

  1. 我的世界(16)-解决Minecraft Forge官网无法下载文件的问题
  2. 公司财务记账软件免费版下载地址
  3. 读书笔记之财报就像一本故事书
  4. linux下用C/C++和socket实现的驾校约车助手
  5. Pyside2 背景图片填充
  6. 学习党Win10装机必备软件
  7. excel中自定义数据格式后,如何将其实际显示为自定义后的数据,不受原格式数据的限制
  8. kickstart无人值守安装Ubuntu1804系统
  9. 2021年PMP考试模拟题4(含答案解析)
  10. 管道单线图CAD工具