Reputation: 35
of what I'm trying to accomplish, I've also tried an if statement, where I tested, if the mp.isplaying() and did mp.stop but no luck. this is all within the main class of the project. I do not have anything in the oncreate method
public class MainActivity extends AppCompatActivity {
MediaPlayer mp;
public void buttonTapped(View view){
int id = view.getId();
String ourId = "";
ourId = view.getResources().getResourceEntryName(id);
int resourceId = getResources().getIdentifier(ourId, "raw", getPackageName());
mp = MediaPlayer.create(this, resourceId);
mp.start();
mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
mp.release();
}
});
// Log.i("Stuff", viewId);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
Upvotes: 1
Views: 68
Reputation: 2295
The code within * * should get the problem solved.
public void buttonTapped(View view){
int id = view.getId();
String ourId = "";
ourId = view.getResources().getResourceEntryName(id);
int resourceId = getResources().getIdentifier(ourId, "raw", getPackageName());
***if(mp!=null){
mp.release();
mp=null;
}***
mp = MediaPlayer.create(this, resourceId);
mp.start();
mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
mp.release();
}
});
// Log.i("Stuff", viewId);
}
Upvotes: 1
Reputation: 71
Try below code :-
try
{
MediaPlayer mp = new MediaPlayer(); mp.setDataSource(birdsUrlList.get(position).getUrl_audio());
mp.prepare();
mp.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
mp.start();
}
});
mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) { mp.stop()
mp.release();
}
});
//startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(birdsUrlList.get(position).getUrl_video()))); } catch (Exception e) { e.printStackTrace(); } }
Upvotes: 0