微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Android设备不会显示为Unity3d调试的目标

首先,我很肯定我已经正确地遵循了Attaching MonoDevelop Debugger To An Android Device指南中的所有步骤(最重要的是:在构建设置中启用了“开发构建”和“脚本调试”).

建设时然而,运行Unity Android应用程序时,我的设备(Samsung galaxy S5,Android 6.0.1)在MonoDevelop和Visual Studio中都不会显示为可能的调试目标.例如在Visual Studio中,单击Debug – >连接Unity Debugger,在打开的“选择Unity实例”窗口中,我只看到Unity3d编辑器(机器:本地机器,类型:编辑器).调试在Unity Editor中运行的Unity项目工作正常,只调试在物理android设备上运行的项目不起作用. MonoDevelop也是如此.

这样做时我看到设备已连接并处于联机状态

adb devices

我也可以通过命令行在该设备上调用adb shell命令(例如ls).当我打开Android Studio时,我也将设备视为Logcat的目标,甚至是刚才提到的Unity Android应用程序作为可调试的进程(当选择它时,所有正确的日志都是正在运行的应用程序).

我认为在调试器端排除故障是安全的,因为我试过了

>两台不同的开发者机器(Windows 10都有当前更新,没有防火墙),
>两个不同的网络(家庭和大学)
> MonoDevelop,Visual Studio Community 2015,Visual Studio Professional 2017 RC(带有各自的Unity工具),
>重新安装Unity3d,
>不同的Unity3d项目(标准示例项目以及仅包含Text和Button的自己的最小示例),
>手动将android:debuggable =“true”添加到项目的AndroidManifest和
>在Visual Studio中通过deviceip手动将调试器连接到设备:5555(在“选择Unity实例”窗口中 – >输入IP).

在设备上,我试着

>再次打开手机,
>关闭USB调试&上,
>选择Unity App作为“调试应用程序”(在Developer选项中)并启用/禁用“Wait for debugger”(也是Developer options),
>通过USB线或adb connect deviceip连接设备:5555和
>生根电话.

我不知道还有什么可以尝试的.我很确定它是设备上的东西.它以前工作过,但我不知道从那以后发生了什么变化.任何提示都表示赞赏.

编辑

好的,所以我取得了一些进展.当我检查应用程序的logcat输出时,我发现了诸如的行

Waiting for connection from host on [192.168.2.110:55416]...

(.2.110是设备的IP)
所以我手动输入了IP& “选择Unity实例”窗口中Visual Studio中的端口 – >输入IP并在此之后,logcat读取

PlayerConnection accepted from [192.168.2.115] handle:0x1c

(.2.115是我的开发者机器)
所以连接就在那里. Visual Studio不会“识别”(?)它并且不会切换到调试模式,因此它可以在断点处停止.有谁知道我怎么能强迫它这样做?

解决方法:

好吧,不是真正的答案,但我找到了一种方法来调试它毕竟.在所有logcat输出中,我还发现了这一行:

Using monoOptions --debugger-agent=transport=dt_socket,embedding=1,defer=y,address=0.0.0.0:56785

获取该端口(和实际设备IP)并在“选择Unity实例”窗口中的Visual Studio中输入它 – >输入IP,调试器最终连接.

问题是,每次运行应用程序时都会更改端口,所以为了调试它,我总是要查找它.另外(完全可能是一个不同的问题),Debug.Log或Console.WriteLine的输出不会被调试器捕获.现在读取日志的唯一方法是在AndroidStudio中.

所以是的,问题仍然存在,为什么设备不会在Visual Studio中的Select Unity Instance窗口中显示为Androidplayer(或者根据MonoDevelop中的位置)?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐