web-dev-qa-db-fra.com

Comment activer la résolution native pour les applications sur iPhone 6 et 6 Plus?

Xcode 6 GM inclut désormais des simulateurs pour iPhone 6 et 6 Plus et, par défaut, ils exécutent les applications en mode redimensionné.

Pour activer la nouvelle taille d'écran, j'ai essayé d'ajouter [email protected], ce qui semble faire partie de l'astuce puisque l'application ne s'exécute plus du tout, avec l'erreur "Impossible d'exécuter l'application dans le simulateur - Une erreur s'est produite lors de l'exécution (Domain = LaunchServicesError, Code = 0) ".

Quelqu'un at-il compris comment faire fonctionner une application avec une résolution de 6/6 +?

194
villapossu

Vous pouvez ajouter un fichier d'écran de lancement qui semble fonctionner pour plusieurs tailles d'écran. Je viens d'ajouter MainStoryboard en tant que fichier d'écran de lancement, ce qui a empêché la mise à l'échelle de l'application. Je pense que j'aurai besoin d'ajouter un écran de lancement permanent plus tard, mais cela a permis à la résolution native de fonctionner rapidement. Dans Xcode, accédez à votre cible générale, puis ajoutez-y le fichier d'écran de lancement.

Launch Screen File

220
David L

Si vous utilisez des catalogues d'actifs, accédez au catalogue d'actifs LaunchImages et ajoutez les nouvelles images de lancement des deux nouveaux iPhones. Vous devrez peut-être cliquer avec le bouton droit de la souris et choisir "Ajouter une nouvelle image de lancement" pour afficher un emplacement où ajouter les nouvelles images.

L'iPhone 6 (Retina HD 4.7) nécessite une image de lancement portrait de 750 x 1334.

L'iPhone 6 Plus (Retina HD 5.5) requiert des images au format portrait et paysage, respectivement de 1242 x 2208 et 2208 x 1242.

116
rmaddy

J'ai créé des écrans de lancement noirs de base qui permettront à l'application de s'adapter correctement à l'iPhone 6 et à l'iPhone 6+:

iPhone 6 Portrait

iPhone 6 Plus Portrait

Si vous avez déjà une LaunchImage dans votre .xcassett, ouvrez-la, passez au troisième onglet du menu de droite dans Xcode et cochez les images iPhone iOS 8.0 pour les ajouter à l'ensemble existant. Ensuite, faites glisser les images sur:

enter image description here

104
A.Badger

Je ne voulais pas introduire un catalogue d'actifs.

Selon la réponse de seahorseseaeo ici , ajouter ce qui suit à info.plist a fonctionné pour moi. (Je l'ai édité en tant que "code source".) J'ai ensuite nommé les images [email protected] et [email protected].

<key>UILaunchImages</key>
<array>
    <dict>
        <key>UILaunchImageMinimumOSVersion</key>
        <string>8.0</string>
        <key>UILaunchImageName</key>
        <string>Default-667h</string>
        <key>UILaunchImageOrientation</key>
        <string>Portrait</string>
        <key>UILaunchImageSize</key>
        <string>{375, 667}</string>
    </dict>
    <dict>
        <key>UILaunchImageMinimumOSVersion</key>
        <string>8.0</string>
        <key>UILaunchImageName</key>
        <string>Default-736h</string>
        <key>UILaunchImageOrientation</key>
        <string>Portrait</string>
        <key>UILaunchImageSize</key>
        <string>{414, 736}</string>
    </dict>
</array>
52
William Jockusch

Notez que l'iPhone 6 utilisera la résolution de 320 ppt (640px) si vous avez activé le "Zoom d'affichage" dans iPhone> Paramètres> Affichage et luminosité> Afficher.

21
tomi44g

Faites ce qui suit (voir sur la photo)

  1. Accéder au catalogue d'actifs
  2. faites un clic droit et choisissez "Ajouter une nouvelle image de lancement"

    • iPhone 6 -> 750 x 1334
    • iPhone 6 Plus -> 1242 x 2208 et 2208 x 1242

enter image description here

8
Umar Farooq

Une erreur s'est produite lors de l'exécution (Domain = LaunchServicesError, Code = 0)

Cela indique généralement que installd a renvoyé une erreur lors du processus d'installation (ressources incorrectes ou similaires).

Malheureusement, Xcode n’affiche pas l’erreur sous-jacente réelle (n'hésitez pas à archiver les doublons de ce bogue connu).

Vous devriez vérifier ~/Library/Logs/CoreSimulator/CoreSimulator.log qui enregistrera l’erreur sous-jacente pour vous.

Si vous utilisez un catalogue de ressources et que plusieurs cibles utilisent le même fichier de catalogue de ressources, assurez-vous que ce fichier a coché les deux cibles dans le panneau de droite de xcode.

C'était mon problème.

enter image description here

0
luky