When developing a mobile app you'll need to install it on real devices. Installing apps on iOS devices you can connect to your Mac via a USB cable is relatively straightforward. It requires using Xcode and an Apple certified account to generate a secure binary using a digital certificate. You can this for free using your Apple ID and a free Apple Developer account. Apps installed using Xcode require including a Universal Device Identifier (UDID) in the binary. Apple allows up to 100 devices per account for this purpose. Xcode can obtain the UDID from the device when it's plugged in via a USB cable and add it to the list of authorized devices on your account. The details of how this is done is available from your Apple Developer account documentation, which is rather involved. This article focuses on how to obtain the UDID vs. the details of how to use it.

To distribute your app to another person's device it's easiest to use TestFlight. Again, you can read about this in the Apple Developer documentation. If TestFlight does not work for you, you can use Ad Hoc distribution or connect the device to your Mac. Either approach requires obtaining the UDID from other persons' devices. Finally, we get to the crux of the matter. Usually, connecting another user's device to your Mac is problematic as it requires you to meet physically with the person. To do this remotely, you need to have the user obtain their UDID and send it to you. To complicate matters, the UDID is protected and your user may not have a Mac or Xcode. What to do?

One method involves using a "profile" installed from a website. This is complex and requires compromising security on the device. I've recently discovered an alternative. It turns out that the USB details of the device include the UDID.

The image below shows how to use System Information on a Mac to obtain USB details about your device. Surprisingly, the serial number is actually the 24 character Hex encoded UDID, shown as 0000XXXXXXXXXXXXXXXXXXXX in the image below.

Alternatively, the image below shows how to use the Device Manager on a Windows computer to obtain USB details about your device. The serial number is the 24 character Hex encoded UDID, shown as 0000XXXXXXXXXXXXXXXXXXXX in the image below.

The developer must add a dash after he 8th character to make it a valid UDID, i.e. 0000XXXX-XXXXXXXXXXXXXXXX.

Using this UDID a developer can now install their app on your device or make it available via Ad Hoc distribution.