什么是Chrome自定义标签?
当用户点击用于启动浏览器或使用WebViews构建自己的应用内浏览器的URL。
这两个选项都带来了挑战-启动浏览器是无法自定义的沉重的上下文切换,而WebViews不会与WebViews共享状态。浏览器并增加维护费用。
Chrome自定义标签可让应用更好地控制其网络体验,并无需借助WebView即可更无缝地进行本机内容与网络内容之间的转换。
何时可用?
从Chrome 45开始,Chrome自定义标签现在可在所有受Chrome支持的Android版本(从Jellybean开始)上供所有Chrome用户使用。
他们的某些应用(例如Google +,Google搜索)上的此功能,现在,第三方应用也可以使用它(例如Twitter,Stack Exchange)。
尽管某些应用提供了启用/禁用它的设置(例如Google搜索),但其他应用似乎无法禁用此功能。我知道我仍然可以通过点击溢出菜单(右上角3点)并选择在Chrome中打开来在Chrome中打开链接。但是,最好是可以在特定的应用程序上禁用它。
因此,我的问题是:是否可以禁用此功能,最好是在选择性应用程序上? (通过禁用,我的意思是直接在默认浏览器中打开链接,或提示用户选择浏览器)
注意:我接受所有建议,包括根解决方案,甚至在最坏的情况下卸载Chrome 。但是,更实用的答案是可取的。
#1 楼
“自定义标签”帮助页面显示:如果用户未安装最新版本的Chrome会怎样?
“自定义标签”使用带有附加键的
ACTION_VIEW
Intent来自定义UI。这意味着默认情况下该页面将在系统浏览器或用户的默认浏览器中打开。如果用户安装了Chrome,并且它是默认浏览器,它将自动选择
EXTRAS
并显示自定义UI。另一个浏览器也可以使用Intent Extras提供类似的自定义界面。这意味着,如果将其他一些浏览器设置为默认浏览器(可以通过“设置”>“应用”>“齿轮”菜单>默认应用),任何尝试打开“自定义标签”的应用都会改为在该浏览器中打开链接。
ACTION_VIEW
意向),并在收到此意向后检查它是否具有与Custom Tabs相关的EXTRAS
,并根据某些逻辑,使用显式意向(在其中明确指定所需的应用程序包名称)打开您选择的浏览器。评论
谢谢,更改默认浏览器在某些应用程序(例如Stack Exchange应用程序)上可以使用,但在其他应用程序(例如Google News&Weather)上则不能使用,由于某些原因不确定...经理应用程序是一个有趣的主意,我如果可以与自动化应用程序配合使用,将尝试进行试验!
–安德鲁·T。♦
16年5月29日在14:28
这是因为“新闻与天气”(尝试2.3.3版)在意图中明确指定了组件:START u0 {act = android.intent.action.VIEW dat = http://news.google.com / ... flg = 0x14002000 cmp = com.android.chrome / org.chromium.chrome.browser.ChromeTabbedActivity(有其他功能)}在显示0上显示为uid10041。样式不好,但是您无能为力:(
– Mikhail Naganov
16年5月31日在16:37
#2 楼
我正在使用7.1.1 android。打开Google应用程序或进行搜索,单击左上角的汉堡包并进入“设置”。进入“帐户和隐私”。
关闭“在应用程序中打开网页” '。
这似乎关闭了chrome自定义标签。
评论
这只会在搜索应用程序(可能是其他Google应用程序)中禁用自定义标签,而不会在系统范围内禁用。
–基思·托姆布莱(Keith Twombley)
17年1月26日在22:36
评论
相关:github.com/arunkumar9t2/lynket-browser/issues/139