Я хочу воспроизвести некоторые mp3 из настроек будильника, которые я пробовал. Пока приложение открыто, все mp3, записанные в коде, воспроизводятся. Но после закрытия приложения воспроизводится только первый Mp3, что тоже неполностью сыграно. Почти половина остановок после воспроизведения. Пожалуйста, объясните мне, почему это происходит.
public class SetNewAaratiAlarmReceiver extends BroadcastReceiver {
// MediaPlayer mp;
MediaPlayer mediaPlayer , mp;
String audioFile = "https://aashriyatechnology.000webhostapp.com/dev%20chalisha/sri%20hanumaan/Aarti-Kijey-Hanumaan-Lala-Ki.mp3";
// Context context;
@Override
public void onReceive(final Context context, Intent intent) {
// TODO: This method is called when the BroadcastReceiver is receiving
// an Intent broadcast.
mp=MediaPlayer.create(context, R.raw.shankh );
mp.start();
Toast.makeText(context, "Alarm........", Toast.LENGTH_LONG).show();
mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
//finish(); // finish current activity
Toast.makeText(context, "Alarm finish", Toast.LENGTH_LONG).show();
mediaPlayer = new MediaPlayer();
try {
mediaPlayer.setDataSource(audioFile);
mediaPlayer.prepareAsync();
Toast.makeText(context, "new Alarm string", Toast.LENGTH_LONG).show();
mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
public void onPrepared(final MediaPlayer mediaPlayer) {
Toast.makeText(context, "Alarm 1234", Toast.LENGTH_LONG).show();
mediaPlayer.start();
}
});
} catch (IOException e) {
mp=MediaPlayer.create(context, R.raw.bellmusic );
mp.start();
Toast.makeText(context, "file_not_found", Toast.LENGTH_LONG).show();
}
mediaPlayer.setLooping(true);//set looping true to run it infinitely
// mediaPlayer.setLooping(false);
mediaPlayer.setVolume(100,100);
}
});
}
}
Я написал файл манифеста
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.INTERNET" />
<receiver
android:name=".SetNewAaratiAlarmReceiver"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>