Remote debugging with Android emulator

前端 未结 8 1053
耶瑟儿~
耶瑟儿~ 2020-11-30 17:09

Is it possible to write the code/compile Android application on one machine and debug it remotely on the emulator launched on another? I\'m sick and tired of the emulator co

8条回答
  •  抹茶落季
    2020-11-30 17:26

    Here is how I solved it on Windows. I pretty much followed Christopher's lead, but I can't edit, so a new answer will have to do.

    The problem I had was that ADB as well as the emulator was just listening on 127.0.0.1, not 0.0.0.0, for me. Otherwise I would have used TCPMon. I guess this is either different on Windows, or has changed with the latest versions of the SDK. (You can check with netstat -ban.)

    1. I installed WinSSHD on the machine that runs the emulator. (I believe it should work with freeSSHd as well, but I couldn't get a login working there.)

    2. I opened port 22 (TCP) in the Windows Firewall. (WinSSHD might be able to do that for you.)

    3. I created a virtual account in the WinSSHD GUI.

    4. I created a new PuTTY connection from the development machine to the emulator machine and made sure I could connect.

    5. Then I set up tunnelling in PuTTY: Connection -> SSH -> Tunnels

      Source port: 5554
      Destination: localhost:5554
      Type: Local/Auto

      Source port: 5555
      Destination: localhost:5555
      Type: Local/Auto

      (Connect and keep PuTTY open, to maintain the tunnel.)

    6. Now I fired up the emulator on the remote machine and made sure that ADB is not running there.

    7. I restarted ADB on the development machine (adb kill-server, then adb start-server).

    8. adb devices and the remote emulator showed up as emulator-5554 device. I could now deploy and run my app straight from Eclipse/ADT, where the emulator showed up under Virtual Devices as if it was a local emulator.

提交回复
热议问题