Peringatan Xcode 7 Beta: Orientasi Antarmuka dan Luncurkan Storyboard

131

Saya membuka proyek saya dalam Xcode 7 beta dan saya mendapatkan peringatan berikut yang tidak saya dapatkan di Xcode 6:

 All interface orientations must be supported unless the app requires
 full screen.


 A launch storyboard or xib must be provided unless the app requires
 full screen.

Aplikasi ini menggunakan orientasi Portrait hanya untuk perangkat, dan saya mengaturnya seperti itu. Saya juga memiliki storyboard untuk antarmuka iphone dan ipad. Saya tidak bisa memastikan mengapa saya mendapat peringatan ini. Apakah ini bug Xcode 7 beta?

bachma0507
sumber
terdengar seperti bug. Periksa forum pengembang Apple. Sukacita menjadi penguji beta: p
Sam B

Jawaban:

274

Peringatan ini baru untuk iOS 9 karena mendukung aplikasi yang dapat diubah ukurannya dengan dukungan multi-jendela. Sebelumnya, aplikasi akan diskalakan secara otomatis ke perangkat baru yang memiliki resolusi tampilan perangkat keras berbeda dengan yang ada di gambar peluncuran (yang pada dasarnya bagaimana iOS mendeteksi resolusi antarmuka yang didukung). Sekarang, aplikasi yang mendukung multi-jendela harus menentukan resolusi yang didukungnya dengan menyertakan gambar peluncuran atau storyboard untuk semua jenis layar perangkat.

Kecuali jika Anda menulis ulang aplikasi Anda untuk mendukung multi-jendela, Anda akan memerlukan 'Layar penuh'. Ini adalah petunjuk untuk iOS bahwa Anda tidak mendukung multi-jendela, dan pada dasarnya membuat iOS 9 berfungsi seperti versi sebelumnya dalam hal ini.

Jadi, jika Anda mengirimkan pembaruan aplikasi untuk iOS 9, dan Anda tidak mendukung multi-jendela, yang harus Anda lakukan adalah pergi ke pengaturan Target Proyek Anda, pilih Umum, dan di bawah 'Info Penerapan' cari kotak centang disebut 'Membutuhkan Layar Penuh'. Centang ini dan peringatan akan hilang.

Ini tentu saja bukan bug. Jika peringatan ini ada, maka aplikasi Anda mungkin mengalami masalah selama pengiriman. Tidak yakin tentang itu, karena saya belum mengirimkan aplikasi dengan iOS 9 GM Seed, tapi saya pasti akan mencentang kotak :-)

Simon Tillson
sumber
4
Jawaban ini jauh lebih baik daripada yang saat ini memimpin. Terima kasih telah menjelaskan "mengapa" dari perubahan ini, dan "apa" sebenarnya pengaturan layar penuh. (Saya membayangkan itu adalah pengaturan yang sama dengan game yang digunakan untuk menyingkirkan bilah judul, tetapi tampaknya ini bukan masalahnya.)
natevw
@natevw tetapi tidak sepadat yang memberitahu Anda untuk "centang semua kotak sialan". Jawaban ini membuat saya percaya bahwa saya membutuhkan banyak gambar layar peluncuran baru untuk menghapus peringatan ...
dcow
1
@dcow - Ya, Anda salah baca. Saya menyatakan dengan jelas Anda hanya perlu menambahkan gambar peluncuran ATAU centang kotak Membutuhkan Layar Penuh. Jarang ada jawaban sederhana untuk hal-hal ini ... Itu tergantung pada apa yang ingin Anda capai.
Simon Tillson
1
@SimonTillson Anda salah membaca komentar saya dan jelas tidak melihat jawaban di bawah ini. Saya tidak berbicara tentang kotak membutuhkan layar penuh . Perbaikan sebenarnya adalah untuk mendukung semua orientasi. Ini tidak perlu menambahkan gambar peluncuran. Ini hanya berarti memastikan semua kotak dicentang di bawah orientasi perangkat dalam pengaturan proyek umum. Mungkin Anda menyiratkan bahwa dengan menyarankan perbaikan adalah "termasuk gambar peluncuran atau storyboard untuk semua jenis layar perangkat" , tetapi seperti yang saya katakan, tidak sepadat jawaban yang secara eksplisit memberi tahu Anda sebanyak itu.
dcow
@dcow OP adalah tentang menyelesaikan peringatan saja, tidak bertanya tentang bagaimana mendukung multi-window. Karena multi-jendela hanya berfungsi dengan baik pada resolusi asli, Anda benar bahwa gambar peluncuran harus diunggah untuk semua jenis layar perangkat dan semua orientasi yang digunakan harus dicentang. Saya masih tidak mendapatkan apa masalah asli Anda dengan jawaban saya, karena sebagian besar pengguna hanya ingin tahu arti Membutuhkan Layar Penuh dan / atau bagaimana cara menghilangkan peringatan.
Simon Tillson
62

Buka saja target Anda, klik tab "Umum", cari bagian "Info Penempatan", periksa "Membutuhkan layar penuh". :)

Sangat mudah, bukan?

BTW, ini bukan solusi terbaik. Akan ada semakin banyak solusi yang lebih baik. Tetapi ketika saya menjawab pertanyaan ini, saya hanya berpikir bagaimana cara membunuh peringatan. Saya tidak menjelaskan mengapa melakukan ini tetapi bagaimana menyelesaikannya. Versi beta Xcode mungkin mengubah fitur-fiturnya, jadi saya hanya memberikan "solusi" pada saat itu awal. Jadi, jika menurut Anda solusi saya adalah solusi, harap pilih jawaban yang lebih baik. Tapi ini bukan alasan untuk memilih. Terima kasih :)

YangXiaoyu
sumber
15
Ini jelas bukan solusi, hanya solusi setengah matang. Dengan hormat, saya tidak setuju dengan jawaban Anda.
kbpontius
Solusi lain adalah periksa semua "Orientasi Perangkat" di tempat yang sama dan berikan file xib atau storyboard alih-alih file gambar. Terkadang kita harus membuat pilihan: centang "Memerlukan layar penuh" atau semua dalam "Orientasi Perangkat". Karena kami diminta melakukan ini dengan Xcode. :)
YangXiaoyu
6
@ kpont Apa sebenarnya yang Anda harapkan sebagai solusi? Jepret ajaib jari untuk menghapus peringatan? Xcode 7 memiliki metadata tambahan yang dibutuhkan, dan Anda harus menyediakannya. Jika Anda merasa ini adalah kesalahan, apakah Anda membuka laporan bug dengan Apple?
Leo Natan
6
Solusinya valid dalam konteks "aplikasi saya dibangun dan berjalan dengan baik kemarin, tapi hari ini Xcode melempar peringatan." Jelas, Apple ingin setiap pengembang memperbarui setiap aplikasi untuk berjalan dengan setiap fitur diaktifkan. Namun, "di sini di dunia nyata", kadang-kadang kita hanya perlu mendorong perbaikan bug atau membangun jenis berikutnya, dan berurusan dengan lanskap Apple yang terus berubah di kemudian hari. Solusinya valid. Demikian juga, konsep menambahkan xibs / storyboard untuk mendukung orientasi adalah valid. Yay!
Olie
4
"Solusi setengah matang" di mana Apple menambahkan kotak centang di bawah Pengaturan umum ...
Rivera
11

Saya baru saja melihat kesalahan ini dan setelah membaca komentar, saya pasti ingin mendukung iPad dan penggunaan multi-jendela. Ini sesederhana memeriksa opsi Orientasi Perangkat "Kiri Lansekap" dan "Lansung Kanan" dan memastikan bahwa UI saya mendukung ini.

Cara terbaik yang saya temukan untuk menguji dukungan multi-jendela yang baik adalah dengan menggunakan simulator yang dapat diubah ukurannya, atau lebih baik menurut saya, menggunakan iPad Pro di XCode 7.1 dan benar-benar mengaktifkan fitur multi-jendela dengan menyeret dari kanan. Setelah mengambil langkah-langkah ini, saya aplikasi saya mendukung fitur-fitur ini dan saya dapat dengan cepat melihat apa yang perlu saya perbarui atau optimalkan untuk mendukung mereka sepenuhnya.

d2burke
sumber
"Cara terbaik yang saya temukan untuk menguji dukungan multi-jendela yang baik adalah dengan menggunakan simulator yang dapat diubah ukurannya, atau IMO yang lebih baik, gunakan iPad Pro di XCode 7.1 dan sebenarnya aktifkan fitur multi-jendela dengan menyeret dari kanan." Ini benar-benar jawaban, dalam nada percakapan. Anda bisa mengklarifikasi dalam komentar Anda sebelum memilih.
d2burke
Poin bagusnya, saya ketinggalan gaya percakapan. Saya minta maaf. Tetapi Anda mungkin ingin menulis ulang - saya melewatkannya pertama kali, dan saya seorang penutur asli.
Abizern
Saya mengerti :) Terima kasih sudah responsif. Saya akan memperbaruinya sekarang.
d2burke
2
INI adalah jawaban yang sebenarnya untuk pertanyaan ini. Terima kasih!
Aviel Gross
terbalik tidak dicentang untuk saya. mengaktifkannya menghilangkan peringatan. Saya juga berpikir ini adalah jawaban yang tepat
neelabh
8

Secara default Orientasi Perangkat hanya mengaktifkan Portrait, Landscape Left, dan Landscape Right. Anda perlu mengaktifkan Upside Down juga.

masukkan deskripsi gambar di sini

CosmicMind
sumber
3

"Bersihkan Bangun Folder" dan bangun kembali

Saya mendapat All interface orientations must be supported unless the app requires full screen.pesan hari ini di Xcode 7.3.1, tampaknya tanpa alasan, tidak ada perubahan terkait yang saya buat.

  • Saya lakukan memilikiLaunchScreen.storyboard
  • Saya belum memeriksa Requires full screen.

Saya mencoba manuver biasa ketika Xcode membuat saya bingung tentang beberapa-kesalahan-baru-untuk-tidak-alasan-baik:

  1. Tahan tombol Option sambil mengklik Productmenu.
  2. Pilih Clean Build Folder( bukan Clean ).
  3. Pilih Product> Build.

Tidak ada lagi masalah. Setelah beberapa sesi build-and-run lagi, pesan kesalahan belum muncul kembali.

Basil Bourque
sumber
0

Sudahkah Anda memberikan "Luncurkan Storyboard" untuk aplikasi Anda? Atau apakah Anda baru saja menyediakan gambar statis untuk berbagai ukuran.

Periksa di sini: https://developer.apple.com/library/prerelease/ios/documentation/UserExperience/Conceptual/MobileHIG/LaunchImages.html

cigiggin
sumber
Saya menggunakan gambar peluncuran, bukan papan cerita peluncuran. Saya pikir storyboard peluncuran itu opsional. Saya kira itu sangat disarankan untuk menggunakan storyboard peluncuran daripada gambar peluncuran di Xcode 7, itu sebabnya peringatan? Versi aplikasi yang sekarang telah disetujui oleh Apple, saya kira saya akan menyertakan storyboard peluncuran di versi berikutnya di mana waktu Xcode 7 sudah akan dirilis ke publik. Terima kasih
bachma0507
Saya mengalami masalah yang sama, jadi hanya untuk mengonfirmasi @cbiggin - Anda perlu memiliki storyboard peluncuran untuk menghilangkan kesalahan ini?
amitsbajaj
Tidak dapat mengonfirmasi hal itu, hanya apa yang saya teorikan mungkin menyebabkan masalah. Coba tambahkan Peluncuran Storyboard dan lihat apakah itu hilang. Jika ya, maka pilih jawaban saya :)
cbiggin
1
perlu diingat bahwa Anda hanya dapat menggunakan papan cerita peluncuran untuk ios> = 8
troppoli
0

Setel UIRequiresFullScreen ke YES di Info.plist. Dan centang Memerlukan layar penuh .masukkan deskripsi gambar di sini

Prasad Patil
sumber