请求的资源上存在Android

请求的资源上存在Android

我正在尝试加载测试网页(在我的服务器中)。页面是:

<!DOCTYPE html>
<html>
<head>
    <title>Test</title>
</head>
<body>

<iframe width="420" height="315" src="http://www.youtube.com/embed/XGSy3_Czz8k?autoplay=1"/>

</body>
</html>

但是webView无法加载页面。 %40-50之后甚至没有调用onProgressChanged

此外,所有从URL加载js脚本的网站都会出现此问题。包括YouTube的,fb 等。
WebConsole: XMLHttpRequest cannot load https://googleads.g.doubleclick.net/pagead/id. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'https://www.youtube.com' is therefore not allowed access.

这是我的设置
    FrameLayout contentFrame = (FrameLayout) findViewById(R.id.ContentFrame);
    WebView mWebView = new WebView(this);

    mWebView.setWebChromeClient(new WebChromeClient());
    mWebView.setWebViewClient(new WebViewClient());
    mWebView.getSettings().setJavaScriptEnabled(true);
    mWebView.getSettings().setAllowUniversalAccessFromFileURLs(true);
    mWebView.getSettings().setAllowFileAccessFromFileURLs(true);

    mWebView.loadUrl("http://ozgur.dk/browser.html");

    contentFrame.removeAllViews();
    contentFrame.addView(mWebView);

布局:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
    android:id="@+id/ContentFrame"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    />

最佳答案

您确定没有在某个地方暂停计时器吗?因为这是在页面加载时调用mWebView.pauseTimers()时发生的。

关于android - 请求的资源上存在Android WebView “No ' Access-Control-Allow-Origin header ”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37984896/

10-10 04:08