官方文档 https://docs.unity3d.com/Manual/AttachingMonoDevelopDebuggerToAnAndroidDevice.html
然而 按照官方文档 很多人会出现 monodevelop Attach to Process 对话框中 没有出现设备的问题
我经过一番测试发现解决方法。
流程一 : 先启 adb 再启 unity
每天开始工作之前不要先打开unity, 而是先设置adb 再打开unity 和 monodevelop。 后面再讲如果先打开了 unity 怎么办
确保电脑和手机在一个子网下,比如我的电脑是ip 192.168.5.44 ,手机是192.168.5.174 。 unity调试是利用 无线网络和手机连接的, 并不是usb线。
用usb 连接好 手机 和电脑。。 其实如果先设置 adb ,也可以完全不连线
开始设置adb ,打开cmd ,输入
adb tcpip 5555
这是固定的 5555不是根据情况动态变化的
cmd输出
* daemon not running. starting it now on port 5037 * * daemon started successfully * restarting in TCP mode port: 5555
再次输入 adb connect 手机ip
adb connect 192.168.5.174
cmd 输出
connected to 192.168.5.174:5555
输入 adb devices 确认设备连接, 下图中的两个设备其实是同一个手机,一个是以网络连接的名称一个是以usb连接的名称
之后打开unity , 在 Project 窗口,Assets 目录上右键 -> Sync MonoDevelop Project 。这将打开 MonoDevelop。 编码工作开始, 要调试时设置断点
开始调试, 在 unity菜单中 File -> Buld Settings -> 选择 Android ,勾选 Development Build 和 Script Debugging , 这里初次设置一次即可,后续调试直接build run。
下一步, File -> Build & Run (Ctrl + B) , 经过漫长的等待,app 在手机上跑起来的, 界面的右下角有个 "Development Build"。 现在切换到MonoDevelop,在debug 模式下, 点击 运行按钮。将打开 Attach to Process 对话框, 选择设备即可开始调试
流程二:先启unity, 后启adb
这种方式最后保证全程usb线连接
在 unity 和 MonoDevelop 中编程完毕准备调试, 先不要急着Build & Run, 设置好Build Setting, 参考流程一。 这时候先去启动adb , 参考流程一, 然后关闭unity 和monodevelop 然后重启他们。
之后再Build & Run。 后面的过程就跟流程一同样了