web-dev-qa-db-fra.com

L'application ne montre pas la nouvelle image Splash sur iOS 11

J'ai rencontré un problème étrange lié à l'écran de démarrage sur iOS 11. J'utilise LaunchScreen.storyboard. J'ai changé Splash Image en Xcode 9, mais lorsque j'ai démarré l'appareil sur iOS 11, l'ancienne image Splash était affichée, j'ai supprimé l'application de l'iPhone 7, puis redémarré. Splash Image était toujours ancienne. J'ai redémarré l'iPhone, puis la nouvelle image Splash a été affichée. J'ai lu des informations sur ce problème et sur la façon de le résoudre ici . J'ai créé TestFlight pour les testeurs, qui montraient également l'ancien écran de démarrage, si les testeurs pouvaient toujours redémarrer les périphériques, mais nous ne pouvions pas demander aux utilisateurs de redémarrer leurs périphériques afin qu'ils puissent voir le nouvel écran de démarrage. Comment puis-je le réparer?

Update : Renommer Splash Image ne donne aucun résultat. Sur iOS 10, une nouvelle image Splash est toujours affichée, ce qui correspond au comportement correct.

Update 1 : J'ai supprimé LaunchScreen.storyboard, créé une nouvelle propriété isInitialViewController installée, défini UIImageView et image après démarrage, l'écran de démarrage ne s'affichait pas et était simplement un écran blanc (si vous définissez la couleur d'arrière-plan UIImageView de n'importe quelle couleur, il sera affiché). Je pense que le problème est que le nouvel écran Splash n’est pas installé sur une cible spécifique. Mais comment cela peut-il être fait dans Assets.xcassets? Et la question principale reste la même - Comment puis-je résoudre ce problème?

11
Alexander Khitev

J'ai le même problème et je le répare de cette façon:

  1. ajouter LaunchImage dans le catalogue des ressources
  2. enlever le scénariseur LaunchScreen
  3. changer bundleId: bundle -> bundle1
  4. lancez l'application et assurez-vous d'avoir une nouvelle image de lancement
  5. changer bundleId: bundle1 -> bundle

Prendre plaisir!

UPDATE

LaunchScreen contient iPhone x2 et iPhone Retina 4. Si vous utilisez une image 480x960 pour retina4, vous aurez un drôle issue .

2
stasuwe