Dukungan browser

Patrick Kettner
Patrick Kettner

Tab Khusus adalah opsi yang bagus untuk membuat pengalaman browser yang disesuaikan langsung di dalam aplikasi Anda, tetapi bukan sesuatu yang tunggal. Dikembangkan di atas sistem Intent, Tab Khusus adalah kumpulan permintaan opsi yang dapat dikonfigurasi yang dikirim ke browser pilihan pengguna akhir. Masing-masing browser bebas menerapkan berbagai opsi. Ketersediaan fitur Tab Khusus dapat bervariasi di antara browser Android karena perbedaan implementasi.

Berikut adalah perbandingan beberapa browser dalam ekosistem Android. Sebagian besar browser di Android memiliki tingkat dukungan tertentu. Tabel ini tidak dimaksudkan untuk lengkap, tetapi menggambarkan tingkat dukungan yang mungkin Anda lihat. Anda harus meneliti browser default yang digunakan orang yang menggunakan aplikasi Anda, dan pastikan melakukan coding secara defensif.

CustomTabsIntent.Builder

CustomTabsIntent.Builder membuat Tab Khusus. Anda memiliki sejumlah cara untuk mengonfigurasi tab kustom agar dapat menyatu senyaman mungkin dengan aplikasi Anda melalui sekumpulan metode bawaan, yang tercantum di bawah ini.

addDefaultShareMenuItem()

addDefaultShareMenuItem() menambahkan tombol berbagi default ke toolbar Tab Khusus, sehingga pengguna dapat berbagi halaman web saat ini melalui berbagai aplikasi di perangkat mereka.

addMenuItem()

Menambahkan item menu.

Di sebelah kiri, ponsel menampilkan aplikasi menggunakan addMenuItem(), dan di sebelah kanan ponsel terpisah tanpa API

addToolbarItem()

Menambahkan tombol tindakan ke tab kustom. Beberapa tombol dapat ditambahkan melalui metode ini.

enableUrlBarHiding()

Mengaktifkan kolom URL untuk disembunyikan saat pengguna men-scroll halaman ke bawah.

setActionButton()

Menetapkan tombol tindakan yang ditampilkan di toolbar dengan perilaku penambahan tint default.

Di sebelah kiri, ponsel menampilkan aplikasi menggunakan setActionButton()(), dan di sebelah kanan ponsel terpisah tanpa API

setCloseButtonIcon()

Menetapkan tombol tutup khusus yang ditampilkan di toolbar.

Di sebelah kiri, ponsel menampilkan aplikasi menggunakan setCloseButtonIcon(), dan di sebelah kanan ponsel terpisah tanpa API

setCloseButtonPosition()

Menyetel ikon tombol Tutup untuk tab khusus.

Di sebelah kiri, ponsel menampilkan aplikasi menggunakan setCloseButtonPosition(), dan di sebelah kanan adalah ponsel terpisah tanpa API

setColorScheme()

Menetapkan skema warna yang harus diterapkan ke antarmuka pengguna di tab khusus.

Di sebelah kiri, ponsel yang menampilkan aplikasi menggunakan setColorScheme(), dan di sebelah kanan ponsel terpisah tanpa API

setColorSchemeParams()

Menetapkan skema warna yang harus diterapkan ke antarmuka pengguna di tab khusus.

Di sebelah kiri, ponsel yang menampilkan aplikasi menggunakan setColorSchemeParams(), dan di sebelah kanan ponsel terpisah tanpa API

setDefaultColorSchemeParams()

Menetapkan CustomTabColorSchemeParams() untuk skema warna yang ditentukan. Hal ini memungkinkan penentuan dua warna toolbar yang berbeda untuk skema terang dan gelap.

Di sebelah kiri, ponsel yang menampilkan aplikasi menggunakan setDefaultColorSchemeParams(), dan di sebelah kanan ponsel terpisah tanpa API

setDefaultShareMenuItemEnabled()

Menetapkan apakah item berbagi default ditambahkan ke menu.

setExitAnimations()

Menetapkan semua animasi keluar.

setInitialActivityHeightPx()

Menyetel tinggi awal Aktivitas Tab Khusus dalam piksel dengan perilaku perubahan ukuran default. Tab Khusus akan berperilaku sebagai sheet bawah. Hal ini sering disebut sebagai Tab Khusus sebagian.

Di sebelah kiri, ponsel menampilkan aplikasi menggunakan setInitialActivityHeightPx(), dan di sebelah kanan ponsel terpisah tanpa API

setNavigationBarColor()

Menetapkan warna menu navigasi. Tidak berpengaruh pada versi API di bawah L.

setNavigationBarDividerColor()

setSecondaryToolbarColor()

Menetapkan warna toolbar sekunder.

setShareState()

Menetapkan status berbagi yang harus diterapkan ke tab khusus.

Di sebelah kiri, ponsel menampilkan aplikasi menggunakan setShareState(), dan di sebelah kanan ponsel terpisah tanpa API

setShowTitle()

Menetapkan apakah judul harus ditampilkan di tab khusus.

Di sebelah kiri, ponsel menampilkan aplikasi menggunakan setShowTitle(), dan di sebelah kanan adalah ponsel terpisah tanpa API

setStartAnimations()

Menetapkan animasi awal.

setToolbarColor()

Menetapkan warna toolbar. Di Android L dan yang lebih baru, warna ini juga diterapkan pada status bar.

setToolbarCornerRadiusDp()

Menetapkan radius sudut atas toolbar dalam dp.

setUrlBarHidingEnabled()

Tentukan apakah kolom URL harus disembunyikan saat pengguna men-scroll halaman ke bawah.

CustomTabsClient

CustomTabsClient adalah class opsional untuk berkomunikasi dengan CustomTabsService dan membuat CustomTabsSession dari class tersebut.

warmup()

Lakukan persiapan untuk proses browser.

CustomTabsSession

CustomTabsSession adalah class opsional yang dapat Anda berikan ke instance CustomTabsIntent.Builder(). Saat digunakan, Anda dapat menggunakan class ini untuk menangani komunikasi apa pun dengan Tab Khusus.

setEngagementSignalsCallback()

Menetapkan EngagementSignalsCallback untuk menerima callback untuk peristiwa yang terkait dengan engagement pengguna dengan halaman web dalam tab.

isEngagementSignalsApiAvailable()

Menampilkan apakah Engagement Signals API tersedia. Ketersediaan Engagement Signals API dapat berubah saat runtime.

mayLaunchUrl()

Memberi tahu browser tentang kemungkinan navigasi ke URL di masa mendatang. URL yang paling mungkin harus ditentukan terlebih dahulu. Secara opsional, daftar kemungkinan URL lainnya dapat diberikan. Eksperimen diperlakukan lebih kecil kemungkinannya daripada yang pertama, dan harus diurutkan dalam urutan prioritas menurun. URL tambahan ini dapat diabaikan. Semua panggilan sebelumnya ke metode ini akan diturunkan prioritasnya.