Video does not display in Webview

I have one Html page. On this HTML page I show one video, but this video does not appear in my application, but it displays in the browser by default, so please tell me what the problem is, below my code and video and html file are stored in the SD card, sorry for my bad english message.

MainActivity.java

public class MainActivity extends Activity { WebView webPage; Button next; String rootDir = "file://" + Environment.getExternalStorageDirectory() + "/iR-unzip/testbook/"; WebChromeClient webChromeClient = new WebChromeClient(); WebViewClient webViewClient = new WebViewClient(); @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); webPage = (WebView) findViewById(R.id.webview); webPage.setWebChromeClient(webChromeClient); webPage.setWebViewClient(new MyWebViewClient()); webPage.getSettings().setJavaScriptEnabled(true); webPage.getSettings().setPluginsEnabled(true); webPage.getSettings().setPluginState(PluginState.ON); webPage.getSettings().setLoadWithOverviewMode(true); webPage.getSettings().setUseWideViewPort(true); webPage.loadUrl(rootDir + "/" + "chapter_1.html"); next = (Button) findViewById(R.id.page_changer); next.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { webPage.loadUrl(rootDir + "/" + "chapter_2.html"); } }); } public class MyWebChromeClient extends WebChromeClient { @Override public void onShowCustomView(View view, CustomViewCallback callback) { // TODO Auto-generated method stub super.onShowCustomView(view, callback); if (view instanceof FrameLayout) { FrameLayout frame = (FrameLayout) view; if (frame.getFocusedChild() instanceof VideoView) { VideoView video = (VideoView) frame.getFocusedChild(); frame.removeView(video); video.start(); } } } } public class MyWebViewClient extends WebViewClient { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } } } 

Html Page: -

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Chapter 1 for testBook</title> </head> <body> <div style="width: 600px;margin: 0 auto;"> <div id="text"> <p><h4>WSDL for client access</h4> A WSDL service description provides all the information that is required to use a web service. The T320 version of Eclipse incorporates the Web Tools Platform (WTP), which provides support for generating a client based on the information inside a WSDL. <h4>OU demo services</h4></h4> <p>At the OU there is a small set of toy web services. These can be accessed using a client in the same way as you tested the 'Hello' web service using Eclipse. In fact, one of the web services hosted is a copy of the 'Hello' service.</p> <img src="Caterpillar-Insect-Animal-Macro-HD-600x375.jpg" /> <p>Click on the 'Browse' button at the top of the box. This will take you to the dialogue box shown in Figure 11.</p> <img src="images.jpg" /> </div> <div> <h3>HTML5 Video : </h3> <video width="320" height="240" controls="controls"> <source src="video.mp4" type="video/mp4">Your browser does not support the video tag. </video> </div> </div> </body> </html> 
+2
source share
1 answer

Replace this line

  wb.getSettings().setPluginState(PluginState.ON); 

with this

  wb.getSettings().setPluginState(WebSettings.PluginState.ON); 
+1
source

Source: https://habr.com/ru/post/1442466/


All Articles