My iOS app was rejected twice for submission for the same reason: crash at start. Given the logs I guess it comes from my provisioning profiles and sign identity. I am using Libgdx 1.5.x with RoboVM beta 4, with Eclipse
When I build the app with no profile, it builds and runs fine on any simulator. With a developer profile, the app builds and runs fine on my test device. Everything is fine until I set iosSignIdentity and iosProvisioningProfile to distribution, there I am having the following error:
Building from console with the following command:
./gradlew -Probovm.device.name=<my device name> launchIOSDevice --stacktrace
I am getting error:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':ios:launchIOSDevice'.
...
Caused by: org.robovm.libimobiledevice.LibIMobileDeviceException: ApplicationVerificationFailed
at org.robovm.libimobiledevice.util.AppLauncher$1.error(AppLauncher.java:1001)
at org.robovm.libimobiledevice.Callbacks.callInstproxyCallback(Callbacks.java:64)
The log from my device (taken from Xcode) is:
<Error>: profile not valid: 0xe8008012
<Error>: 0x1e3000 install_embedded_profile: Could not install embedded profile: 0xe8008012
<Error>: 0x1e3000 verify_signer_identity: MISValidateSignatureAndCopyInfo failed for /var/tmp/install_staging.6O8w3D/IOSLauncher.app/IOSLauncher: 0xe8008015
Here is the provisioning profile I have created for distribution, it is linked to my Ditribution certificate and my app:
in my build.gradle I have set identity and profile like this:
robovm {
iosSignIdentity = "iPhone Distribution: <my name> (PK79UD6TA3)"
iosProvisioningProfile = "DistribKM"
iosSkipSigning = false
stdoutFifo = null
stderrFifo = null
}
}
I am taking the iosSignIdentity from this command line:
And this is where I am lost. I can build the app with
./gradlew -Probovm.ipaArchs=thumbv7:arm64 build createIPA
The build will be succesfull. But I am almost sure that if I upload and submit this build for revision, Apple will reject it for the 3rd time for same reason as the 2 previous ones: "app crashes at start".
Here is what it looks like once uploaded to iTunes Connect:
How can I make sure the app will work properly with the distribution profile before I submit it?