有没有什么好的方案可以做到远程 debug 别人手机上安装的自己的软件。

2021-08-10 18:36:01 +08:00
 imtianx

像在局域网可以通过端口转发,WiFi 连接调试一样,实时连接远程外网手机。

4913 次点击
所在节点    Android
9 条回复
imtianx
2021-08-10 18:37:47 +08:00
反编译看过 meto.js 那个客户端的,实现上应该没啥问题。不知道有没有别的方案。
yitingbai
2021-08-10 18:46:23 +08:00
内网穿透呗
join
2021-08-10 18:56:27 +08:00
记录好 log,远程是非常不专业的做法。
Tianao
2021-08-10 20:03:51 +08:00
@join #3 +1
sahooz
2021-08-10 23:36:22 +08:00
这个理论上是可以的,之前还专门研究过一小阶段,参考了美团的方案,把 Java 调试传输模式设置为 kJdwpTransportSocket,通过 socket 转发调试指令和回复信息。不过后来因为时间问题和投入产出方面的考虑放弃了,当时写的一个小 demo: https://github.com/sahooz/AndroidRemoteDebug
sahooz
2021-08-10 23:37:55 +08:00
专业不专业的不重要,解决问题最重要,尤其是 to b 的应用
aguesuka
2021-08-11 12:24:38 +08:00
Java 程序在启动时加上这个参数 -agentlib:jdwt=transport=dt_socket,address=127.0.0.1:55955,suspend=y,server=n 代表可以向这个端口发送 debug 命令. 如果客户的手机可以这样用新进程 debug 启动应用的话, 那就可以调试.其它语言也类似.

但感觉这是个 XY 问题, 也许远程调试并不是你原始问题的最佳解决方案.
imtianx
2021-08-11 15:39:43 +08:00
首先说一下,我的应用是一个 xposed 模块,客户经常有一些奇怪的问题,手机寄过来都是无法复现的,才想着能不能远程 debug,
zxjunz
2021-08-11 19:45:46 +08:00
内网穿透就行了,以前和一个老哥试过,可以用

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/794905

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX