Wie aktiviere ich die native Auflösung für Apps auf dem iPhone 6 und 6 Plus?

194

Xcode 6 GM enthält jetzt Simulatoren für iPhone 6 und 6 Plus und führt Apps standardmäßig in einem skalierten Modus aus.

Um die neue Bildschirmgröße zu aktivieren, habe ich versucht hinzuzufügen, [email protected]was ein Teil des Tricks zu sein scheint, da die App jetzt überhaupt nicht ausgeführt werden kann. Der Fehler "App kann im Simulator nicht ausgeführt werden - Beim Ausführen ist ein Fehler aufgetreten (Domain = LaunchServicesError, Code = 0) ".

Hat jemand herausgefunden, wie eine App tatsächlich in der Auflösung 6/6 + ausgeführt werden kann?

villapossu
quelle
16
Wie andere bereits gesagt haben, besteht der Trick darin, Ihrem Projekt ein Startbild mit der richtigen Größe hinzuzufügen. Ich habe eine Kurzanleitung zum Hinzufügen eines Startbilds verfasst, damit Sie hier die Auflösung des iPhone 6 anzeigen können .
Matthewpalmer
1
Dies funktionierte für mich stackoverflow.com/questions/25755443/…
Johndpope
2
Die Benennung von Bildern ist für das iPhone 6/6 + unterschiedlich. Für mich hat das Hinzufügen des Startbilds für 6 und 6+ perfekt funktioniert. Schauen Sie sich diese Antwort für die korrekte Namenskonvention an: stackoverflow.com/a/27473877/1568532
Mitweltbürger
Gibt es eine Alternative anstelle von LaunchScreen?
Vaibhav Jhaveri

Antworten:

220

Sie können eine Startbildschirmdatei hinzufügen, die für mehrere Bildschirmgrößen zu funktionieren scheint. Ich habe gerade das MainStoryboard als Startbildschirmdatei hinzugefügt, wodurch die Skalierung der App gestoppt wurde. Ich denke, ich muss später einen permanenten Startbildschirm hinzufügen, aber das hat die native Auflösung erreicht und funktioniert schnell. Gehen Sie in Xcode zu Ihrem allgemeinen Ziel und fügen Sie dort die Startbildschirmdatei hinzu.

Bildschirmdatei starten

David L.
quelle
2
Dies ist wahrscheinlich die beste Lösung, wenn Sie ein einzelnes Storyboard verwenden, das alle Geräte verwaltet. Meine Antwort ist angemessen, wenn Sie kein einzelnes Storyboard verwenden oder separate, explizite Startbilder benötigen.
rmaddy
Ich muss explizite Startbilder für iPhone 6 und 6 Plus festlegen. Gibt es eine Namenskonvention, wenn ich den Asset-Katalog nicht verwenden möchte?
Radif Sharafullin
@Radif Sharafullin Hier finden Sie einige Anweisungen zum Benennen der Startbilder: developer.apple.com/library/prerelease/ios/documentation/iPhone/… . Scrollen Sie ganz nach unten, um das Bildbenennungsmuster zu starten.
David L
6
Beachten Sie LaunchImage, dass iOS Ihre iPhone-5-App nach der Migration nicht mehr auf iPhone-6 (und 6+) ausdehnt. Dies kann die Benutzeroberfläche Ihrer App beschädigen, wenn Sie Ihre Ansichten mit einer absoluten Größe von 320 Pixel Breite erstellen und keine relative Größe mithilfe von Autolayouts verwenden.
Atulkhatri
1
@ bobo2000 Design reaktionsschnell.
Mattsven
116

Wenn Sie Asset-Kataloge verwenden, rufen Sie den Asset-Katalog LaunchImages auf und fügen Sie die neuen Startabbilder für die beiden neuen iPhones hinzu. Möglicherweise müssen Sie mit der rechten Maustaste klicken und "Neues Startbild hinzufügen" auswählen, um einen Ort zum Hinzufügen der neuen Bilder anzuzeigen.

Für das iPhone 6 (Retina HD 4.7) ist ein Porträtstartbild von 750 x 1334 erforderlich.

Für das iPhone 6 Plus (Retina HD 5.5) sind sowohl Hoch- als auch Querformatbilder mit den Größen 1242 x 2208 bzw. 2208 x 1242 erforderlich.

rmaddy
quelle
2
Ich wünschte, ich könnte zwei richtige Antworten wählen, da dies alles sehr richtig scheint. Ich habe noch nicht begonnen, Asset-Kataloge zu verwenden (ich habe nur erfolglos versucht, einen zu übernehmen - irgendwie hat die App die Startbilder dort nicht gefunden), aber das Zuweisen der Startbildschirmdatei war hier eine einfache Lösung.
Villapossu
Es sollte möglich sein, die richtigen Startabbilder hinzuzufügen, ohne Asset-Kataloge zu verwenden. Aber ich weiß nicht ohne weiteres, wie ich sie in der Info.plist referenzieren soll.
rmaddy
Muss ich tatsächlich ein Bild hinzufügen? Ich habe diese aktiviert und es skaliert immer noch.
Epic Byte
Ja, Sie müssen die Bilder tatsächlich hinzufügen (oder die neue "Launch Screen File" verwenden (dies gilt jedoch nur für iOS 8).
rmaddy
1
@trumpetlicks Das Plus wird auf ein größeres Ziel gerendert und dann auf die tatsächliche Bildschirmgröße verkleinert, genau wie beim Retina MacBook Pro. Außerdem kann das Plus Apps im
Querformat
104

Ich habe einfache schwarze Startbildschirme erstellt, mit denen die App auf dem iPhone 6 und iPhone 6+ richtig skaliert werden kann:

iPhone 6 Porträt

iPhone 6 Plus Porträt

Wenn Sie bereits ein LaunchImage in Ihrer .xcassett haben, öffnen Sie es, wechseln Sie in Xcode zur dritten Registerkarte im rechten Menü und aktivieren Sie die iPhone-Bilder für iOS 8.0, um sie dem vorhandenen Set hinzuzufügen. Ziehen Sie dann die Bilder über:

Geben Sie hier die Bildbeschreibung ein

A. Badger
quelle
52

Ich wollte keinen Asset-Katalog einführen.

Gemäß der Antwort von seahorseseaeo hier hat das Hinzufügen von Folgendes zu info.plist für mich funktioniert. (Ich habe es als "Quellcode" bearbeitet.) Dann habe ich die Bilder [email protected] und [email protected] benannt

<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>
William Jockusch
quelle
Diese Antwort ist großartig. Mithilfe der Bilder können Sie problemlos vom Begrüßungsbildschirm zur App wechseln. Keine andere Lösung (Asset-Katalog oder Storyboard) ermöglicht dies so einfach.
jjxtra
7
Hat für mich funktioniert (danke!), Aber das 568h @ 2x-Startbild wurde nicht mehr erkannt, wodurch die Unterstützung für die iPhone 5-Größe deaktiviert wurde. Ich musste nur einen weiteren Artikel hinzufügen, der den beiden oben genannten ähnlich ist, aber 568h angibt. (bestimmte Felder : Default-568h, {320, 568})
Steph Thirion
Gleiches gilt für das iPhone 4S.
Josh Bernfeld
1
Ich habe gerade die Erfahrung gemacht (auf dem Simulator), dass die angegebenen Bilddateien nicht einmal existieren müssen.
Glasz
Ich habe ein Problem mit dieser Technik auf dem iPhone 6: Sie zeigt zuerst den Startbildschirm [email protected] und dann kurz Default-Portrait@2x~iphone.png. Irgendeine Idee?
Samuel
21

Beachten Sie, dass das iPhone 6 die Auflösung von 320pt (640px) verwendet, wenn Sie den 'Anzeigezoom' unter iPhone> Einstellungen> Anzeige & Helligkeit> Ansicht aktiviert haben.

tomi44g
quelle
Ich wünschte, das wäre besser dokumentiert!
Bobo2000
Du hast gerade meinen Tag gerettet. Ich habe alle anderen Lösungen ausprobiert, aber mein Problem war nur, dass sich das Gerät im Zoom-Modus befand.
MessuKilkain
8

Gehen Sie wie folgt vor (siehe Foto)

  1. Gehe zum Asset-Katalog
  2. Klicken Sie mit der rechten Maustaste und wählen Sie "Neues Startbild hinzufügen".

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

Geben Sie hier die Bildbeschreibung ein

Umar Farooq
quelle
3

Beim Ausführen ist ein Fehler aufgetreten (Domain = LaunchServicesError, Code = 0).

Normalerweise bedeutet dies, dass installd während des Installationsvorgangs einen Fehler zurückgegeben hat (fehlerhafte Ressourcen oder ähnliches).

Leider zeigt Xcode nicht den tatsächlichen zugrunde liegenden Fehler an (Sie können gerne Dupes dieses bekannten Fehlers ablegen).

Sie sollten ~ / Library / Logs / CoreSimulator / CoreSimulator.log überprüfen , um den zugrunde liegenden Fehler für Sie zu protokollieren.

Jeremy Huddleston Sequoia
quelle
Vielen Dank! War sich dieser zusätzlichen Einsicht in die Grundursache des Fehlers nicht bewusst. Das detaillierte Protokoll sagt mir nicht viel, aber zumindest habe ich etwas an meine Radarablage anzuhängen.
Villapossu
0

Wenn Sie einen Asset-Katalog verwenden und mehrere Ziele beide dieselbe Asset-Katalogdatei verwenden, stellen Sie sicher, dass diese Datei beide Ziele im rechten Bereich von xcode überprüft hat.

Das war mein problem

Geben Sie hier die Bildbeschreibung ein

luky
quelle