Supporto del browser

Patrick Kettner
Patrick Kettner

Le schede personalizzate sono un'ottima opzione per creare un'esperienza di navigazione personalizzata direttamente all'interno della tua app, ma non sono un elemento unico. Realizzate sulla base del sistema di intent, le schede personalizzate sono una raccolta di richieste di opzioni configurabili che vengono inviate al browser preferito dell'utente finale. Spetta a ciascun browser implementare le varie opzioni. La disponibilità delle funzionalità delle schede personalizzate può variare tra i browser Android a causa di differenze di implementazione.

Di seguito è riportato un confronto tra alcuni browser nell'ecosistema Android. La maggior parte dei browser su Android ha un certo livello di supporto. Le tabelle non sono pensate per essere esaustive, ma illustrano il livello di supporto che probabilmente vedrai. Dovresti cercare i browser predefiniti degli utenti che utilizzano la tua app e assicurarti di utilizzare la programmazione in modo difensivo.

CustomTabsIntent.Builder

CustomTabsIntent.Builder crea schede personalizzate. Hai a disposizione diversi modi per configurare la tua scheda personalizzata in modo che si integri nel modo più perfettamente possibile con la tua app tramite una raccolta di metodi integrati elencati di seguito.

addDefaultShareMenuItem()

addDefaultShareMenuItem() aggiunge un pulsante di condivisione predefinito alla barra degli strumenti Schede personalizzate, consentendo all'utente di condividere la pagina web corrente tramite varie app sul proprio dispositivo.

addMenuItem()

Aggiunge una voce del menu.

A sinistra, un telefono su cui è mostrata un'app che utilizza addMenuItem() e a destra un telefono separato senza l'API

addToolbarItem()

Aggiunge un pulsante di azione alla scheda personalizzata. Con questo metodo è possibile aggiungere più pulsanti.

enableUrlBarHiding()

Consente di nascondere la barra degli URL quando l'utente scorre la pagina verso il basso.

setActionButton()

Imposta il pulsante di azione visualizzato nella barra degli strumenti con il comportamento di colorazione predefinito.

A sinistra, un telefono su cui è mostrata un'app che utilizza setActionButton()() e a destra un telefono separato senza l'API

setCloseButtonIcon()

Imposta un pulsante di chiusura personalizzato che viene visualizzato nella barra degli strumenti.

A sinistra, un telefono su cui è mostrata un'app che utilizza setCloseButtonIcon() e a destra un telefono separato senza l'API

setCloseButtonPosition()

Imposta l'icona del pulsante Chiudi per la scheda personalizzata.

A sinistra, un telefono su cui è mostrata un'app che utilizza setCloseButtonPosition() e a destra un telefono separato senza l'API

setColorScheme()

Imposta la combinazione di colori da applicare all'interfaccia utente nella scheda personalizzata.

A sinistra, un telefono su cui è mostrata un'app che utilizza setColorScheme() e a destra un telefono separato senza l'API

setColorSchemeParams()

Imposta la combinazione di colori da applicare all'interfaccia utente nella scheda personalizzata.

A sinistra, un telefono su cui è mostrata un'app che utilizza setColorSchemeParams() e a destra un telefono separato senza l'API

setDefaultColorSchemeParams()

Imposta CustomTabColorSchemeParams() per la combinazione di colori specificata. Ciò consente di specificare due diversi colori della barra degli strumenti per gli schemi chiari e scuri.

A sinistra, un telefono su cui è mostrata un'app che utilizza setDefaultColorSchemeParams() e a destra un telefono separato senza l'API

setDefaultShareMenuItemEnabled()

Consente di stabilire se aggiungere o meno al menu un elemento di condivisione predefinito.

setExitAnimations()

Consente di impostare eventuali animazioni di uscita.

setInitialActivityHeightPx()

Imposta l'altezza iniziale in pixel dell'Attività scheda personalizzata con il comportamento di ridimensionamento predefinito. La Scheda personalizzata si comporterà come un riquadro inferiore. Questa scheda viene spesso denominata Scheda personalizzata parziale.

A sinistra, un telefono che mostra un'app che utilizza setInitialActivityHeightPx() e a destra un telefono separato senza l'API

setNavigationBarColor()

Imposta il colore della barra di navigazione. Non avrà alcun effetto sulle versioni dell'API precedenti alla L.

setNavigationBarDividerColor()

setSecondaryToolbarColor()

Imposta il colore della barra degli strumenti secondaria.

setShareState()

Imposta lo stato di condivisione che deve essere applicato alla scheda personalizzata.

A sinistra, un telefono su cui è mostrata un'app che utilizza setShareState() e a destra un telefono separato senza l'API

setShowTitle()

Consente di impostare se il titolo deve essere visualizzato nella scheda personalizzata.

A sinistra, un telefono su cui è mostrata un'app che utilizza setShowTitle() e a destra un telefono separato senza l'API

setStartAnimations()

Imposta le animazioni di avvio.

setToolbarColor()

Imposta il colore della barra degli strumenti. Su Android L e versioni successive, questo colore viene applicato anche alla barra di stato.

setToolbarCornerRadiusDp()

Imposta i raggi degli angoli superiori della barra degli strumenti in dp.

setUrlBarHidingEnabled()

Consente di impostare se la barra dell'URL deve nascondersi quando l'utente scorre la pagina verso il basso.

CustomTabsClient

CustomTabsClient è un corso facoltativo per comunicare con una CustomTabsService e creare CustomTabsSession a partire da questo.

riscaldamento (())

Riscalda il processo del browser.

CustomTabsSession

CustomTabsSession è una classe facoltativa che puoi fornire a un'istanza di CustomTabsIntent.Builder(). Se utilizzata, puoi utilizzarla per gestire qualsiasi comunicazione con la Scheda personalizzata.

setEngagementSignalsCallback()

Imposta un EngagementSignalsCallback per ricevere callback per eventi correlati al coinvolgimento dell'utente con la pagina web all'interno della scheda.

isEngagementSignalsApiAvailable()

Indica se l'API Engagement Signals è disponibile. La disponibilità dell'API Engagement Signals potrebbe variare in fase di runtime.

MayLaunchUrl()

Comunica al browser una probabile navigazione futura verso un URL. L'URL più probabile deve essere specificato per primo. Facoltativamente, è possibile fornire un elenco di altri URL probabili. Vengono trattate come meno probabili della prima e devono essere ordinate in ordine di priorità decrescente. Questi URL aggiuntivi potrebbero essere ignorati. La priorità di tutte le chiamate precedenti a questo metodo verrà ridotta.