Dukungan browser

Patrick Kettner
Patrick Kettner

Tab Khusus adalah opsi yang bagus untuk membuat pengalaman browser yang disesuaikan secara langsung di dalam aplikasi Anda, namun Tab Khusus bukanlah hal yang tunggal. Dibuat berdasarkan sistem Intent, Tab Khusus adalah kumpulan permintaan opsi yang dapat dikonfigurasi yang dikirim ke browser pilihan pengguna akhir. Masing-masing browser bebas mengimplementasikan berbagai opsi tersebut. Ketersediaan fitur Tab Khusus dapat bervariasi di antara browser Android karena perbedaan penerapan.

Berikut ini adalah perbandingan beberapa browser dalam ekosistem Android. Sebagian besar browser di Android memiliki tingkat dukungan tertentu. Tabel tersebut tidak lengkap, tetapi menggambarkan tingkat dukungan yang kemungkinan 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 dengan aplikasi Anda secara lancar melalui kumpulan metode bawaan, yang tercantum di bawah ini.

addDefaultShareMenuItem()

addDefaultShareMenuItem() menambahkan tombol berbagi default ke toolbar Tab Khusus, sehingga pengguna dapat membagikan 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()

Memungkinkan bilah URL 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 kustom 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 ponsel terpisah tanpa API

setColorScheme()

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

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

setColorSchemeParams()

Menetapkan skema warna yang harus diterapkan pada 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()

Menyetel apakah item berbagi default ditambahkan ke menu atau tidak.

setExitAnimations()

Menyetel animasi keluar.

setInitialActivityHeightPx()

Menetapkan tinggi awal Aktivitas Tab Khusus dalam piksel dengan perilaku pengubahan ukuran default. Tab Khusus akan berperilaku sebagai sheet bawah. Tab ini sering disebut sebagai Tab Khusus parsial.

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 ponsel terpisah tanpa API

setStartAnimations()

Menetapkan animasi awal.

setToolbarColor()

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

setToolbarCornerRadiusDp()

Menetapkan radius sudut atas toolbar dalam dp.

setUrlBarHidingEnabled()

Tetapkan 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 pemanasan proses browser.

CustomTabsSession

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

setEngagementSignalsCallback()

Menyetel 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 di masa mendatang ke URL. URL yang paling mungkin harus ditentukan terlebih dahulu. Secara opsional, daftar kemungkinan URL lainnya dapat diberikan. Item tersebut diperlakukan sebagai lebih kecil kemungkinannya dibandingkan yang pertama, dan harus diurutkan dalam urutan prioritas yang menurun. URL tambahan berikut mungkin diabaikan. Semua panggilan sebelumnya ke metode ini tidak akan diprioritaskan.