Android WebView 播放视频无法播放问题和视频适应屏幕大小
生活随笔
收集整理的這篇文章主要介紹了
Android WebView 播放视频无法播放问题和视频适应屏幕大小
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1.視頻無法播放:
點(diǎn)擊播放按鈕后,提示視頻加載失敗,錯(cuò)誤碼0_4
解決這個(gè)問題需要添加以下代碼:
在AndroidManifest中
android:hardwareAccelerated="true"
//支持視頻播放if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {webView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);}webView.getSettings().setPluginState(WebSettings.PluginState.ON);webView.getSettings().setUseWideViewPort(true); // 關(guān)鍵點(diǎn)webView.getSettings().setAllowFileAccess(true); // 允許訪問文件webView.getSettings().setSupportZoom(true); // 支持縮放webView.getSettings().setLoadWithOverviewMode(true);webView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE); // 不加載緩存內(nèi)容
視頻播放正常了:
2.但是我們發(fā)現(xiàn)視頻的尺寸有點(diǎn)大,超過了屏幕的寬度,怎么辦呢?
其實(shí)這里要用到web的css代碼
在html代碼中添加以下樣式:
iframe {display: block;max-width:100%;margin-top:10px;margin-bottom:10px;}
iframe是獲取的html代碼中嵌套視頻的標(biāo)簽,要對(duì)應(yīng)起來
具體代碼:
//官方適應(yīng)屏幕private String getHtmlData(String bodyHTML) {String head = "<head>" +"<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, user-scalable=no\"> " +"<style type=\"text/css\"> body { line-height:"+(150)+"%} </style> \n" +"<style>img{max-width: 100%; width:auto; height:auto;}</style>" + //圖片適應(yīng)屏幕"<style>iframe {display: block;max-width:100%;\n" + //視頻適應(yīng)屏幕" margin-top:10px; margin-bottom:10px;}</style>" +"<style type=\"text/css\"> \n" +"</style> \n" +"</head>";String htmlStr = "<html>" + head + "<body>" + bodyHTML + "</body></html>";return htmlStr;}
視頻大小顯示就正常了:
總結(jié)
以上是生活随笔為你收集整理的Android WebView 播放视频无法播放问题和视频适应屏幕大小的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大数据是什么?大数据可以做什么?大数据实
- 下一篇: 02 Android 植物人大战僵尸-太