Android N Audio播放一:如何播放一首音樂

  衆所周知,Android提供豐富的API供應用開發者開發各種各樣的應用。同樣對於開發多媒體相關的應用,Android也提供了非常豐富的API, 可以參考Android中文開發者網站的media部分。
https://developer.android.google.cn/reference/android/media/package-summary.html

  要實現播放一首音樂,使用MediaPlayer這個類,只需如下簡單的幾步。

player.setDataSource(path);
player.prepare();
player.start();

以下是我寫的一個簡單的Demo, 播放sdcard上的Test.mp3文件。

package com.jaychou.musicdemo;

import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
import android.view.View;
import android.widget.Button;

import java.io.IOException;


public class MainActivity extends Activity {
    private Button play;
    private Button stop;
    private MediaPlayer player;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        play = (Button)findViewById(R.id.play);
        stop = (Button)findViewById(R.id.stop);
        player = new MediaPlayer();
        play.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                play();
            }
        });

        stop.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if(player.isPlaying()){
                    player.stop();
                }
            }
        });

    }

    private void play(){
        try {
            String path = Environment.getExternalStorageDirectory().getAbsolutePath()+"/Music/Test.mp3";
            player.setDataSource(path);
            Log.d("Jaychou","MusicDemo setDataSource");
            player.prepare();
            Log.d("Jaychou","MusicDemo Prepare");
            player.start();
        } catch (IOException e) {
            e.printStackTrace();
            Log.d("Jaychou","err when play");
        }
    }
}

注意:這份代碼是跑在Android N上面的,android在6.0上推出了運行時權限,以上代碼在Android 6.0及其以上版本需要添加權限處理的代碼。 這裏也可以直接在Settings中將MusicDemo的Storage權限手動打開。

如圖:

點擊如下圖的PLAY MUSIC就可以播放Test.mp3了。

發佈了15 篇原創文章 · 獲贊 17 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章