Bagaimana cara mengaktifkan resolusi asli untuk aplikasi di iPhone 6 dan 6 Plus?


194

Xcode 6 GM sekarang termasuk simulator untuk iPhone 6 dan 6 Plus, dan secara default mereka menjalankan aplikasi dalam mode skala.

Untuk mengaktifkan ukuran layar baru saya mencoba menambahkan Default-667h@2x.pngyang tampaknya melakukan bagian dari trik karena aplikasi sekarang gagal untuk berjalan sama sekali, dengan kesalahan "Tidak dapat menjalankan aplikasi di Simulator - Terjadi kesalahan saat menjalankan (Domain = LaunchServicesError, Kode = 0) ".

Adakah yang tahu bagaimana cara menjalankan aplikasi pada resolusi 6/6+?


16
Seperti yang orang lain katakan, triknya adalah menambahkan gambar peluncuran dengan ukuran yang tepat ke proyek Anda. Saya menulis panduan singkat tentang cara menambahkan gambar peluncuran sehingga Anda dapat menampilkan resolusi iPhone 6 di sini.
matthewpalmer


2
Penamaan gambar berbeda untuk iphone 6/6+. Bagi saya hanya menambahkan gambar peluncuran untuk 6 dan 6+ bekerja dengan sempurna. Lihatlah jawaban ini untuk konvensi penamaan yang benar: stackoverflow.com/a/27473877/1568532
fellowworldcitizen

Apakah ada alternatif selain menggunakan LaunchScreen?
Vaibhav Jhaveri

Jawaban:


220

Anda dapat menambahkan file layar peluncuran yang tampaknya berfungsi untuk beberapa ukuran layar. Saya baru saja menambahkan MainStoryboard sebagai file layar peluncuran dan itu menghentikan penskalaan aplikasi. Saya pikir saya perlu menambahkan layar peluncuran permanen nanti, tetapi itu membuat resolusi asli dan bekerja dengan cepat. Di Xcode, buka target Anda, umum dan tambahkan file layar peluncuran di sana.

Luncurkan File Layar


2
Ini mungkin solusi terbaik jika Anda menggunakan storyboard tunggal yang menangani semua perangkat. Jawaban saya sesuai jika Anda tidak menggunakan storyboard tunggal atau Anda perlu gambar peluncuran terpisah yang eksplisit.
rmaddy

Saya perlu menetapkan gambar peluncuran eksplisit untuk iPhone 6 dan 6 Plus, apakah ada konvensi penamaan jika saya tidak ingin menggunakan katalog aset?
Radif Sharafullin

@Radif Sharafullin Ada beberapa instruksi di sini tentang cara memberi nama gambar peluncuran: developer.apple.com/library/prerelease/ios/documentation/iPhone/… . Gulir sampai ke bawah untuk membuka pola penamaan gambar.
David L

6
Ingatlah bahwa setelah Anda bermigrasi LaunchImage, iOS tidak akan lagi meregangkan aplikasi iPhone-5 Anda ke iPhone-6 (dan 6+). Yang dapat merusak UI Aplikasi Anda jika Anda membuat tampilan dengan ukuran absolut seperti lebar 320px dan tidak menggunakan ukuran relatif menggunakan pembayaran otomatis.
atulkhatri

1
@ bobo2000 desain responsif.
mattsven

116

Jika Anda menggunakan katalog aset, buka katalog aset LaunchImages dan tambahkan gambar peluncuran baru untuk dua iPhone baru. Anda mungkin perlu mengklik kanan dan memilih "Tambahkan Gambar Luncurkan Baru" untuk melihat tempat untuk menambahkan gambar baru.

IPhone 6 (Retina HD 4.7) membutuhkan gambar peluncuran potret 750 x 1334.

IPhone 6 Plus (Retina HD 5.5) membutuhkan gambar potret dan lansekap masing-masing berukuran masing-masing 1242 x 2208 dan 2208 x 1242.


2
Seandainya saya bisa memilih dua jawaban yang benar karena ini tampaknya sangat benar. Belum mulai menggunakan katalog aset (well, hanya mencoba gagal untuk mengadopsi satu - entah bagaimana aplikasi tidak menemukan gambar peluncuran di sana) tetapi menetapkan file layar peluncuran adalah perbaikan yang mudah di sini.
villapossu

Seharusnya dimungkinkan untuk menambahkan gambar peluncuran yang tepat tanpa menggunakan katalog aset. Tapi saya tidak tahu bagaimana referensi mereka di Info.plist.
rmaddy

Apakah saya harus benar-benar menambahkan gambar? Saya menyalakan ini dan masih scaling.
Epic Byte

Ya, Anda harus benar-benar menambahkan gambar (atau menggunakan "Luncurkan File Layar" baru (tapi itu hanya untuk iOS 8).
rmaddy

1
@trumpetlicks The plus merender untuk target yang lebih besar dan kemudian menurunkan render ke ukuran layar aktual, teknik yang sama seperti retina MacBook Pro. Plus, Plus dapat benar-benar meluncurkan aplikasi dalam lanskap, tidak ada iPhone lain
hokiewalrus

104

Saya telah membuat layar peluncuran dasar hitam yang akan membuat skala aplikasi dengan benar di iPhone 6 dan iPhone 6+:

Potret iPhone 6

Potret iPhone 6 Plus

Jika Anda sudah memiliki LaunchImage di .xcassett Anda, buka, beralih ke tab ketiga di menu kanan dalam Xcode dan centang gambar iPhone iOS 8.0 untuk menambahkannya ke set yang ada. Kemudian seret gambar ke atas:

masukkan deskripsi gambar di sini


52

Saya tidak ingin memperkenalkan katalog aset.

Per jawaban dari seahorseseaeo di sini , menambahkan yang berikut ke info.plist bekerja untuk saya. (Saya mengeditnya sebagai "kode sumber".) Saya kemudian menamai gambar Default-667h@2x.png dan Default-736h@3x.png

<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>

Jawaban ini bagus. Memungkinkan menggunakan gambar dengan mudah untuk beralih dari layar splash ke aplikasi. Tidak ada solusi lain (katalog aset atau papan cerita) yang memungkinkan ini dilakukan dengan mudah.
jjxtra

7
Berfungsi untuk saya (terima kasih!) Tetapi berhenti mengenali gambar peluncuran 568h @ 2x, menonaktifkan dukungan ukuran iphone 5. Saya hanya perlu menambahkan item lain yang mirip dengan dua di atas tetapi menentukan 568j. (khusus ladang: Default-568h, {320, 568})
Steph Thirion

Hal yang sama berlaku untuk iPhone 4S.
Josh Bernfeld

1
baru saja membuat pengalaman (pada simulator) bahwa file gambar yang ditentukan bahkan tidak perlu ada.
glasz

Saya memiliki masalah dengan teknik ini pada iPhone 6: pertama-tama layar awal Default-667h@2x.png ditampilkan, kemudian secara singkat menampilkan Default-Portrait@2x~iphone.png. Ada ide?
Samuel

21

Perhatikan bahwa iPhone 6 akan menggunakan resolusi 320pt (640px) jika Anda telah mengaktifkan 'Tampilan Zoom' di iPhone> Pengaturan> Tampilan & Kecerahan> Lihat.


Saya berharap ini lebih baik didokumentasikan!
bobo2000

Anda baru saja menyelamatkan hari saya. Saya mencoba semua solusi lain tetapi masalah saya hanya bahwa perangkat dalam mode Zoomed.
MessuKilkain

8

Lakukan yang berikut (lihat di foto)

  1. Katalog aset
  2. klik kanan dan pilih "Tambahkan Gambar Peluncuran Baru"

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

masukkan deskripsi gambar di sini


3

Terjadi kesalahan saat menjalankan (Domain = LaunchServicesError, Code = 0)

Biasanya ini menunjukkan bahwa installd mengembalikan kesalahan selama proses instalasi (sumber daya buruk atau serupa).

Sayangnya, Xcode tidak menampilkan kesalahan mendasar yang sebenarnya (jangan ragu untuk mengajukan dupes bug yang diketahui ini).

Anda harus memeriksa ~ / Library / Logs / CoreSimulator / CoreSimulator.log yang akan mencatat kesalahan yang mendasarinya untuk Anda.


Terima kasih! Tidak mengetahui wawasan ekstra ini tentang akar penyebab kesalahan. Catatan terperinci tidak mengatakan banyak hal kepada saya, tetapi setidaknya saya memiliki sesuatu untuk dilampirkan ke pengarsipan radar saya.
villapossu

0

Jika Anda menggunakan katalog aset, dan memiliki beberapa target, keduanya menggunakan file katalog aset yang sama, pastikan bahwa file ini telah memeriksa kedua target di panel kanan dalam xcode.

Itu masalah saya.

masukkan deskripsi gambar di sini

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.