PWA dapat menggunakan parameter "display_override" untuk menangani mode tampilan khusus.
Manifes aplikasi web adalah file JSON yang memberi tahu browser tentang Progresif Anda
Aplikasi Web dan perilakunya saat diinstal di desktop atau perangkat seluler pengguna.
Melalui properti display
, Anda dapat menyesuaikan UI browser yang akan ditampilkan saat aplikasi diluncurkan. Misalnya, Anda dapat menyembunyikan
kolom URL dan chrome browser. Game bahkan dapat dijalankan untuk mengaktifkan layar penuh.
Sebagai rangkuman singkat, di bawah ini adalah mode tampilan yang ditentukan pada saat artikel ini ditulis.
Properti | Penggunaan |
---|---|
fullscreen |
Membuka aplikasi web tanpa UI browser apa pun dan menggunakan keseluruhan area tampilan yang tersedia. |
standalone |
Membuka aplikasi web agar terlihat dan terasa seperti mandiri . Aplikasi berjalan di jendelanya sendiri, terpisah dari browser, dan menyembunyikan elemen UI {i>browser<i} standar seperti bilah URL. |
minimal-ui |
Mode ini mirip dengan standalone , tetapi memberikan
kepada pengguna serangkaian elemen UI minimal untuk mengontrol navigasi (seperti
sebagai kembali dan muat ulang).
|
browser |
Pengalaman browser standar. |
Mode tampilan ini mengikuti rantai penggantian yang didefinisikan dengan baik
("fullscreen"
→ "standalone"
→ "minimal-ui"
→ "browser"
). Jika browser tidak mendukung
mode tampilan akan kembali ke mode tampilan
berikutnya dalam rantai tersebut.
Kekurangan properti display
Masalah dengan pendekatan rantai penggantian bawaan ini memiliki tiga jenis:
- Developer tidak dapat meminta
"minimal-ui"
tanpa dipaksa kembali ke mode tampilan"browser"
jika"minimal-ui"
tidak didukung oleh browser tertentu. - Developer tidak memiliki cara untuk menangani perbedaan lintas browser, misalnya jika browser menyertakan atau mengecualikan tombol kembali di jendela untuk mode
"standalone"
. - Perilaku saat ini tidak memungkinkan peluncuran layar baru dengan cara yang kompatibel dengan versi sebelumnya, karena eksplorasi seperti mode aplikasi tab tidak memiliki alami dalam rantai penggantian.
Properti display_override
Masalah ini diselesaikan dengan properti display_override
, yang dianggap browser sebelum
properti display
. Nilainya adalah urutan {i>string<i} yang dianggap berurutan, dan
mode tampilan pertama yang didukung akan diterapkan. Jika tidak ada yang didukung, browser akan kembali mengevaluasi
kolom display
.
Pada contoh di bawah, rantai penggantian mode tampilan akan menjadi sebagai berikut.
(Detail "window-controls-overlay"
berada di luar cakupan artikel ini.)
"window-controls-overlay"
(Pertama, lihatdisplay_override
.)"minimal-ui"
"standalone"
(Saatdisplay_override
habis, evaluasidisplay
.)"minimal-ui"
(Terakhir, gunakan rantai penggantiandisplay
.)"browser"
{
"display_override": ["window-controls-overlay", "minimal-ui"],
"display": "standalone",
}
Agar tetap kompatibel dengan versi sebelumnya, mode tampilan mendatang hanya akan dapat diterima sebagai nilai
display_override
, tetapi bukan display
.
Browser yang tidak mendukung display_override
akan kembali ke properti display
dan mengabaikannya
display_override
sebagai properti manifes aplikasi web yang tidak diketahui.
Link penting
- Penjelasan
- Rencana untuk Mengirimkan rangkaian pesan
- Bug Chromium
- Entri Status Chrome
- Repositori Inkubasi Manifes
Ucapan terima kasih
Properti display_override
diformalkan oleh
Daniel Murphy.