(starting a new thread based on:
http://www.giderosmobile.com/forum/discussion/3354/can-gideros-api-auto-complete-on-zerobrane-studio/p1)
@ianchia, I might have misunderstood what you were trying to do; let's recap. There are several way debugging can work with ZBS.
1. Debugging in the player on the same computer. This is initiated when you debug/run your project from ZBS.
What happens behind the scenes is that ZBS starts the player/simulator locally, starts the bridge, and then instructs the bridge to start the project you are working on. If the code of your project includes "require('mobdebug').start()" call, then the application connects to ZBS and starts the debugging process.
2. Debugging on another computer or mobile device. This is similar to the first option, but the player is not started locally (as you need to start it remotely) and the bridge is configured to connect to that player running on another IP address.
@bowerandy posted detailed instructions here based on the discussions we had (
http://www.giderosmobile.com/forum/discussion/2742/zerobrane-with-a-remote-player) and both
@bowerandy and
@keszegh have been successful in using this option.
3. Debugging on another device using your own application. It seems like this is what you are doing/using. If that's the case, you still need to use "require('mobdebug').start()", but make sure start() call includes the IP of the IDE as the debugger needs to know where to connect when it's started remotely. So, if the IDE is running on "prudence.local", you'd have "require('mobdebug').start('prudence.local')" (as you indeed have in your script). You also need to make sure that "Project | Start Debugger Server" is disabled (it means the server is started).
> ZBS doesn't make a reliable connection.
Can you elaborate on that? There is no magic behind the scenes. The debugger you start in your application opens a socket connection to the IDE and communicates through TCP send/receive commands. If there are any issues during that communication, you should see that reported in the IDE. If the server is not started in the IDE, then the application will continue running (after a brief delay); maybe this is what you are referring to.
Comments
I did get it to work (kinda) but I encountered quite a few issues. There will be a detailed reply. (-;
Best,
- Ian