Android Studio 的 webview 能否实现基于 chromium 开发的浏览器的网络访问功能?
解释说明:
(所有的测试均使用同一家用wifi):
我注意到除去油管一类的限制网站(以下简称A类),还存在另一类限制网站(以下简称B类)。
- 使用iphone使用非国产浏览器(例如百度)访问B类网站,可以访问;
- 使用iphone使用国产浏览器访问B类网站,限制访问;
- 使用安卓手机(小米)使用大多浏览器(例如小米自带浏览器、轻量级chromium浏览器、国产浏览器)访问B类网站,限制访问;
- 使用安卓手机使用基于chromium开发的浏览器(brave、edge、chrome)的新版本访问B类网站,可以访问;
- 使用安卓手机使用基于chromium开发的浏览器(brave、edge、chrome)的旧版本(chrome.dev_115.0.5748.0 之前)访问B类网站,限制访问;
- 电脑端使用chrome浏览器访问B类网站,可以访问;
- 电脑端开热点,安卓手机链接热点访问B类网站,限制访问;
- 抓包过程中使用过Fiddler,连接代理后不知道为什么,使用小米自带浏览器访问B类网站,可以访问(这个比较事实比较弱,我忘记当时的配置了)。
测试其他必要条件有:
- 使用安卓机的命令行测试,ping B类网站,能ping通;
- 如果安卓手机IP使用DHCP,上面的第4种方式,也会限制访问,只有使用静态IP,DNS使用114(别的没测试)可以访问。
推测B类网站的限制:
- 国产浏览器有黑名单,当访问B类网站的时候,会跟浏览器服务器交互相关信息,被浏览器掐断链接;
- DNS污染,DHCP的DNS对B类网站进行了限制。
参考:
当使用旧版本chrome浏览器(114.0.5735.227 【114最后一个版本】)访问B类网站,提示连接是不安全的;
当使用较新版本chrome浏览器(dev_115.0.5748.0 【115第一个开发版本】)访问B类网站,提示该链接使用TLS1.3;
当使用最新chrome浏览器(131任何版本)访问B类网站,提示该链接使用QUIC;
当使用最新chrome浏览器(131任何版本)访问日常网站比如百度,提示该链接使用TLS1.2;
B类测试网站为 https://toptoon03.xyz/
提问目的(需要解答):
- 简述以上多种方式访问网站的路径有什么不同(我知道基本状态是一个节点到一个节点,但是每种方式肯定对应的节点不一样),请用简单大白话;
- 基于chromium的浏览器(brave、edge、chrome)使用了是么功能、规避了哪个节点的黑名单,导致可以访问B类网站;
- Android Studio 的 webview 能否实现这个功能。
ps: 我喜欢有目的的研究,然后遇到问题解决问题,并没有系统学习过编程,但是做出过能用的APP,我问过AI(豆包、ChatGPT),但是没解决这个问题,各种测试搞得我晕头转向,没搞明白到底哪里有限制,要说DNS污染,那我改DNS还没解决、要说安卓机有安全策略,但是在某种情况下又能访问、总而言之,研究了很长时间、没搞明白限制都出在哪里。
特来提问,望赐教!