简单Android应用程序中的MP3音频重叠

简单Android应用程序中的MP3音频重叠,android,audio,mp3,Android,Audio,Mp3,我必须制作一个应用程序,在用户进入某个特定活动的第一刻播放音频 该应用程序只是一个任务列表,无论何时创建任务或单击“查看任务”按钮,该活动都将启动,歌曲也将随之启动 到目前为止,一切都很好(我想)。这个想法是,歌曲将继续播放,直到用户点击“任务列表”活动中的“停止音乐”按钮(与音频开始的按钮相同) 因此,如果我去“添加任务”,这首歌就会继续。当然,问题是,每当用户再次进入“任务列表”活动时,歌曲就会再次开始,而前一首歌实际上会继续(这个过程可以无限次重复)。当我问我的教授时,他非常含糊地说“使用

我必须制作一个应用程序,在用户进入某个特定活动的第一刻播放音频

该应用程序只是一个任务列表,无论何时创建任务或单击“查看任务”按钮,该活动都将启动,歌曲也将随之启动

到目前为止,一切都很好(我想)。这个想法是,歌曲将继续播放,直到用户点击“任务列表”活动中的“停止音乐”按钮(与音频开始的按钮相同)

因此,如果我去“添加任务”,这首歌就会继续。当然,问题是,每当用户再次进入“任务列表”活动时,歌曲就会再次开始,而前一首歌实际上会继续(这个过程可以无限次重复)。当我问我的教授时,他非常含糊地说“使用广播信号”。我用它们做了一些愚蠢的事情(每当收到正确的信号时就打印一条消息),但我不知道这与我的情况有什么关系。我的主要代码(与任务列表相关)是:

公共静态ArrayList ArrayofName=new ArrayList();
MediaPlayer onepunchftw;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
//视图=充气机。充气(R.layout.activity\u任务列表,容器,false);
setContentView(R.layout.activity\u任务列表);
最终按钮stopmusicbutton=(按钮)findViewById(R.id.stopaudiobutton);
//最终按钮gotostartbutton=(按钮)findViewById(R.id.startbutton);
onepunchftw=MediaPlayer.create(Tasklist.this,R.raw.onepunchmanintro);
stopmusicbutton.setOnClickListener(
新建视图。OnClickListener(){
公共void onClick(视图v){
//按钮音乐点击(v);
if(onepunchftw.isPlaying()){
一个punchftw.pause();
stopmusicbutton.setText(“恢复音频”);
}否则{
onepunchftw.start();
stopmusicbutton.setText(“停止音频”);
}
}
}
);
MyDBHandler db=新的MyDBHandler(此);
List task=db.getAllTasks();
db.getAllTasks();
ListView l=(ListView)findViewById(R.id.taskList);
ListAdapter=新的CustomAdapter(此为ArrayofName);
l、 设置适配器(适配器);
l、 setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
Toast.makeText(getApplicationContext(),“单击”,Toast.LENGTH_LONG.show();
}
});
}
你们中有谁能帮助我吗

public static ArrayList<String> ArrayofName = new ArrayList<String>();

MediaPlayer onepunchftw;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    //View view = inflater.inflate(R.layout.activity_tasklist, container, false);
    setContentView(R.layout.activity_tasklist);
    final Button stopmusicbutton = (Button) findViewById(R.id.stopaudiobutton);
    //final Button gotostartbutton = (Button) findViewById(R.id.startbutton);
    onepunchftw = MediaPlayer.create(Tasklist.this, R.raw.onepunchmanintro);
    stopmusicbutton.setOnClickListener(
            new View.OnClickListener() {
                public void onClick(View v) {
                    //buttonmusicclicked(v);
                    if (onepunchftw.isPlaying()) {
                        onepunchftw.pause();
                        stopmusicbutton.setText("Resume Audio");
                    } else {
                        onepunchftw.start();
                        stopmusicbutton.setText("Stop Audio");
                    }
                }
            }

    );

    MyDBHandler db = new MyDBHandler(this);

    List<Tasks> task =db.getAllTasks();

    db.getAllTasks();

    ListView l = (ListView) findViewById(R.id.taskList);
    ListAdapter adapter = new CustomAdapter(this, ArrayofName);
    l.setAdapter(adapter);
    l.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            Toast.makeText(getApplicationContext(),"Clicked", Toast.LENGTH_LONG).show();
        }
    });
}