浏览器
最新更新 | 稳定版 | 候选发布版 | Beta 版 | Alpha 版 |
---|---|---|---|---|
2025 年 5 月 20 日 | 1.8.0 | - | - | 1.9.0-alpha04 |
声明依赖项
要添加对 Browser 的依赖项,您必须将 Google Maven 代码库添加到您的项目中。如需了解详情,请阅读Google 的 Maven 代码库。
在应用的 build.gradle
文件或模块中添加所需工件的依赖项
Groovy
dependencies { implementation "androidx.browser:browser:1.8.0" }
Kotlin
dependencies { implementation("androidx.browser:browser:1.8.0") }
如需了解有关依赖项的更多信息,请参阅添加构建依赖项。
反馈
您的反馈有助于改进 Jetpack。如果您发现新问题或有改进此库的建议,请告诉我们。在创建新问题之前,请查看此库中的现有问题。您可以通过点击星形按钮为现有问题投票。
如需了解详情,请参阅问题跟踪器文档。
版本 1.9
版本 1.9.0-alpha04
2025 年 5 月 20 日
androidx.browser:browser:1.9.0-alpha04
已发布。版本 1.9.0-alpha04 包含这些提交。
API 更改
- 为自定义标签页添加了新的 Intent extra (I911e0)
- 为
TWADisplayMode
添加了Browser
和MiminalUi
模式 (I230b5) - 添加了临时浏览功能检查 API (I17d42)
- 移除
PendingSession
API 的实验性注解 (Id6fe3) - 添加了 Auth Tab 功能检查 API (Ifc029)
- 移除了自定义标签页最小化信号的实验性注解 (If2b44)
版本 1.9.0-alpha03
2025 年 4 月 23 日
androidx.browser:browser:1.9.0-alpha03
已发布。版本 1.9.0-alpha03 包含这些提交。
API 更改
- 从 Auth Tab 中移除了实验性注解。(I786ff)
版本 1.9.0-alpha02
2025 年 4 月 9 日
androidx.browser:browser:1.9.0-alpha02
已发布。版本 1.9.0-alpha02 包含这些提交。
新功能
API 更改
- 为
CustomTabsClient#createPendingAuthTabSession
添加了重载。(I71c3a) - 更新了 Auth Tab API (Iaf9b1)
TrustedWebActivityIntent
现在包含启动处理程序 API 客户端模式,允许浏览器使用此 API。(Ifc95c)TrustedWebActivityIntent
现在包含通过应用注册的 Intent 过滤器打开的文件 URI,并授予浏览器对这些文件的读写权限。(I2134a)TrustedWebActivityIntent
现在在其 extras 中包含原始启动的 URL,当协议处理程序使用时,为浏览器添加上下文。(I3759a)- 添加了一个新 API,用于启用/禁用自定义标签页的关闭按钮。(I35acd)
- 为 Auth Tab 添加了关闭按钮图标自定义支持 (Iaf877)
版本 1.9.0-alpha01
2025 年 1 月 29 日
androidx.browser:browser:1.9.0-alpha01
已发布。版本 1.9.0-alpha01 包含这些提交。
API 更改
- 为 Auth Tab 添加了浏览器连接/会话支持。(I6e47b)
- 添加了一个新 API
CustomTabsSession#isEphemeralBrowsingSupported
,用于确定是否支持临时浏览 (Ie4dea, b/384548523) - 为 Auth Tab API 添加了配色方案参数支持。(I630e1)
- 为自定义标签页添加了实验性临时浏览选项 (I9549d)
- 更新了实验性 Auth Tab API (I8b674)
- 添加了新 API,用于检查自定义标签页提供程序是否支持多网络。(I4307a)
- 添加了新的服务 Intent 过滤器类别以支持多网络。(I4354a)
- 添加了新 API,用于在通过自定义标签页启动 URL 时设置/获取绑定的网络。(I493e1)
- 添加了实验性 Auth Tab API (I9b4d4)
- 为
PendingSession
新增了实验性 API (Ib40e5)
错误修复
- 更新了 AuthTabIntent Javadoc (I2490c)
- 修复了 Auth Tab 中的会话支持问题 (I4e280)
- 此库现在使用JSpecify 空性注解,这些注解是类型用途的。Kotlin 开发者应使用以下编译器参数来强制正确使用:
-Xjspecify-annotations=strict
(这是 Kotlin 编译器 2.1.0 版及更高版本的默认设置)。(Ic7bf5, b/326456246) - 移除了对新平台 API 访问的手动概述,因为当 R8 与 AGP 7.3 或更高版本(例如 R8 3.3 版)结合使用时,以及当 AGP 8.1 或更高版本(例如 D8 8.1 版)用于所有构建时,这都会通过 API 建模自动发生。不使用 AGP 的客户端建议更新到 D8 8.1 版或更高版本。如需了解详情,请参阅本文。(I9496c, b/345472586)
外部贡献
- 引入新的 IPC 调用
ICustomTabsService#prefetchWithMultipleUrls
,以避免单个 URL 的多次 IPC 调用。(Ie5025) - 使
CustomTabsSession#prefetch
将CustomTabsSession
的会话id(mID)
传播到CustomTabsService
。(I4ec7b) - 添加一个新的实验性 API
CustomTabsSession#prefetch(List<Uri>, PrefetchOptions)
,它重载了现有 API 以接受多个 URL。(I54f35) - 添加了一个新的实验性 API
CustomTabsSession#prefetch(Uri, PrefetchOptions)
,它尝试预取主页面(不含子资源)以用于未来的导航。(I340cf)
版本 1.8
版本 1.8.0
2024 年 3 月 6 日
androidx.browser:browser:1.8.0
已发布。版本 1.8.0 包含这些提交。
自 1.7.0 以来的重要更改
- 添加了
CustomTabsIntent.Builder#setInitialActivityWidthPx
,允许开发者指定自定义标签页的初始启动宽度。(I443f6) - 添加了
CustomTabsIntent.Builder#setActivitySideSheetPosition
,允许开发者指定自定义标签页作为侧边栏时的位置。(I443f6) - 添加了
CustomTabsIntent.Builder#setActivitySideSheetDecorationType
,允许开发者指定自定义标签页作为侧边栏时的装饰类型。(I443f6) - 添加了
CustomTabsIntent.Builder#setActivitySideSheetRoundedCornersPosition
,允许开发者指定自定义标签页作为侧边栏时圆角的位置。(I443f6) - 添加了
CustomTabsIntent.Builder#setActivitySideSheetMaximizationEnabled
,允许开发者在自定义标签页作为侧边栏时启用或禁用最大化按钮。(Ie3564) - 在接口
CustomTabsCallback
中添加了onActivityLayout
回调方法,以便开发者了解自定义标签页所占区域的坐标及其显示状态。当自定义标签页首次显示在屏幕上以及每次所占区域更改时,都会调用此方法。(I443f6) - 在接口
CustomTabsCallback
中添加了onWarmupCompleted
回调方法,以便开发者了解CustomTabsClient#warmupfinishes
何时完成浏览器进程的预热。(I107cf) - 在
CustomTabsSession#setEngagementSignalsCallback
和CustomTabsSession#isEngagementSignalsApiAvailable
的 extras 中添加了会话 ID。(Iba7f1) - 添加了对最小化自定义标签页 API 的实验性支持。(I67f2d)
版本 1.8.0-rc01
2024 年 2 月 21 日
androidx.browser:browser:1.8.0-rc01
已发布,自 1.8.0-beta02 以来没有更改。版本 1.8.0-rc01 包含这些提交。
版本 1.8.0-beta02
2024 年 2 月 7 日
androidx.browser:browser:1.8.0-beta02
已发布。版本 1.8.0-beta02 包含这些提交。
API 更改
- 将
CustomTabsIntent.Builder#setActivitySideSheetEnableMaximization
重命名为CustomTabsIntent Builder#setActivitySideSheetMaximizationEnabled
并将其设为公共 API。它允许开发者在自定义标签页作为侧边栏时启用或禁用最大化按钮。(Ie3564)
版本 1.8.0-beta01
2023 年 11 月 29 日
androidx.browser:browser:1.8.0-beta01
已发布。版本 1.8.0-beta01 包含这些提交。
新功能
- 添加了对最小化自定义标签页 API 的实验性支持。(I67f2d)
版本 1.8.0-alpha01
2023 年 11 月 15 日
androidx.browser:browser:1.8.0-alpha01
已发布。版本 1.8.0-alpha01 包含这些提交。
新功能
- 添加了
CustomTabsIntent.Builder#setInitialActivityWidthPx
,允许开发者指定自定义标签页的初始启动宽度。(I443f6) - 添加了
CustomTabsIntent.Builder#setActivitySideSheetBreakpointDp
,允许开发者指定自定义标签页用作侧边栏所需的最小窗口宽度。(I443f6) - 添加了
CustomTabsIntent.Builder#setActivitySideSheetPosition
,允许开发者指定自定义标签页作为侧边栏时的位置。(I443f6) - 添加了
CustomTabsIntent.Builder#setActivitySideSheetEnableMaximization
,允许开发者在自定义标签页作为侧边栏时启用或禁用最大化按钮。(I443f6) - 添加了
CustomTabsIntent.Builder#setActivitySideSheetDecorationType
,允许开发者指定自定义标签页作为侧边栏时的装饰类型。(I443f6) - 添加了
CustomTabsIntent.Builder#setActivitySideSheetRoundedCornersPosition
,允许开发者指定自定义标签页作为侧边栏时圆角的位置。(I443f6) - 在接口
CustomTabsCallback
中添加了onActivityLayout
回调方法,以便开发者了解自定义标签页所占区域的坐标及其显示状态。当自定义标签页首次显示在屏幕上以及每次所占区域更改时,都会调用此方法。(I443f6) - 在接口
CustomTabsCallback
中添加了onWarmupCompleted
回调方法,以便开发者了解CustomTabsClient#warmup
何时完成浏览器进程的预热。(I107cf)
错误修复
- 在
CustomTabsSession#setEngagementSignalsCallback
和CustomTabsSession#isEngagementSignalsApiAvailable
的 extras 中添加了会话 ID。(Iba7f1)
版本 1.7
版本 1.7.0
2023 年 11 月 15 日
androidx.browser:browser:1.7.0
已发布。版本 1.7.0 包含这些提交。
自 1.6.0 以来的重要更改
- 添加了
CustomTabsIntent.Builder#setBookmarksButtonEnabled
,可在溢出菜单中启用书签按钮。(Ia792e) - 添加了
CustomTabsIntent.Builder#setDownloadButtonEnabled
,可在溢出菜单中启用下载按钮。(Ia792e) - 添加了
CustomTabsIntent.Builder#setSendToExtraDefaultHandlerEnabled
,可启用将初始 URL 发送到外部处理程序应用的功能。(Ia792e) - 添加了
CustomTabsIntent.Builder#setTranslateLanguage
,用于指定应触发翻译 UI 的目标语言。(Ia792e) - 添加了
CustomTabsIntent.Builder#setBackgroundInteractionEnabled
,可在启动部分自定义标签页时启用与后台应用的交互。(Ia792e) - 添加了
CustomTabsIntent.Builder#setShareIdentityEnabled
,允许自定义标签页获取调用者的身份。(I7bf2b) - 添加了
CustomTabsIntent.Builder#setSecondaryToolbarSwipeUpGesture
,用于设置当用户从底部工具栏向上滑动时要发送的PendingIntent
。(Id42a2)
版本 1.7.0-rc01
2023 年 11 月 1 日
androidx.browser:browser:1.7.0-rc01
已发布,无任何更改。版本 1.7.0-rc01 包含这些提交。
- 自 alpha-01 以来无更改
版本 1.7.0-beta01
2023 年 10 月 18 日
androidx.browser:browser:1.7.0-beta01
已发布,无任何更改。版本 1.7.0-beta01 包含这些提交。
版本 1.7.0-alpha01
2023 年 10 月 4 日
androidx.browser:browser:1.7.0-alpha01
已发布。版本 1.7.0-alpha01 包含这些提交。
新功能
- 添加了
CustomTabsIntent.Builder#setBookmarksButtonEnabled
,可在溢出菜单中启用书签按钮。(Ia792e) - 添加了
CustomTabsIntent.Builder#setDownloadButtonEnabled
,可在溢出菜单中启用下载按钮。(Ia792e) - 添加了
CustomTabsIntent.Builder#setSendToExtraDefaultHandlerEnabled
,可启用将初始 URL 发送到外部处理程序应用的功能。(Ia792e) - 添加了
CustomTabsIntent.Builder#setTranslateLanguage
,用于指定应触发翻译 UI 的目标语言。(Ia792e) - 添加了
CustomTabsIntent.Builder#setBackgroundInteractionEnabled
,可在启动部分自定义标签页时启用与后台应用的交互。(Ia792e) - 添加了
CustomTabsIntent.Builder#setShareIdentityEnabled
,允许自定义标签页获取调用者的身份。(I7bf2b) - 添加了
CustomTabsIntent.Builder#setSecondaryToolbarSwipeUpGesture
,用于设置当用户从底部工具栏向上滑动时要发送的PendingIntent
。(Id42a2)
版本 1.6
版本 1.6.0
2023 年 8 月 9 日
androidx.browser:browser:1.6.0
已发布,自 1.6.0-rc01 以来没有更改。版本 1.6.0 包含这些提交。
版本 1.6.0-rc01
2023 年 7 月 26 日
androidx.browser:browser:1.6.0-rc01
已发布,自 1.6.0-beta01 以来没有更改。版本 1.6.0-rc01 包含这些提交。
版本 1.6.0-beta01
2023 年 6 月 21 日
androidx.browser:browser:1.6.0-beta01
已发布,自 1.6.0-alpha02 以来没有更改。版本 1.6.0-beta01 包含这些提交。
版本 1.6.0-alpha02
2023 年 6 月 7 日
androidx.browser:browser:1.6.0-alpha02
已发布。版本 1.6.0-alpha02 包含这些提交。
API 更改
- 移除了
CustomTabsSession#getGreatestScrollPercentage
。(I6c5ba) - 添加了一个新的
requestPostMessageChannel
API,允许指定目标来源。这意味着用户可以确定他们的消息只发送到他们预期的网站。(Id5b7f)
错误修复
- 更新了
EngagementSignalsCallback
文档。(Ie833c)
版本 1.6.0-alpha01
2023 年 5 月 3 日
androidx.browser:browser:1.6.0-alpha01
已发布。版本 1.6.0-alpha01 包含这些提交。
新功能
- 添加了用户互动信号 API,允许开发者接收网页上用户互动(例如滚动)的回调。(I835e6)
API 更改
- 更新了用户互动信号 API,以简化自定义标签页实现端的 API 表面。(Iaa6dc)
版本 1.5
版本 1.5.0
2023 年 2 月 8 日
androidx.browser:browser:1.5.0
已发布。版本 1.5.0 包含这些提交。
自 1.4.0 以来的重要更改
- 添加了
CustomTabsIntent.Builder#setInitialActivityHeightPx
,允许开发者指定自定义标签页的初始启动高度,以及可选的调整大小行为(固定或可调整大小)。(I48bd3) - 添加了
CustomTabsIntent.Builder#setToolbarCornerRadiusDp
,允许开发者指定工具栏的顶部圆角半径。(I48bd3) - 添加了
CustomTabsIntent.Builder#setCloseButtonPosition
,允许开发者设置工具栏上关闭按钮的位置。(I48bd3) - 在接口
CustomTabsCallback
中添加了onActivityResized
回调方法,以便开发者了解自定义标签页何时调整大小。(Ic864e) - 使
CustomTabsCallback
API 的部分内容异步化。(Ic86df) - 默认在 Accept-Language 中填充当前应用的语言,以与 Android 的每应用语言体验保持一致。(I3d1d7)
- 为需要授予 SDK 33 及更高版本上
POST_NOTIFICATIONS
权限的 API 添加了@RequiresPermission
。此功能是在内部分支中开发的。参考 b/238790278。
版本 1.5.0-rc01
2023 年 1 月 25 日
androidx.browser:browser:1.5.0-rc01
已发布。版本 1.5.0-rc01 包含这些提交。
- 自 1.5.0-beta01 以来无更改。
版本 1.5.0-beta01
2023 年 1 月 11 日
androidx.browser:browser:1.5.0-beta01
已发布。版本 1.5.0-beta01 包含这些提交。
- 自 1.5.0-alpha02 以来无更改
版本 1.5.0-alpha02
2022 年 12 月 7 日
androidx.browser:browser:1.5.0-alpha02
已发布。版本 1.5.0-alpha02 包含这些提交。
API 更改
- 更改了
CustomTabsCallback#onActivityResized
行为并为其添加了新参数。 - 将
EXTRA_ACTIVITY_RESIZE_BEHAVIOR
重命名为EXTRA_ACTIVITY_RESIZE_HEIGHT_BEHAVIOR
,以更好地反映其高度特异性。(Ic864e) - 使
CustomTabsCallback
API 的部分内容异步化。(Ic86df)
版本 1.5.0-alpha01
2022 年 10 月 24 日
androidx.browser:browser:1.5.0-alpha01
已发布。版本 1.5.0-alpha01 包含这些提交。
新功能
- 添加了
CustomTabsIntent.Builder#setInitialActivityHeightPx
,允许开发者指定自定义标签页的初始启动高度,以及可选的调整大小行为(固定或可调整大小)。(I48bd3) - 添加了
CustomTabsIntent.Builder#setToolbarCornerRadiusDp
,允许开发者指定工具栏的顶部圆角半径。(I48bd3) - 添加了
CustomTabsIntent.Builder#setCloseButtonPosition
,允许开发者设置工具栏上关闭按钮的位置。(I48bd3) - 在接口 CustomTabsCallback 中添加了
onActivityResized
回调方法,以便开发者了解自定义标签页何时调整大小(扩展到全高或最小化回初始启动高度)。(Id99ce) - 默认在 Accept-Language 中填充当前应用的语言,以与 Android 的每应用语言体验保持一致。(I3d1d7)
API 更改
- 为需要授予 SDK 33 及更高版本上
POST_NOTIFICATIONS
权限的 API 添加了@RequiresPermission
。此功能是在内部分支中开发的。参考 b/238790278。
版本 1.4.0
版本 1.4.0
2021 年 11 月 3 日
androidx.browser:browser:1.4.0
已发布。版本 1.4.0 包含这些提交。
自 1.3.0 以来的重要更改
- 将 PendingIntent 标记为 PendingIntent.FLAG_IMMUTABLE,以兼容 Android 12。
版本 1.4.0-rc01
2021 年 10 月 13 日
androidx.browser:browser:1.4.0-rc01
已发布,自 1.4.0-beta01 以来没有更改。版本 1.4.0-rc01 包含这些提交。
版本 1.4.0-beta01
2021 年 9 月 29 日
androidx.browser:browser:1.4.0-beta01
已发布,自 1.4.0-alpha01
以来没有更改。版本 1.4.0-beta01 包含这些提交。
版本 1.4.0-alpha01
2021 年 9 月 15 日
androidx.browser:browser:1.4.0-alpha01
已发布。 版本 1.4.0-alpha01 包含以下提交。
错误修复
- 将 PendingIntent 标记为
PendingIntent.FLAG_IMMUTABLE
以兼容 Android 12。
版本 1.3.0
版本 1.3.0
2020年12月2日
androidx.browser:browser:1.3.0
已发布。 版本 1.3.0 包含以下提交。
自 1.2.0 版本以来的主要功能
- 通过调用
TrustedWebActivityServiceConnection#sendExtraCommand
,可以将自由格式命令从浏览器传递到受信任的 Web Activity 客户端。客户端可以在TrustedWebActivityService#onExtraCommand
中处理这些命令。 - 添加了
TrustedWebActivityCallback
接口,可供受信任的 Web Activity 客户端用于向浏览器返回数据。 - 添加了
CustomTabsIntent#setShareState
,允许开发者指定是否显示分享选项(或由浏览器决定)。 - 开发者现在可以使用
TrustedWebActivityIntentBuilder
中的setScreenOrientation
方法设置默认屏幕方向。 - 已将
setNavigationBarDividerColor
方法添加到CustomTabColorSchemeParams
,以支持更改导航栏分隔线的颜色。 - 添加了
CustomTabsIntent.Builder#setDefaultColorSchemeParams
以取代现已弃用的#setNavigationBarColor
、#setNavigationBarDividerColor
、#setToolbarColor
和#setSecondaryToolbarColor
方法。 - 添加了
CustomTabsClient#bindCustomTabsServicePreservePriority
方法,允许在不使用Context.BIND_WAIVE_PRIORITY
标志的情况下连接到 Custom Tabs 服务。
版本 1.3.0-rc01
2020年11月11日
androidx.browser:browser:1.3.0-rc01
已发布,自 1.3.0-beta01
以来无任何更改。 版本 1.3.0-rc01 包含以下提交。
版本 1.3.0-beta01
2020年10月28日
androidx.browser:browser:1.3.0-beta01
已发布。 版本 1.3.0-beta01 包含以下提交。
API 更改
- 将
bindCustomTabServicePreservePriority
重命名为bindCustomTabsServicePreservePriority
(I29ac1)
错误修复
- androidx 中已启用
MissingGetterMatchingBuilder
的 API lint 检查 (I4bbea, b/138602561)
版本 1.3.0-alpha06
2020年10月1日
androidx.browser:browser:1.3.0-alpha06
已发布。 版本 1.3.0-alpha06 包含以下提交。
新功能
- 添加了 CustomTabsIntent#setShareState,允许开发者将分享状态设置为启用、禁用或由浏览器决定。(I153fe)
- 添加了 CustomTabsIntent.Builder#setDefaultColorSchemeParams,该方法应取代现已弃用的 #setNavigationBarColor、#setNavigationBarDividerColor、#setToolbarColor 和 #setSecondaryToolbarColor 方法。(I09012)
API 更改
- androidx 中已启用 StaticFinalBuilder 的 API lint 检查 (I2b11b, b/138602561)
- 添加了 CustomTabsService#KEY_SUCCESS 和 TrustedWebActivityService#KEY_SUCCESS,可用于指示 extraCommand 成功。(I6f7b5)
版本 1.3.0-alpha05
2020年8月5日
androidx.browser:browser:1.3.0-alpha05
已发布。 版本 1.3.0-alpha05 包含以下提交。
新功能
- 允许设置已启动的受信任 Web Activity 的方向。
- 允许为受信任 Web Activity 和自定义标签页设置导航栏分隔线颜色。
API 更改
- 在
TrustedWebActivityIntentBuilder
中添加了setScreenOrientation
方法。 - 为
ScreenOrientation.LockType
添加了@IntDef
以表示锁定类型 (I802d2) - 将
setNavigationBarDividerColor
方法添加到TrustedWebActivityIntentBuilder
和CustomTabColorSchemeParams
。(Ia04dd)- 为采用颜色方案的
TrustedWebActivityIntentBuilder
方法添加了@IntDef
。
- 为采用颜色方案的
版本 1.3.0-alpha04
2020年6月24日
androidx.browser:browser:1.3.0-alpha04
已发布。 版本 1.3.0-alpha04 包含以下提交。
新功能
- 添加了
CustomTabsClient#bindCustomTabServicePreservePriority
方法,允许在不使用Context.BIND_WAIVE_PRIORITY
标志的情况下连接到 Custom Tabs 服务。
版本 1.3.0-alpha03
2020年6月10日
androidx.browser:browser:1.3.0-alpha03
已发布。 版本 1.3.0-alpha03 包含以下提交。
新功能
- 添加了
TrustedWebActivityCallback
接口,可供受信任的 Web Activity 客户端用于向浏览器返回数据。(I64dbb)
API 更改
TrustedWebActivityServiceConnection.extraCommand
现在也接受一个@Nullable
TrustedWebActivityCallback
参数。bundle 参数现在标记为@NonNull
而不是@Nullable
。(I64dbb)TrustedWebActivityServiceConnection.extraCommand
方法已重命名为sendExtraCommand
(Id29a8)CustomTabsIntent.Builder#addDefaultShareMenuItem()
已弃用,取而代之的是新的#setDefaultShareMenuItemEnabled(boolean)
;CustomTabsIntent.Builder#enableUrlBarHiding()
已弃用,取而代之的是新的#setUrlBarHidingEnabled(boolean)
。(Iad702)
版本 1.3.0-alpha01
2020年1月8日
androidx.browser:browser:1.3.0-alpha01
已发布。 版本 1.3.0-alpha01 包含以下提交。
新功能
- 通过调用
TrustedWebActivityServiceConnection#extraCommand
,可以将自由格式命令从浏览器传递到受信任的 Web Activity 客户端。客户端可以在TrustedWebActivityService#onExtraCommand
中处理这些命令。
API 变更
- 提供给
CustomTabsSession#mayLauncherUrl
并由CustomTabsService#mayLaunchUrl
接收的 URL 已设为@Nullable
。
版本 1.2.0
版本 1.2.0
2019年12月18日
androidx.browser:browser:1.2.0
已发布,自 1.2.0-rc01
以来无任何更改。 版本 1.2.0 包含以下提交。
自 1.0.0 版本以来的重大更改
- 受信任的 Web Activity
- 受信任的 Web Activity 的支持现已稳定。
TrustedWebActivityIntentBuilder
可用于自定义和创建TrustedWebActivityIntent
,以启动受信任的 Web Activity。TrustedWebActivityService
可以包含或扩展,以允许客户端显示浏览器向其传递的 Web 推送通知。- 浏览器可以使用
TrustedWebActivityServiceConnectionPool
连接到客户端中的TrustedWebActivityService
。一个TrustedWebActivityServiceConnection
代表这样一种连接。 - 受信任的 Web Activity 可以启动,并向 Web Share Target 提供信息。
- 深色主题
- 开发者可以通过
CustomTabColorSchemeParams
提供在设备处于浅色或深色模式时使用的不同主题颜色。 - 开发者可以请求浏览器本身处于浅色或深色模式。
- 开发者可以通过
- 会话恢复
- 可以使用 ID 创建
CustomTabsSession
,从而允许合并来自相同客户端和 ID 的后续自定义标签页启动。
- 可以使用 ID 创建
- 可以为自定义标签页指定导航栏颜色。
- 与浏览器操作相关的类因功能使用率极低而被标记为已弃用,并将在库的未来版本中移除。
版本 1.2.0-rc01
2019年12月4日
androidx.browser:browser:1.2.0-rc01
已发布。 版本 1.2.0-rc01 包含以下提交。
Bug 修复
- 修复了代码示例的 Javadoc 格式问题。
版本 1.2.0-beta01
2019年11月20日
androidx.browser:browser:1.2.0-beta01
已发布,自 1.2.0-alpha09
以来无任何更改。 版本 1.2.0-beta01 包含以下提交。
版本 1.2.0-alpha09
2019年10月23日
androidx.browser:browser:1.2.0-alpha09
已发布。 版本 1.2.0-alpha09 包含以下提交。
新功能
Token
类可用于表示软件包的身份,它包含软件包名称和软件包签名证书的签名。- 它旨在序列化为 byte[] 以进行持久化。
- 它由
TrustedWebActivityService
用于确定允许哪些 TWA 提供商连接到它。 - 它由 TWA 提供商的
TrustedWebActivityConnectionPool
用于确定哪些软件包可有效连接。
TokenStore
接口现在由TrustedWebActivityService
用于确定允许哪个应用连接到它。- 由客户端调用
TokenStore#store
,而TrustedWebActivityService
仅加载 Token。
- 由客户端调用
TrustedWebActivityServiceConnectionPool
(之前为 TrustedWebActivityServiceConnectionManager)不再存储已验证软件包集registerClient
和getVerifiedPackages
现已移除。- 现在手动将已验证软件包的集合提供给
execute
(之前为connect
)和serviceExistsForScope
。
TrustedWebActivityService
将存储已验证提供商的任务委托给重写类。setVerifiedProvider
已移除。- 客户端必须实现
getTokenStore
,该方法返回一个可用于存储和检索Token
的TokenStore
。
API 变更
TrustedWebActivityServiceConnectionManager
类- 现在称为
TrustedWebActivityServiceConnectionPool
。 - 现在是 final。
- 通过静态
create
方法构造,而不是通过公共构造函数。
- 现在称为
TrustedWebActivityService
类- 可重写方法上具有线程注解。
TrustedWebActivityServiceWrapper
类- 现在称为
TrustedWebActivityServiceConnection
。 - 现在是 final。
- 现在抛出原始 RemoteException,而不是将其包装在 RuntimeException 中。
- 现在称为
ShareTarget#FileFormField
类现在是 final。TrustedWebUtils#splashScreensAreSupported
方法已重命名为areSplashScreensSupported
。TrustedWebActivityIntentBuilder#getUrl
方法已重命名为TrustedWebActivityIntentBuilder#getUri
。SplashScreenParamKey
静态字段已添加KEY_
前缀。
版本 1.2.0-alpha08
2019年9月18日
androidx.browser:browser:1.2.0-alpha08
已发布。 版本 1.2.0-alpha08 包含以下提交。
新功能
- 为受信任的 Web Activity 引入了新的共享目标 API。使用受信任的 Web Activity 的应用现在可以向其 Web 共享目标发送数据,该目标由协议 https://wicg.github.io/web-share-target/level-2/ 定义 (aosp/I47b93, aosp/I0ec3e)
API 变更
- 将回调
extraCallbackWithResult
添加到ICustomTabsCallback
(aosp/Ic2cc2) - 将一些
CustomTabsSession
方法参数标记为 Nullable 或 NonNull (aosp/Iec460) TrustedWebActivityIntentBuilder
现在构建TrustedWebActivityIntent
而不是原始 intent (aosp/I03fb6)
Bug 修复
CustomTabsClient
现在根据需要使用旧版requestPostMessageChannel
(aosp/Ibb324)- 修复了
CustomTabsSessionToken#equals
(aosp/I7f249) CustomTabsClient
现在尽可能使用旧版newSession
(aosp/Ie27dc)
外部贡献
- androidx 中已启用 MinMaxConstant 的 API lint 检查 (aosp/I29b78) (b/138602561)
版本 1.2.0-alpha07
2019年8月7日
androidx.browser:browser:1.2.0-alpha07
已发布。此版本中包含的提交可在此处找到。
新功能
深色主题
- 开发者可以提供在设备处于深色模式时使用的主题颜色。
- 开发者还可以覆盖已启动的浏览器应处于深色模式还是浅色模式。
- 可以为自定义标签页指定导航栏颜色。
受信任的 Web Activity
TrustedWebActivityBuilder
可用于轻松创建和启动受信任的 Web Activity。TrustedWebActivityService
和相关类可用于与提供商通信 - 接受链接网站的 Web 推送通知并从客户端应用显示它们。API 的这一部分可能会更改。
自定义标签页会话 ID
- 现在可以使用 ID 创建自定义标签页会话,从而允许合并由同一应用程序使用相同 ID 启动的两个会话。
API 变更
- 与浏览器操作相关的类和方法已被标记为已弃用。遗憾的是,虽然我们对该功能寄予厚望,但几乎没有人最终使用它,而且只有一个浏览器最终提供了支持。我们正在弃用它,以保持代码和 API 的简洁。
版本 1.0.0
版本 1.0.0
2018年9月21日
browser-1.0.0 已发布。