瀏覽器支援

Patrick Kettner
Patrick Kettner

使用自訂分頁是直接在應用程式中建立自訂瀏覽器體驗的好方法,但這些分頁並非單一功能。自訂分頁以意圖系統為基礎,是一組可設定的選項要求,系統會將這些要求傳送到使用者偏好的瀏覽器。每種瀏覽器可自行決定是否要實作各種選項。由於實作方式的差異,自訂分頁功能可能因 Android 瀏覽器而異。

以下比較 Android 生態系統中的「部分」瀏覽器。絕大多數 Android 瀏覽器都能提供一定程度的支援。這份表格並未涵蓋所有可能情況,而是用以說明您可能看到的支援服務等級。建議您研究「您的應用程式」使用者的預設瀏覽器,確認編碼方式符合規範。

CustomTabsIntent.Builder

CustomTabsIntent.Builder 可建立「自訂分頁」。您可以透過下列多種內建方法設定自訂分頁,盡可能與您的應用程式完美融合。

addDefaultShareMenuItem()

addDefaultShareMenuItem() 會在「自訂分頁」工具列新增預設分享按鈕,讓使用者可以透過裝置上的各種應用程式分享目前的網頁。

addMenuItem()

新增選單項目。

左側手機顯示使用 addMenuItem() 的應用程式,右側是一部沒有 API 的手機

addToolbarItem()

在自訂分頁中新增動作按鈕。您可以透過這個方法新增多個按鈕。

enableUrlBarHiding()

啟用網址列,在使用者向下捲動網頁時隱藏。

setActionButton()

設定工具列顯示的動作按鈕,採用預設色調。

左側有一部手機顯示使用 setActionButton()() 的應用程式,右側是另一支手機,手機不顯示 API

setCloseButtonIcon()

設定工具列中顯示的自訂關閉按鈕。

左側有一部手機顯示使用 setCloseButtonIcon() 的應用程式,右側是另一支手機,手機則沒有 API

setCloseButtonPosition()

設定自訂分頁的「關閉」按鈕圖示。

左側有一部手機顯示了使用 setCloseButtonPosition() 的應用程式,右側則顯示沒有 API 的手機

setColorScheme()

設定應套用至自訂分頁中使用者介面的色彩配置。

左側有一部手機顯示了使用 setColorScheme() 的應用程式,右側則是另一支手機,手機不顯示這個 API

setColorSchemeParams()

設定應套用至自訂分頁中使用者介面的色彩配置。

左側有一部手機顯示了使用 setColorSchemeParams() 的應用程式,右側則是另一支手機,手機則沒有 API

setDefaultColorSchemeParams()

設定指定色彩配置的 CustomTabColorSchemeParams()。這項設定可讓您為淺色和深色配置指定兩種不同的工具列顏色。

左側有一部手機顯示使用 setDefaultColorSchemeParams() 的應用程式,右側則顯示未安裝 API 的應用程式

setDefaultShareMenuItemEnabled()

設定是否要將預設共用項目新增至菜單。

setExitAnimations()

設定任何結束動畫。

setInitialActivityHeightPx()

使用預設的調整大小行為,設定自訂分頁活動的初始高度 (以像素為單位)。自訂分頁會以底部功能表運作。這通常稱為「自訂分頁」的一部分。

左側手機顯示使用 setInitialActivityHeightPx() 的應用程式,右側手機則顯示沒有 API 的應用程式

setNavigationBarColor()

設定導覽列的顏色。不會影響 L 以下的 API 版本。

setNavigationBarDividerColor()

setSecondaryToolbarColor()

設定次要工具列的顏色。

setShareState()

設定應套用至自訂分頁的共用狀態。

左側手機顯示使用 setShareState() 的應用程式,右側手機則顯示沒有 API

setShowTitle()

設定是否應在自訂分頁中顯示標題。

左側手機顯示使用 setShowTitle() 的應用程式,右側手機則顯示沒有 API 的應用程式

setStartAnimations()

設定開始動畫。

setToolbarColor()

設定工具列顏色。在 Android L 以上版本,狀態列也會套用這個顏色。

setToolbarCornerRadiusDp()

設定工具列的頂端角落半徑 (以 dp 為單位)。

setUrlBarHidingEnabled()

設定是否在使用者向下捲動網頁時隱藏網址列。

CustomTabsClient

CustomTabsClient 是選用類別,可用來與 CustomTabsService 通訊,以及建立 CustomTabsSession

暖 up()

啟動瀏覽器處理程序。

CustomTabsSession

CustomTabsSession 是您可以提供給 CustomTabsIntent.Builder() 執行個體的選用類別。使用這個類別後,您就可以使用這個類別處理與「自訂」分頁之間的任何通訊。

setEngagementSignalsCallback()

設定 EngagementSignalsCallback,以便接收與使用者在分頁中與網頁互動相關的事件回呼。

isEngagementSignalsApiAvailable()

傳回 Engagement Signals API 是否可用。Engagement Signals API 的可用性可能會在執行階段變更。

啟動網址()

告知瀏覽器未來可能會前往某個網址。請先指定最有可能的網址。您也可以選擇提供其他可能網址的清單。其優先順序低於第一組,且必須依優先順序遞減排序。這些額外的網址可能會遭到忽略。系統會優先處理先前對這個方法發出的所有呼叫。