I want to distribute two same versions of iOS in app distribution

546 Views Asked by At

To create a development environment Staging environment, I want to distribute the same version with different environment variables. ( I am using the same bundle without dividing it. )

For Android, I could deploy the same version, but for iOS, the second deployment overwrites the app on first deployment.

https://firebase.google.com/docs/reference/app-distribution/rest/v1/UploadReleaseResult

Android always had "RELEASE_CREATED" results, but iOS had "RELEASE_CREATED" results, and iOS had "RELEASE_UPDATED" results.

I confirmed that it can be distributed in the same version. But I don't know when the existing app will be overwritten.

How can I distribute the same version on iOS?

1

There are 1 best solutions below

0
On

I received an answer about the reason for creating a new release.

This is a great question and one we get regularly.  There are some subtle differences between iOS and Android in what is considered a new release.  For Android the logic is pretty simple but for iOS it's more complicated.

If your goal is to have a new release created each time for iOS the easiest way to do it is to make sure you're also changing the version or build number.

If you really want to hold onto the same version or build number, here's how we determine whether or not to create a new release for you:

Android: If the CRC32 checksums in the APK (or AAB) don't change, we don't create a new release. If any single bit (of the uncompressed binary) is different, then a new release is created - even if versions and build numbers are identical.

iOS: We only use the UUIDs for the executable(s) (a.k.a. CFBundleExecutable) inside the IPAs to determine something we call the "instance identifier". If two uploads have the same "instance identifier", version, and build number, then no new release is created and the newly uploaded binary replaces the existing binary