Android Chrome Custom Tabs

news/2024/10/18 3:31:57/

参考文档

API文档

链接

Chrome Custom Tabs 参考文档

https://developer.chrome.com/docs/android/custom-tabs/

Chrome Custom Tabs最佳实践_customtabs_Just_Sanpark的博客-CSDN博客

Chrome Custom Tabs最佳实践_chrome custom tabs集成_wxx614817的博客-CSDN博客

Chrome Custom Tabs 用途

官方Link文档

 

安全性方面:

官方Link文档

 

Chrome Custom Tabs页面是否可以获取到键盘输入信息,键盘焦点吗?

  • 在 Android 中,Chrome Custom Tabs 不会直接提供应用程序访问用户的输入信息或键盘焦点的功能。Chrome Custom Tabs 的设计目的是在应用程序内提供一致的浏览器体验,同时保护用户的隐私和安全。

  • Chrome Custom Tabs 是作为 Chrome 浏览器的一部分运行的,并且在沙盒环境中处理用户的输入和交互。应用程序无法直接访问或拦截 Chrome Custom Tabs 中的用户输入信息。键盘焦点和输入信息由 Chrome 浏览器管理和处理。

什么是Custom Tabs?

当用户点击一个URL时,是应该用浏览器打开还是应该用应用内置的WebView打开呢?

两个选项都面临着一些问题。通过浏览器打开是一个非常重的上下文切换,并且是无法定制的。而WebView不能和浏览器共享数据并且需要需要手动去处理更多的场景。

Chrome Custom Tabs让APP在进行网页浏览时更多的控制权限,在不采用WebView的情况下,这既能保证Native APP和网页之间流畅的切换,又允许APP定制Chrome的外观和操作。可定义的内容如下:

  • toolbar的颜色

  • 进场和退场动画

  • 给Chrome的toolbar、overflow menu和bottom toolbar添加自定义操作

并且,Chrome Custom Tabs允许开发者对Chrome进行预启动和网页内容的预加载,以此提升加载的速度。

何时选择使用 WebView 和 Chrome Custom Tabs 呢?

如果要显示的网页内容是由您自己控制的,并且网页内容需要和 Android 组件交互,比如通过 JavaScript 接口来调用 Android 系统的一些功能,这种情况下你还需要用 WebView 来实现;
其他情况都可以用 Chrome Custom Tabs 来实现。

如果用户没有安装最新版本的Chrome,会发生什么呢?

Custom Tabs通过带有key Extras的 ACTION_VIEW Intent来定制UI。这就意味着将要打开的页面会通过系统浏览器或者用户默认浏览器打开。

Chrome Custom Tabs、WebView 和系统浏览器在安全性方面有一些区别:

  1. Chrome Custom Tabs(CCT):Chrome Custom Tabs 是一个集成了 Chrome 浏览器体验的解决方案,它提供了一种在应用程序内加载和显示网页内容的方式。由于使用了 Chrome 浏览器,它能够获得 Chrome 的安全性和更新。CCT 可以受益于 Chrome 浏览器的安全性功能,如安全浏览、自动更新和针对恶意网站的保护。

  2. WebView:WebView 是 Android 平台提供的组件,允许应用程序内嵌入和显示网页内容。WebView 的安全性主要依赖于 Android 系统的 WebView 实现以及使用的 WebView 版本。因此,安全性可能会受到设备制造商和操作系统版本的影响。对于 WebView,及时更新设备以获取最新的系统和 WebView 安全修复非常重要。

  3. 系统浏览器:系统浏览器通常是设备自带的默认浏览器,如Android设备上的"Browser"或"Safari"。系统浏览器的安全性主要取决于操作系统供应商的实现和更新。与 WebView 和 CCT 相比,系统浏览器可能具有更广泛的安全功能和更频繁的更新,因为它们通常由操作系统供应商负责。

总的来说,Chrome Custom Tabs 和系统浏览器在安全性方面更有优势,因为它们可以受益于 Chrome 浏览器的安全性功能和更新。但无论使用哪种解决方案,都需要确保及时更新设备以获得最新的安全修复和保护,并采取适当的安全措施来验证和过滤加载的网页内容。

Chrome Custom Tabs集成:

App build gradle:

// Chrome Custom Tabs
implementation 'androidx.browser:browser:1.3.0'

Activity 代码:

val linkStr = WpkUSApi.getInstance().oauthLink
val intent = CustomTabsIntent.Builder().build()
intent.launchUrl(this, Uri.parse(linkStr))

http://www.ppmy.cn/news/383925.html

相关文章

Windows Subsystem for Android (WSA) 下载:在 Windows 11 上运行 Android 应用 (June 2023)

适用于 Android™️ 的 Windows 子系统,2023 年 6 月更新 请访问原文链接:https://sysin.org/blog/wsa/,查看最新版。原创作品,转载请保留出处。 作者主页:sysin.org 适用于 Android™️ 的 Windows 子系统使你的 Wi…

Vmware 设置固定ip地址--桥接模式

前言: 若虚拟机没有设置固定ip地址,每次关机重启后都会更新ip地址。导致连接工具得跟着一起修改,每次修改很烦。 之前使用NAT模式,因为使用此模式后,每次打开网页都会转几秒钟后才会显示网页。所以才使用桥接模式&…

自定义修改Typora原生默认github风格样式

使用typora的时候,想要自定义一些颜色、字体,或者修改一些设置,这个时候需要修改或者自己编写css文件。 修改涉及的样式: ① 目录 ② 块应用 我还是比较喜欢原生自带的默认样式(github样式), 但…

巽风游戏攻略苹果手机免越狱群控

巽风游戏是一款非常火爆的手机游戏,吸引了众多游戏玩家前来体验。作为一款玄幻题材的游戏,它有着丰富的剧情和系统,对于新手玩家来说,可能会感到有些困难。那么今天小编就给大家带来巽风游戏的最新攻略,帮助大家更好地…

黑客发布兼容苹果 iOS 15 和 iOS 16 的越狱工具

12 月 15 日消息,苹果公司一直在努力提高其操作系统和设备的安全性,黑客已经越来越难为 iOS 创建越狱工具。不过 palera1n 团队通过不懈努力,近日发布了一个越狱工具,不仅兼容 iOS 15,而且还兼容 iOS 16。 越狱能够移除…

如何实现微信多开,苹果手机无需越狱

I. 前言 本文的前言部分主要介绍了研究背景、研究目的、研究内容和研究方法。其中研究背景介绍了微信双开的概念和应用,并指出苹果手机的微信双开是一个热门话题。研究目的是为了探究苹果手机上微信双开的可行性和实现方法。研究内容包括系统架构设计、模块功能设计…

苹果4s怎么越狱_越狱软件续签教程

基本操作首先 点点「在看」支持哦 几乎所有的越狱用户都会遇到过同样一个问题,那就是关于软件失效的问题 越狱的用户都知道 现在的越狱基本都是引导越狱 通过手机软件或者电脑软件引导越狱,越狱方式相对以前来说简单了很多也安全了很多「但也会有白苹果的…

苹果4s怎么越狱教程_ios9.2怎么越狱 iOS9.2.1完美越狱教程【详解】

iOS9.2-9.3.3越狱工具发布!国内越狱团队盘古再次联合PP助手发布了最新的越狱工具,支持iOS9.2-9.3.3完美越狱。iOS9.2-9.3.3怎么越狱呢?下面IT百科小编为你带来最详细的iOS9.2-9.3.3越狱图文教程。 【越狱前须知】 1、越狱前准备:请备份好手机中的重要资…