實驗6 在應用程序中播放音頻和視頻

課程名稱java

基於Android平臺移動互聯網開發android

實驗日期網絡

2016-4-15app

實驗項目名稱ide

在應用程序中播放音頻和視頻函數

實驗地點測試

S3009this

實驗類型spa

□驗證型    √設計型    □綜合型操作系統

學  時

2

1、實驗目的及要求(本實驗所涉及並要求掌握的知識點)

1)   實現播放音頻,音頻播放控制;

2)   實現播放視頻,視頻播放控制;

3)   使用Service服務播放項目源文件中的音樂。

 

2、實驗環境(本實驗所使用的硬件設備和相關軟件)

(1)PC機

(2)操做系統:Windows XP

(3)軟件: Eclipse, JDK1.6,Android SDK,ADT

3、實驗內容及步驟

完善Activity類

 /***

 * 這個類主要用來測試調用Andriod.media.MediaPlayer包裏面的函數實現音樂播放的功能,

 * 分別播放了工程中資源文件中的音樂文件、本地文件系統中的文件,以及網絡上的音樂;

 * 視頻播放功能,使用了VideoView控件;

 * 代碼中指定了本地文件系統中音頻和視頻文件的路徑,在測試本程序前請按照代碼中的路徑和音頻、視頻文件的名稱在手機中添加文件;

新建Service類,使用Service服務播放項目源文件中的音樂,實現後臺繼續能播放音頻

package com.example.mediaplayer;

import java.io.IOException;

import android.media.MediaPlayer;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.widget.VideoView;

public class MainActivity extends Activity {
    
    
    private Button btn1,btn2,btn3,btn4,btn5,btn6;
    private MediaPlayer mplayer=new MediaPlayer();
    private TextView text;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        btn1=(Button) findViewById(R.id.button1);
        btn2=(Button) findViewById(R.id.button2);
        btn3=(Button) findViewById(R.id.button3);
        btn4=(Button) findViewById(R.id.button4);
        btn5=(Button) findViewById(R.id.button5);
        btn6=(Button) findViewById(R.id.button6);
        text=(TextView) findViewById(R.id.textView2);
        final Intent intent=new Intent();
        
        btn1.setOnClickListener(new OnClickListener() {
            
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                mplayer=MediaPlayer.create(MainActivity.this,R.raw.leon);
                mplayer.start();
                text.setText("正在播放源文件中的音樂!");
            }
        });
        
        btn2.setOnClickListener(new OnClickListener() {
            
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                mplayer.reset();
                try {
                    mplayer.setDataSource("/sdcard/today.mp3");
                } catch (IllegalArgumentException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                } catch (SecurityException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                } catch (IllegalStateException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                try {
                    mplayer.prepare();
                } catch (IllegalStateException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                mplayer.start();
                text.setText("正在播放sd卡中的音樂!");
            }
        });
        btn3.setOnClickListener(new OnClickListener() {
            
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                text.setText("正在播放網絡中的音樂!");
            }
        });
        btn4.setOnClickListener(new OnClickListener() {
            
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
//                mplayer.pause();
                mplayer.stop();
                text.setText("中止播放音樂!");
            }
        });
        btn5.setOnClickListener(new OnClickListener() {
            
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                mplayer.stop();
                text.setText("正在播放視頻!");
            }
        });
        btn6.setOnClickListener(new OnClickListener() {
            
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                System.exit(0);
                
            }
        });
    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
    
}

    

5、實驗總結(對本實驗結果進行分析,實驗心得體會及改進意見)

    完成此次實驗的過程當中老是遇到一些小問題,致使不能順利準時的完成實驗,但是經過此次的實驗也能夠了解到本身的不足。

相關文章
相關標籤/搜索