Debug from a remote location

Hello Hivemind!

We are facing an issue that I think many people do these days - how to successfully work from home and specifically how to debug an iPhone from a remote location.
We are working from home due to COVID 19, we're using VNC to connect to our Mac's at the office.
For most needs, we can use that Mac's iOS simulator.
However some of our teams are working on Network Extension to develop VPN which is not supported by the simulator.

We are looking for a solution to enable them to work efficiently.
There can be 2 options:
  1. Debug over the internet - use a local iPhone so we can control it manually, and be able to connect to it with the remote Mac (the one in the office) that is running Xcode and debugging.

  2. Have the device connected to the remote mac, and be able to control it remotely. This option should be direct control via that Mac's USB, because since we are developing a VPN product - we sometimes have network issues during debug.

The solution should be -
  1. Fast enough to allow debugging of networking issues (UI waits on you, but servers don't. So we need to be able to make flows that won't break if debugger is slow).

  2. Reliable enough so we don't need to have "some guy in the office".

Any suggestion will be most appreciated, thanks!

use a local iPhone so we can control it manually, and be able to
connect to it with the remote Mac (the one in the office) that is
running Xcode and debugging.

So is the constraint here that your developers don’t have a local Mac?

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@apple.com"
Some of us have Macs, but the real issue is that the "code" is in the office, company policy doesn't allow to have code on home computers.
So even if I do have a local Mac I can't use it for development (unless there's some way to do this that I'm not familiar with).

Thanks


Yeah, that’s tricky. It’s possible that you might be able to set something up using Xcode’s network debugging support. Something along the lines of:
  1. Take your device to work and connect it to the Mac there via USB.

  2. In Devices and Simulators, enable “Connect via network”.

  3. Test things.

  4. Take the device home.

  5. Set up a Bonjour bridge between home and work. This would involve registering the device’s service on the work network and having it point to an IP address that routes to the device on your home network.

I don’t think we document the Bonjour service type and TCP/IP services used for our network debugging support, so you’d need to do some spelunking in a packet trace tool to figure out the details.

And, of course, your product is a VPN and it’s possible that it might mess things up.

Note Historically Xcode let you configure network debugging with an IP address (see this post) but I can’t seem to get that to show up any more.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@apple.com"
Debug from a remote location
 
 
Q