歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Android多媒體-----AsyncPlayer

Android多媒體-----AsyncPlayer

日期:2017/3/1 10:46:00   编辑:Linux編程

AsyncPlayer是Android實現異步音樂播放的一個類,它將要播放的媒體文件封裝成內部類Command

private static final class Command {
int code; //PLAY = 1 ,STOP = 2
Context context; //上下文
Uri uri; //文件uri
boolean looping; //是否循環
int stream; //audio stream type
long requestTime;
//......
}
}

為了實現多個音樂播放,所有command都加在了 LinkedList中

當調用play或者stop方法的時候,會根據參數封裝成一個command對象,啟動一個thread,thread中會把LinkedList的第一個command彈出,根據command的code去判斷是要播放還是停止,播放調用startSound()方法,停止則釋放所有資源,當LinkedList中沒有command,線程便停止。

Copyright © Linux教程網 All Rights Reserved