Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 小草社区在线视频,日本精品免费,欧美日在线观看

          整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          安卓webview html5 自動播放本地視頻,網上視頻,可以循環播放

          們做安卓開發時,webview中發現html5 視頻的autoplay根本沒實現,查看了下android 源碼HTMLVideoElement.cpp也未見相應處理,網上有資料顯示,這可能關乎UI線程與后臺線程的協調性,我看,以后的升級版本總會解決這個問題的。

          html5標簽屬性不支持,那只有通過javascript來處理了

          演示apk下載地址:http://download.csdn.net/detail/qiushi_1990/9513038

          github源碼下載:https://github.com/qiushi123/H5Demo

          下面是實現步驟和原理

          一,我們在設置的WebViewClient中覆蓋方法:

          不要忘記了webview.getSettings().settings.setJavaScriptEnabled(true)啟用javascript,AndroidManifest加入INTERNET權限

          @Override

          public void onPageFinished( WebView view, String url) {

          view.loadUrl("javascript:try{autoplay();}catch(e){}");

          }

          實例代碼

           public class Html5VideoAutoPlay extends Activity {
          		WebView webview = null;
          		@Override
          		protected void onCreate(Bundle savedInstanceState) {
          			super.onCreate(savedInstanceState);
          			setContentView(R.layout.html5video);
          			webview = (WebView)findViewById(R.id.webview);
          			webview.getSettings().setJavaScriptEnabled(true);
          			webview.setWebViewClient(new WebViewClient(){
          				/**
          				 * 當前網頁的鏈接仍在webView中跳轉
          				 */
          				@Override
          				public boolean shouldOverrideUrlLoading(WebView view, String url) {
          					view.loadUrl(url);
          					return true;
          				}
          				/**
          				 * 處理ssl請求
          				 */
          				@Override
          				public void onReceivedSslError(WebView view,
          						SslErrorHandler handler, SslError error) {
          					handler.proceed();
          				}
          				/**
          				 * 頁面載入完成回調
          				 */
          				@Override
          				public void onPageFinished(WebView view, String url) {
          					super.onPageFinished(view, url);
          					view.loadUrl("javascript:try{autoplay();}catch(e){}");
          				}
          			});
          			webview.setWebChromeClient(new WebChromeClient() {
          				/**
          				 * 顯示自定義視圖,無此方法視頻不能播放
          				 */
          				@Override
          				public void onShowCustomView(View view, CustomViewCallback callback) {
          					super.onShowCustomView(view, callback);
          				}
          			});
          			webview.loadUrl("file:///sdcard/html/video.html");
          		}
          		@Override
          		protected void onPause() {
          			if(null != webview) {
          				webview.onPause();
          			}
          			super.onPause();
          		}
           }
          

          二,布局文件

          html5video.xml

          	<?xml version="1.0" encoding="utf-8"?>
          		<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          			android:layout_width="match_parent"
          					android:layout_height="match_parent"
          					android:orientation="vertical" >
          		<WebView android:id="@+id/webview"
          			android:layout_width="match_parent"
          			android:layout_height="match_parent"/>
          		</LinearLayout>
          

          三,html文件(這里用的是html5的video標簽來設置自動播放和循環播放)

          video.html

          		<body>
          		<video id="video" src="b.mp4" width="480" height="320" controls loop>
          			don't support html5
          		</video>
          		</body>
          		<script type="text/javascript">
          			var video = document.getElementById("video");
          			video.play();
          		</script>
          

          上面的src可以引入本地視頻b.mp4,

          也可以引入網上視頻:http://2449.vod.myqcloud.com/2449_43b6f696980311e59ed467f22794e792.f20.mp4

          個人覺得html5結合Android會讓未來各種技術實現越來越簡單。到我的個人博客查看更多h5與安卓的結合案例。

          也可以關注我github里的其他開源項目。

          github:https://github.com/qiushi123?tab=repositories

          實例圖片

          效果圖

          有任何關于編程的問題都可以私信我,我看到后會及時解答。

          編程小石頭,為分享干貨而生!據說,每個年輕上進,顏值又高的互聯網人都關注了編程小石頭。?

          TML5的標準文件Api可以使用頁面具有文件傳輸的能力,其定義如下四個接口:

          • BLOB - 不改變變的原始數據。一個Blob類型屬性,顯示數據的媒體類型,如“text /平原”。

          • File - 繼承自BLOB,表示一個單獨的文件

          • FileList - 文件對象集合

          • FileReader - 讀物文件或者BLOB的內容

          FileRead提供了三個方法用于讀取文件內容

          • readAsText() -讀取文件或者BLOB對象將其內容轉換為可讀的文本內容。

          • readAsDataURL() -取文件或者BLOB對象將其內容轉換為一個Data Url,可用于圖片的現實。

          • readAsArrayBuffer() - 取文件或者BLOB對象將其內容轉換為ArrayBuffer

          FileReader實現一部讀取并且能夠展示讀取內容的進度,可以實現如文件上傳的進度條的接口。

          • load加載事件-數據已經成功加載

          • abort終止事件-數據加載過程被終止

          • error事件-加載過程出錯

          • loadend事件-加載結束

          下面是一個讀物文件內容的實例

          • 采用input type='filed"控件獲取文件或者Blob對象

          • 創建FileReader對象,實現加載過程的控制

          • FileReader調用readAsText()方法

          • errror事件實現出錯信息的展示

          者:semlinker

          轉發鏈接:https://mp.weixin.qq.com/s/tgiHiint3iTfPnr318kuFg


          主站蜘蛛池模板: 国产一区中文字幕在线观看| 四虎成人精品一区二区免费网站 | 无码一区二区三区亚洲人妻| 国产一区视频在线免费观看| 日本免费一区二区三区 | 波多野结衣的AV一区二区三区 | 亚洲一区二区三区香蕉| 秋霞鲁丝片一区二区三区| 国产免费一区二区三区| 精品国产一区二区三区免费| 亚洲av片一区二区三区| 精品一区二区三区无码免费直播| 精品深夜AV无码一区二区老年| 自慰无码一区二区三区| 一区二区三区影院| 国产激情一区二区三区| 爆乳熟妇一区二区三区霸乳| 国产一区二区免费在线| 日韩在线一区二区三区免费视频| 在线日韩麻豆一区| 国产精品无码一区二区三区在| 99偷拍视频精品一区二区| 在线免费视频一区二区| 国产一区二区三区小向美奈子| 国产一区二区三区播放| 国产伦精品一区二区免费| 人妻无码一区二区视频| 中文国产成人精品久久一区| 亚洲午夜福利AV一区二区无码| 国产在线无码一区二区三区视频| 亲子乱av一区二区三区| 无码少妇一区二区三区浪潮AV| 日韩精品中文字幕无码一区| 亚洲午夜电影一区二区三区 | 国产日韩高清一区二区三区 | 亚洲熟妇无码一区二区三区导航| 亚洲一区二区三区91| 亚洲综合激情五月色一区| 国产产一区二区三区久久毛片国语| 精品人妻一区二区三区四区 | 日本人的色道www免费一区|