J'utilise l'outil de pré-version d'iTunesConnect où vous pouvez distribuer l'application à un groupe de testeurs. Il semble cependant qu'après quelques jours, l'application se bloque immédiatement après le démarrage (juste après l'écran de démarrage affiché). Aucun journal d'erreur.
Je me demande si cela a à voir avec l'expiration de 30 jours que toutes les applications TestFlight semblent avoir, ou peut-être que quelque chose dans mon code en est la cause?
Tu as absolument raison, Toydor!
Une fois la période de 30 jours expirée, votre test ne pourra plus télécharger ni exécuter votre application .. Je n'ai pas trouvé le moyen de prolonger cette période. Vous pouvez uniquement télécharger une version mise à jour pour obtenir 30 jours supplémentaires.
La prochaine fois qu'un utilisateur tentera de lancer l'application bêta, une boîte de dialogue indiquant "YOURAPPNAME" Beta Has Expired
s'affichera et l'application ne se lancera pas.
L'application ne doit pas se bloquer (ni s'exécuter), comme le décrit votre question.
La raison pour laquelle l'application ne peut pas s'exécuter est qu'aucun profil d'approvisionnement valide n'a été trouvé.
Et nous pouvons trouver ces journaux dans la sortie de la console du périphérique:
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[0] <Notice>: AMFI: hook..execve() killing pid 10282: no code signature
Mar 9 08:34:48 ***-iPhone kernel[0] <Notice>: Sandbox: hook..execve() killing pid 10282: application requires container but none set
Mar 9 08:34:48 ***-iPhone com.Apple.xpc.launchd[1] (UIKitApplication:com.***.***[0x4711][10282]) <Notice>: Service exited due to signal: Killed: 9
Il y a deux choses que vous pouvez faire pour identifier ceci:
Téléchargez l'application sur un périphérique, exécutez-la, puis vérifiez si le périphérique contient un rapport d'incident, par exemple. en utilisant Xcode. S'il y a un rapport d'incident, vérifiez-le. De plus, vérifiez la sortie de la console sur le périphérique lorsque le "crash" se produit.
Consultez le site Web iTunes Connect et accédez à la version spécifique. Vérifiez si la page affiche un statut "expiré" pour cette construction.