Inspect the build. Control the handoff.
Read the metadata and provisioning details behind each Release. Check what blocks distribution, then set the password, expiry and delivery limit for its tester links.
{
"bundleId": "example.distkit.fixture",
"profileType": "ad_hoc",
"profileExpiresAt": "2020-01-01T00:00:00.000Z",
"bundleMatches": true,
"profileExpired": true,
"installable": false
}The fixture is unsigned and is not an installable app. These fields show an expired profile being blocked by the parser, not a successful signature or device test.
Open the generated JSONWhat the package report checks
DistKit parses an IPA or APK. It does not perform complete cryptographic signature verification or certify that a device will install it.
- App identity
- Name, version, build number, Bundle ID or Application ID, minimum OS or SDK, and icon when present.
- iOS provisioning
- Distribution type, profile name, Team ID, expiry, device count, and Bundle ID match.
- Android package
- Installable APK status, target SDK, available signing information, and direct-download readiness.
Read the result, then act
- Expired profile
- Update the provisioning profile and export a new IPA. Changing the link does not change the package.
- Bundle ID mismatch
- Check the build target and signing configuration before exporting again.
- App Store profile
- Use the Apple-managed distribution route, or export a correctly signed Ad Hoc build for registered devices.
- Package checks pass
- Review link policy next. The target device still needs to meet platform requirements.
App and Release history stay separate.
An App is the durable project. Each upload becomes a Release with its own package report, status, file, and replacement history.
Set access rules for each tester link.
Different audiences can point to the same Release without sharing one password or one lifecycle.
An iOS manifest handoff or Android APK download is an attempt signal. It does not confirm installation or first launch.
Device follow-up stays explicit.
For Development and Ad Hoc packages, the tester device must be included in the provisioning profile.
- 1
Tester collects the UDID through the explicit device-profile flow.
- 2
Release owner registers it in Apple Developer and updates the profile.
- 3
Owner re-exports the signed IPA and replaces the Release.
Package report, not a device guarantee.
DistKit shows what can be read from the IPA and provisioning profile. It cannot query Apple Developer for every tester or confirm the final iOS installation state.
Keep every build reviewable.
Start with the package report, then publish only the Release and audience policy you intend.