Android Webview覆盖默认标题,如接受语言、接受编码、接受字符集等

Android Webview覆盖默认标题,如接受语言、接受编码、接受字符集等,android,webview,header,overriding,Android,Webview,Header,Overriding,嗯。标题不言自明。我想覆盖任何WebView请求(POST或GET)中的每个标题。Android API提供的方法没有覆盖这些头。虽然我设置了它们,但默认的标题占优势 例如: Map<String, String> headers = new HashMap<String, String>(); headers.put("Referer", "www.hello.com"); headers.put("User-Agent", "Any User Agent"); hea

嗯。标题不言自明。我想覆盖任何WebView请求(POST或GET)中的每个标题。Android API提供的方法没有覆盖这些头。虽然我设置了它们,但默认的标题占优势

例如:

Map<String, String> headers = new HashMap<String, String>();
headers.put("Referer", "www.hello.com");
headers.put("User-Agent", "Any User Agent");
headers.put("Accept-Language", "es");
webView.loadUrl("www.hello.com/world.html", headers);
使用loadUrl(url,extraheaders)方法是行不通的

所以。我正在寻找一种改变我的网络视图标题的方法。应该有办法。根据“internetz”的说法,应该覆盖阅读和对话,而不要抓住帖子。我需要抓住柱子,然后离开。我想更改来自webview的每个请求的标题。它应该很简单!但我找不到一个简单的解决办法

有什么想法吗

谢谢

编辑1:

我甚至尝试在我的应用程序中更改区域设置。有点奏效了。至少我愚弄了WebView,用我自己的语言。但出于某种原因,安卓背后的人认为在Accept Language标题中使用“en-US”是必须的。不管你说什么语言

我把我的区域设置改成了es AR,它成功了。但是WebView也加入了我们。所以现在我接受的语言是“是啊,是啊,是啊”,这对我来说是不可接受的(请不要问我为什么)

这是webview部件的源,它从中获取区域设置并生成accept langauge标头。请注意,如果您的区域设置未设置为US,则会强制接受语言将US作为“第二语言”


您是如何愚弄WebView以产生一种不同的Accept语言的?有完全相同的问题
webView.getSettings().setUserAgentString("Any User Agent");