What Mac users call “Bonjour” is really just Apple’s brand name for Zeroconf, a network standard for automatically configuring devices on a local network. Zeroconf also happens to be the best way to get OSC clients to configure themselves without making the user jump through hoops like setting up IP addresses.
Apple actually has a cross-platform Bonjour library for the job, free and Apache-licensed and available for Java. But that library includes a lot of native code, so it’s not going to be a good choice for Android After some initial problems getting it to run on Android which I think I inadvertently caused by bringing in a wrapper class, I’ve now got this pure Java library working on Android:
(A quick search suggests that there are problems with Apple’s library — it’s certainly not being updated — and pure Java is a better tool for the job generally for something like a networking library for Java programmers! So jmDNS it is.)
jmDNS seems to be everyone’s choice at this point, so what’s really needed is … a tutorial. Now that I fixed my own stupid problem, you can look forward to that. Back on it tomorrow/this weekend. And naturally, I might as well use it with OSC and Java and desktops and Processing – because once it’s done, it’ll work all those places.