I’m using the prerelease tool in iTunesConnect where you can distribute the app to a group of testers. It seems though that after some days the app crashes immediately after start (just after the splash screen shown). No error logs.
I’m wondering if this has to do with the 30days expiration that all TestFlight apps seems to have, or maybe it’s something in my code that causing it?
You’re absolutely right, Toydor!
After the 30-days-period expired, your test won’t be able download or run your app.
I didn’t find a way to extend this period. You only can upload an updated version to get another 30 days.
There are two things you can do to identify this:
Get the app on a device, run the app, then check if the device has a crash report by e.g. using Xcode. If there is a crash report, check it. in addition check the console output on the device when the “crash” happens.
Check the iTunes Connect website and navigate to the specific build. Check if the page shows some status as “expired” for that build.
The reason why app cannot execute is that no valid provisioning profile was found.
And we can find those logs in device console output:
Mar 9 08:34:48 ***-iPhone amfid[***] <Error>: SecTrustEvaluate [leaf CriticalExtensions IssuerCommonName] Mar 9 08:34:48 ***-iPhone amfid[***] <Error>: /private/var/mobile/Containers/Bundle/Application/B4BF7C1D-2DF4-4B8D-943B-57BABD30****/***.app/*** not valid: 0xe8008015: A valid provisioning profile for this executable was not found. Mar 9 08:34:48 ***-iPhone kernel <Notice>: AMFI: hook..execve() killing pid 10282: no code signature Mar 9 08:34:48 ***-iPhone kernel <Notice>: Sandbox: hook..execve() killing pid 10282: application requires container but none set Mar 9 08:34:48 ***-iPhone com.apple.xpc.launchd (UIKitApplication:com.***.***[0x4711]) <Notice>: Service exited due to signal: Killed: 9