0
İyi çalışan bir MediaPlayer var ve durdurma düğmesi tamam çalışıyor. Bununla birlikte, kullanıcı etkinliğe gider ve herhangi bir müzik çalmadan durdurma düğmesine basarsa, uygulama çöker. Bir şarkı çalınırsa, kullanıcı durdurma düğmesine istediği kadar basabilir ve iyi çalışır. Herhangi bir yardım harika olurdu!MediaPlayer Durdurma Düğmesi Çöküyor Uygulaması
public class Website extends AppCompatActivity {
private MediaPlayer mp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.gridviewmusic);
GridView gridView = (GridView) findViewById(R.id.gridview);
gridView.setAdapter(new MyAdapter(this));
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
switch (position) {
case 0:
stopPlaying();
mp = MediaPlayer.create(Website.this, R.raw.sound1);
mp.start();
// This will make sound
break;
case 1:
stopPlaying();
mp = MediaPlayer.create(Website.this, R.raw.sound2);
mp.start();
break;
case 2:
stopPlaying();
mp = MediaPlayer.create(Website.this, R.raw.sound3);
mp.start();
break;
case 3:
stopPlaying();
mp = MediaPlayer.create(Website.this, R.raw.sound4);
mp.start();
break;
case 4:
stopPlaying();
mp = MediaPlayer.create(Website.this, R.raw.sound5);
mp.start();
break;
case 5:
Intent i = new Intent(Intent.ACTION_VIEW,
Uri.parse("https://play.google.com/store/music/"));
startActivity(i);
break;
}
}
});
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (mp.isPlaying()) {
mp.pause();
mp.seekTo(0);
}
}
});
}
private void stopPlaying() {
if (mp != null) {
mp.stop();
mp.release();
mp = null;
}
}
@Override
public void onBackPressed() {
super.onBackPressed();
if(mp!= null)
{
mp.stop();
mp=null;
}
this.finish();
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
NavUtils.navigateUpFromSameTask(this);
if(mp!= null)
{
mp.stop();
mp=null;
}
return true;
default:
return super.onOptionsItemSelected(item);
}
}
}
Thankyou, işe yaradı! Yapabileceğim en kısa zamanda cevabınızı doğru yazacaktır. – user2407147