Java 我正在制作在线媒体播放器应用程序。。它工作得很好,但当我点击下一步按钮时,我无法播放下一首歌

Java 我正在制作在线媒体播放器应用程序。。它工作得很好,但当我点击下一步按钮时,我无法播放下一首歌,java,android,android-layout,Java,Android,Android Layout,我正在制作在线媒体播放器应用程序。。它工作得很好,但当我点击下一步按钮时,我无法播放下一首歌 球员级别 public class Player extends AppCompatActivity { Intent i; String sname,sid,spath; ImageButton play; Button nxt; MediaPlayer mp; ArrayList list; @Override protected

我正在制作在线媒体播放器应用程序。。它工作得很好,但当我点击下一步按钮时,我无法播放下一首歌

球员级别

public class Player extends AppCompatActivity {

    Intent i;
    String sname,sid,spath;
    ImageButton play;
    Button nxt;
    MediaPlayer mp;
    ArrayList list;

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

        play = (ImageButton)findViewById(R.id.play_pause);


        nxt = (Button) findViewById(R.id.next);

        nxt.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

            // NO IDEA WHAT TO DO NOW
            }
        });

        play.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                mp = MediaPlayer.create(Player.this,Uri.parse(spath));


                if(mp.isPlaying()){
                    if(mp!=null){
                        mp.pause();
                        // Changing button image to play button
                        play.setImageResource(R.drawable.uamp_ic_play_arrow_white_48dp);
                    }
                }else{
                    // Resume song
                    if(mp!=null){
                        mp.start();
                        // Changing button image to pause button
                        play.setImageResource(R.drawable.uamp_ic_pause_white_48dp);
                    }
                }
        }
        });

        i=getIntent();

        sid=i.getStringExtra("sid");
        sname=i.getStringExtra("sname");
        spath=i.getStringExtra("spath");

    }
    @Override
    public void onBackPressed() {
        startActivity(new Intent(Player.this, song_list.class));
        finish();
        super.onBackPressed();
    }
}
歌曲列表类

public class song_list extends AppCompatActivity  {

    ListView listView;
    ArrayList<pojonew> list;
    String result,url;
    json js;


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

        listView = (ListView)findViewById(R.id.songs);


        url="https://heeled-pipe.000webhostapp.com/select.php";
        new SongData().execute();


        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

                pojonew p=(pojonew)list.get(position);
                String sid=p.getId();
                String sname=p.getName();
                String spath=p.getPath();
                Intent i = new Intent(song_list.this,Player.class);
                i.putExtra("sid",sid);
                i.putExtra("sname",sname);
                i.putExtra("spath",spath);
                startActivity(i);
            }
        });

    }
公共类歌曲列表扩展了AppCompative活动{
列表视图列表视图;
数组列表;
字符串结果,url;
json-js;
@凌驾
创建时受保护的void(@Nullable Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.song_列表);
listView=(listView)findViewById(R.id.songs);
url=”https://heeled-pipe.000webhostapp.com/select.php";
new SongData().execute();
setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
pojonewp=(pojonew)list.get(position);
字符串sid=p.getId();
字符串sname=p.getName();
String spath=p.getPath();
意图i=新意图(歌曲列表。这个,播放器。类);
i、 putExtra(“sid”,sid);
i、 putExtra(“sname”,sname);
i、 putExtra(“spath”,spath);
星触觉(i);
}
});
}
SONGDATA类

    class SongData extends AsyncTask<Void, Void , Void>
    {


        @Override
        protected Void doInBackground(Void... params) {
            js = new json();
            list = new ArrayList<>();
            result = js.getdatafromurl(url);

            Log.d("url",url);

            try {
                JSONObject jo = new JSONObject(result);

                JSONArray ja= jo.getJSONArray("data");
                for (int i=0;i<ja.length();i++){
                    JSONObject jo1 = ja.getJSONObject(i);
                    pojonew sp = new pojonew();
                    sp.setId(jo1.getString("id"));
                    sp.setName(jo1.getString("name"));
                    sp.setPath(jo1.getString("path"));

                    list.add(sp);

                }
            } catch (JSONException e) {
                e.printStackTrace();
            }

            return null;
        }

        @Override
        protected void onPostExecute(Void aVoid) {
            super.onPostExecute(aVoid);
            custadapter n=new custadapter(list,song_list.this);
            listView.setAdapter(n);
        }
    }
}
class SongData扩展异步任务
{
@凌驾
受保护的Void doInBackground(Void…参数){
js=newjson();
列表=新的ArrayList();
结果=js.getdatafromurl(url);
Log.d(“url”,url);
试一试{
JSONObject jo=新的JSONObject(结果);
JSONArray ja=jo.getJSONArray(“数据”);

对于(int i=0;i,单击播放按钮可获取列表数据项的位置 并调用下面的方法

    public ModelClass loadNext(String id) {
    ModelClass nextAudio = null;

    int pos = 1;
    for (int index = 0; index < FileList.size(); index++) {
        if (ModelClass.get(index).getFileUID().equals(id)) {
            pos = index + 1;
            break;
        }
    }

    if (pos != AudioFileList.size())
        nextAudio = AudioFileList.get(pos);

    return nextAudio;
}
公共模型类loadNext(字符串id){ ModelClass nextAudio=null; int pos=1; 对于(int index=0;index
点击列表视图,加载媒体播放器即可播放