Hashdrop
← All documentation

Troubleshooting

The things that actually go wrong, and what they mean.

An iPhone will not install

Almost always the device's UDID is not in the build's provisioning profile. Open the build and check its device coverage. Enrol the device, add the UDID in the Apple Developer portal, re-sign and re-upload.

An installed iOS app crashes on open

The provisioning profile has expired. Nothing can be done from here — re-sign and re-upload. Watch the expiry warnings on each build to avoid it next time.

It was opened inside another app's browser. Ask them to open it in Safari or Chrome.

Upload returns 409

That version and build number already exist for this app and platform. Bump the build number — two different binaries sharing a version is the hardest thing to debug afterwards.

Devices are not getting an OTA update

  • Check targetBinaryVersion actually covers the binary they are running
  • Check the release is not pulled, and not on a partial rollout that excludes them
  • Check the app is pointed at the right server URL and deployment key
  • A device already on that package is correctly told there is nothing new

OTA publish says no JavaScript bundle found

The zip contains the output directory rather than its contents. Zip from inside it: cd build && zip -qr ../bundle.zip .

Install counts look wrong

Only genuine download starts are counted, deduplicated per device over ten minutes. If a number looks low compared to a link's clicks, that is the deduplication and prefetch filtering doing their job.

An invitation email did not arrive

Check spam first. An admin can reissue the invitation from the Team page, which invalidates the previous link — and the link is always shown on screen, so it can be sent by hand.