詳解Android App中使用VideoView來(lái)實(shí)現(xiàn)視頻播放的方法
通過(guò)VideoView播放視頻的步驟:
1、在界面布局文件中定義VideoView組件,或在程序中創(chuàng)建VideoView組件
2、調(diào)用VideoView的如下兩個(gè)方法來(lái)加載指定的視頻
(1)setVidePath(String path):加載path文件代表的視頻
(2)setVideoURI(Uri uri):加載uri所對(duì)應(yīng)的視頻
3、調(diào)用VideoView的start()、stop()、psuse()方法來(lái)控制視頻的播放
VideoView通過(guò)與MediaController類結(jié)合使用,開發(fā)者可以不用自己控制播放與暫停
package cn.com.chenzheng_java;
import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.util.Log;
import android.widget.MediaController;
import android.widget.VideoView;
import android.widget.MediaController.MediaPlayerControl;
public class VideoActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.video);
VideoView videoView = (VideoView)findViewById(R.id.videoView1);
/***
* 將播放器關(guān)聯(lián)上一個(gè)音頻或者視頻文件
* videoView.setVideoURI(Uri uri)
* videoView.setVideoPath(String path)
* 以上兩個(gè)方法都可以。
*/
videoView.setVideoPath("data/yueding.mp3");
/**
* w為其提供一個(gè)控制器,控制其暫停、播放……等功能
*/
videoView.setMediaController(new MediaController(this));
/**
* 視頻或者音頻到結(jié)尾時(shí)觸發(fā)的方法
*/
videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
Log.i("通知", "完成");
}
});
videoView.setOnErrorListener(new MediaPlayer.OnErrorListener() {
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
Log.i("通知", "播放中出現(xiàn)錯(cuò)誤");
return false;
}
});
}
}
video.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="horizontal">
<VideoView android:layout_height="match_parent" android:id="@+id/videoView1"
android:layout_width="wrap_content"></VideoView>
</LinearLayout>
當(dāng)然,我們也可以播放網(wǎng)絡(luò)上的多媒體。
- Android使用VideoView播放本地視頻和網(wǎng)絡(luò)視頻的方法
- Android提高之MediaPlayer播放網(wǎng)絡(luò)視頻的實(shí)現(xiàn)方法
- Android使用VideoView出現(xiàn)無(wú)法播放此視頻問(wèn)題的解決方法
- Android播放assets文件里視頻文件相關(guān)問(wèn)題分析
- Android如何讓W(xué)ebView中的HTML5頁(yè)面實(shí)現(xiàn)視頻全屏播放
- 一個(gè)html5播放視頻的video控件只支持android的默認(rèn)格式mp4和3gp
- Android自定義SeekBar實(shí)現(xiàn)視頻播放進(jìn)度條
- android webvie指定視頻播放器播放網(wǎng)站視頻
- android視頻播放簡(jiǎn)單實(shí)現(xiàn)示例(VideoView&MediaPlayer)
- Android實(shí)現(xiàn)音樂(lè)視頻播放
相關(guān)文章
Android studio實(shí)現(xiàn)簡(jiǎn)單的計(jì)算器
這篇文章主要為大家詳細(xì)介紹了Android studio實(shí)現(xiàn)簡(jiǎn)單的計(jì)算器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-03-03
Cocos2d-x入門教程(詳細(xì)的實(shí)例和講解)
這篇文章主要介紹了Cocos2d-x入門教程,包括詳細(xì)的實(shí)例、講解以及實(shí)現(xiàn)過(guò)程,需要的朋友可以參考下2014-04-04
kotlin中EditText賦值Type mismatch方式
這篇文章主要介紹了kotlin中EditText賦值Type mismatch方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-03-03
安卓(Android)開發(fā)之統(tǒng)計(jì)App啟動(dòng)時(shí)間
當(dāng)大家要改善APP啟動(dòng)速度優(yōu)化的時(shí)候,首先要知道App的啟動(dòng)時(shí)間,那么改如何統(tǒng)計(jì)時(shí)間呢,下面我們一起來(lái)看看。2016-08-08
Android使用內(nèi)置WebView打開TextView超鏈接的實(shí)現(xiàn)方法
這篇文章主要介紹了Android使用內(nèi)置WebView打開TextView超鏈接的實(shí)現(xiàn)方法,文中給出了詳細(xì)的示例代碼,對(duì)各位Android開發(fā)者們具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-03-03
Android AOP 注解詳解及簡(jiǎn)單使用實(shí)例(三)
這篇文章主要介紹了Android AOP 注解詳解及簡(jiǎn)單使用實(shí)例(三)的相關(guān)資料,需要的朋友可以參考下2017-03-03
Android實(shí)現(xiàn)多維商品屬性SKU選擇
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)多維商品屬性SKU選擇,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-10-10
解決android studio 打包發(fā)現(xiàn)generate signed apk 消失不見問(wèn)題
這篇文章主要介紹了解決android studio 打包發(fā)現(xiàn)generate signed apk 消失不見問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-09-09
android開發(fā)教程之handle實(shí)現(xiàn)多線程和異步處理
這篇文章主要介紹了android的handle實(shí)現(xiàn)多線程和異步處理的示例,大家參考使用吧2014-01-01
android實(shí)現(xiàn)音樂(lè)跳動(dòng)效果的示例代碼
這篇文章主要介紹了android實(shí)現(xiàn)音樂(lè)跳動(dòng)效果的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04

