Android 网络视图视频 - net::ERR_BLOCKED_BY_RESPONSE

Android Webview Video - net::ERR_BLOCKED_BY_RESPONSE

我正在使用 Android Studio 开发 Excel 教程应用程序,我在其中使用 html 创建课程。每节课都有 step-by-step 说明和视频说明。现在,当我 运行 我的应用程序使用真实设备时。它不只显示文本,不显示视频。但是,当我使用 Google Chrome 在笔记本电脑中测试 html 时,它工作正常。现在我该怎么办?

我见过很多这样的问题,但答案都是关于如何显示视频的。但是在我的 html 中也有文本。

我的html代码:

<iframe src="https://drive.google.com/file/d/1O0pcJdKQt1ZYf8BTl1WNzgyyo00pnoD5/preview" width="640" height="480"></iframe>

我的 Android 工作室代码:

public class Lessons_Content extends AppCompatActivity {

ActionBar lessontexttoolbar;
WebView lessoncontent;
Integer lessoninteger;

@SuppressLint("SetJavaScriptEnabled")
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.content_lessons);

    lessontexttoolbar = getSupportActionBar();
    if (lessontexttoolbar != null) {
        lessontexttoolbar.setDisplayHomeAsUpEnabled(true);
    }

    lessoncontent = findViewById(R.id.lesson_content);
    lessoncontent.getSettings().setBuiltInZoomControls(true);
    lessoncontent.getSettings().setDisplayZoomControls(true);
    lessoncontent.getSettings().setBlockNetworkLoads(false);
    if (Build.VERSION.SDK_INT >= 19) {
        lessoncontent.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
    }
    lessoncontent.getSettings().setUseWideViewPort(true);

    lessoninteger = getIntent().getIntExtra("lessonextra", 0);
    
    if (lessoninteger == 0) {
        lessoncontent.setWebChromeClient(new WebChromeClient(){});
        lessoncontent.getSettings().setJavaScriptEnabled(true);
        String html = "<iframe src=\"https://drive.google.com/file/d/1O0pcJdKQt1ZYf8BTl1WNzgyyo00pnoD5/preview\" width=640 height=480 allowfullscreen=true></iframe>\n";
        lessoncontent.loadData(html, "text/html", "UTF-8");
    }

}

输出:

网页不可用。

无法加载位于 'url' 的网页,因为:

网络::ERR_BLOCKED_BY_RESPONSE

如有任何帮助,我们将不胜感激。

谢谢。

执行 代码后的屏幕截图。

尝试启用 JavaScript 到 webView,在加载之前使用网络设置。

WebSettings webSettings = webv.getSettings(); webSettings.setJavaScriptEnabled(true);

试试这个:

WebView urlWebView = (WebView)findViewById(R.id.containWebView);
urlWebView.setWebViewClient(new AppWebViewClients());
urlWebView.getSettings().setJavaScriptEnabled(true);
urlWebView.getSettings().setUseWideViewPort(true);
urlWebView.loadUrl("https://drive.google.com/file/d/1O0pcJdKQt1ZYf8BTl1WNzgyyo00pnoD5/preview");


public class AppWebViewClients extends WebViewClient {



    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        // TODO Auto-generated method stub
        view.loadUrl(url);
        return true;
    }

    @Override
    public void onPageFinished(WebView view, String url) {
        // TODO Auto-generated method stub
        super.onPageFinished(view, url);

    }
}