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.
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.
setCloseButtonIcon()
Menetapkan tombol tutup kustom yang ditampilkan di toolbar.
setCloseButtonPosition()
Menyetel ikon tombol Tutup untuk tab khusus.
setColorScheme()
Menetapkan skema warna yang harus diterapkan pada antarmuka pengguna di tab khusus.
setColorSchemeParams()
Menetapkan skema warna yang harus diterapkan pada antarmuka pengguna di tab khusus.
setDefaultColorSchemeParams()
Menetapkan CustomTabColorSchemeParams()
untuk skema warna yang ditentukan. Hal ini memungkinkan penentuan dua warna toolbar yang berbeda untuk skema terang dan gelap.
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.
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.
setShowTitle()
Menetapkan apakah judul harus ditampilkan di tab khusus.
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.