setUserAgentString в веб-представлении Android не влияет на заголовок HTTP, используемый в loadURL ()

Попытка изменить строку User-Agent в HTTP-запросе приложения Android. Я проверил это вместе с wireshark и эмулятором и увидел, что, хотя я установил строку useragent в веб-представлении, связанный запрос loadUrl не использует эту строку агента пользователя. Вместо этого я вижу строку использованного агента Dalvik в захвате Wireshark. Вот абстрактный код. Есть идеи? Или эмулятор не поддерживает это?

@Override
public void run() {
    assert(context != null);

    ...
    ...
    webView = new WebView(context);
    ...
    String defaultUserAgent = "betaUAteststring";


    // Clear per-application caches etc
    webView.clearCache(true);
    webView.clearHistory();
    webView.getSettings().setAppCacheEnabled(false);
    webView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
    webView.getSettings().setJavaScriptEnabled(true);


    webView.setWebViewClient(new WebViewClient() {
        @Override  
        public void onPageFinished(WebView view, String url) {
        ....
        }

        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
        ..
        }

        @Override
        public void onLoadResource(WebView view, String url) {
        ...
        }
    });


    // Start loading


    webView.getSettings().setUserAgentString(defaultUserAgent);
    String setUA = webView.getSettings().getUserAgentString();
    //--> logging here shows the correct user agent, so the webview does accept the value
    // However the following statement does not result in an http request with the webviews user agent
    webView.loadUrl(url);

    //Alternative doesn't help either (and shouldn't according to javadoc)

    //Map headerMap = new HashMap();
    //headerMap.put("User-Agent","uaTestInAMap");        
    //webView.loadUrl(url, headerMap);
}

Ответы на вопрос(2)

Ваш ответ на вопрос