實驗十:影片播放
實驗十 實驗主題: 實驗目的: 環境需求: 建立一個影片播放應用程式 藉由實驗程式學習VideoView使用方式 Java SE Development Kit (JDK) Android SDK Eclipse ADT 本實驗會使用VideoView元件來播放專案資源檔中的影片
實驗十範例 程式會播放影片,播放時可以暫停/繼續播放,也可以快進、快退
建立並執行實驗程式
res/layout/activity_main.xml 2 1 3 將VideoView元件拖入線性佈局中,其元件代號為android:id="@+id/videoView1" 在res中新增一個raw資料夾,並將android 支援的影片拖入raw資料料夾中,請注意影片檔案名稱,須符合資源名稱命名規則
src/MainActivity.java public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); VideoView videoView = (VideoView) findViewById(R.id.videoView1); /* 產生MediaController物件 */ MediaController mediaController = new MediaController(this); /* 將VideoView與MediaController連結 */ videoView.setMediaController(mediaController); /* 使用URI設定播放來源為res/raw/movie.mp4資源 */ videoView.setVideoURI (Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.movie)); /* 取得視窗焦點後開始播放 */ videoView.requestFocus(); videoView.start(); //開始播放 } 4 5 6 4. 利用findViewById()方法將VideoView從XML佈局檔中找到 5. 利用MediaController 類別直接產生內建的播放控制項物件 6.利用VideoView類別的setMediaController()方法設定的播放控制項,參數為第5步驟產生的播放控制項物件 7.利用VideoView類別的setVideoURI()方法,設定要播放的多媒體來源,參數須為Uri物件,在此因為要播放專案中res/raw資料夾內的資源檔,利用其Uri類別方法parse()產生Uri物件,參數為資源網址,需使用android.resource://套件名稱/音樂資源索引,如:android.resource://tw.edu.ncu.ce.bnlab.videoviewex/資源索引值 8. 利用VideoView類別的requestFocus() 方法,取得視窗焦點 9. 呼叫VideoView類別的start() 方法,開始播放 完成,執行程式 7 8 9
VideoViewEx執行 依照程式碼,會播放專案目錄res/raw/movie.3gp資源檔 播放時可以快進、倒轉、跳轉播放以及暫停
Q & A