AsyncPlayer是Android实现异步音乐播放的一个类,它将要播放的媒体文件封装成内部类Commandprivate 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,线程便停止。