A rough form of synchronisation can be achieved by synchronising performer start times and using methods which fix the position of events within a piece. This approach can be used in combination with any other tool or combination of tools – screen space and devices allowing, but bear in mind that it will never allow for perfect synchronisation; things will always be a little ragged due to the effects of latency.
The simplest form is to use a clock which is centrally controlled in some way, which could be using a phone clock (reportedly most reliable if all performers are using the same type of device, e.g. all iPhones or all Android devices) or a service such as timeanddate.com, as in this image. Agree the time to start, then at that moment, all begin, regardless of what you can see or hear from the other performers.
Another possibility to consider is Chronograph, a cloud-synchronised stopwatch, which one person can start for everybody.
This approach can be combined, as in the image above, with video or audio scores or clicktracks.
Note again that this will reduce the desynchronising effects of latency, but will not eliminate them entirely. For the best results in audio-only work, consider using a low-latency audio tool.