imtianx
V2EX  ›  Android

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

  •  
  •   imtianx · Aug 10, 2021 · 14112 views
    This topic created in 1915 days ago, the information mentioned may be changed or developed.

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

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

    但感觉这是个 XY 问题, 也许远程调试并不是你原始问题的最佳解决方案.
    imtianx
    imtianx
    OP
    Aug 11, 2021
    8
    首先说一下,我的应用是一个 xposed 模块,客户经常有一些奇怪的问题,手机寄过来都是无法复现的,才想着能不能远程 debug,
    zxjunz
    zxjunz
    Aug 11, 2021
    9
    内网穿透就行了,以前和一个老哥试过,可以用
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1523 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 07:05 · PVG 15:05 · LAX 23:05 · JFK 02:05
    ♥ Do have faith in what you're doing.