android - 安卓使用webview播放腾讯、优酷视频的方法
巴扎黑
巴扎黑 2017-04-17 18:00:18
0
4
680

想要实现的功能就是直接显示一个播放窗口,而不显示整个网站,然后点击播放之后就全屏显示。但目前的问题是根本没法播放视频。代码如下:

public class MainActivity extends AppCompatActivity {

    static final String iframeStr = "<iframe height=498 width=510 src='http://player.youku.com/embed/XOTMyOTAwNDE2' frameborder=0 'allowfullscreen'></iframe>";
    private WebView videoWebView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        videoWebView = (WebView) findViewById(R.id.webView);
        WebSettings settings = videoWebView.getSettings();
        settings.setJavaScriptEnabled(true);
        settings.setJavaScriptCanOpenWindowsAutomatically(true);
        settings.setDatabaseEnabled(true);
        settings.setAppCacheEnabled(true);
        settings.setCacheMode(WebSettings.LOAD_DEFAULT);
        settings.setPluginState(WebSettings.PluginState.ON);
        settings.setAllowFileAccess(true);
        settings.setLoadWithOverviewMode(false);
        settings.setDomStorageEnabled(true);
        settings.setUseWideViewPort(true);

        videoWebView.setWebChromeClient(new WebChromeClient());
        videoWebView.setWebViewClient(new WebViewClient(){
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                return false;
            }
        });

        videoWebView.loadUrl(iframeStr);
    }

    @Override
    protected void onResume() {
        super.onResume();
        videoWebView.resumeTimers();
    }

    @Override
    protected void onPause() {
        super.onPause();
        videoWebView.pauseTimers();
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        videoWebView.destroy();
    }
}

我想要知道是不是视频链接的问题,使用的链接是分享处的通用代码。

有测试过html的代码,但是效果是无法加载插件。
然后internet权限已经添加,android:hardwareAccelerated="true"和android:layerType="hardware"都已添加。
请指点一下具体问题在哪?

巴扎黑
巴扎黑

reply all(4)
黄舟

videoWebView.loadUrl("http://player.youku.com/embed/XOTMyOTAwNDE2' frameborder=0 'allowfullscreen");

黄舟

Seeing that you are using WebView, write like this: videoWebView.loadUrl(url);Note that the url here is directly the address of the webpage where the video is located, there is no need to obtain the sharing address

黄舟

Look at the link to my answer

https://segmentfault.com/q/1010000000523093/a-1020000007431139
小葫芦

Owner, has your problem been solved? Looking for a solution~

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template