Intereting Posts
IONIC Framework Проблема производительности мобильных приложений Контрольные суммы MD5 файлов Android APK различаются. Зачем? Как разместить веб-страницу на экране Android (веб-просмотр)? Отключение кнопки отправки клавиатуры, когда ничего не было введено Шифрование RSA с открытым ключом с кодировкой base64 в Android Как реализовать SQLCipher при использовании SQLiteOpenHelper Как скрыть клавиатуру после ввода в EditText в android? Восстановление иерархии представлений из сохраненного состояния не восстанавливает добавленные представления Использовать карты Google в автономном режиме в приложении В сообщении Android Studio «Paint.setShadowLayer .. графика не точная ..» без этого кода Совместим ли arm64-v8a с armeabi-v7a? Как изменить размер шрифта в целом программном приложении, Android? Android SQLite: заявление о обновлении Как сделать независимую прокрутку строк и столбцов (приложение la Netflix) на Android в WebView? Royalty Free Background Images для Android-приложений

Как вы обнаруживаете, когда звуковой файл закончил?

Я воспроизвожу звуковой файл, используя этот код внутри вещательного приемника:

notification.sound = Uri.parse("android.resource://emad.app/raw/seven_chimes"); 

Я хотел бы узнать, когда этот файл закончил игру.

Я пробовал такой цикл, но я думаю, что это хорошо для медиаплеера, потому что он всегда = false, хотя я убедился, что звуковой файл все еще играет:

 /* * Stay here until the chime sound is finished. */ while (manager.isMusicActive()){ } 

Можете ли вы показать мне, что я должен использовать вместо manager.isMusicActive ()

Благодарю.

Действительно, Эмад

Solutions Collecting From Web of "Как вы обнаруживаете, когда звуковой файл закончил?"

Вы можете использовать класс MediaPlayer и добавить слушателя Completion, который будет активирован, когда звук завершит воспроизведение

 MediaPlayer mp = MediaPlayer.create(this,Uri.parse("android.resource://emad.app/raw/seven_chimes")); mp.setOnCompletionListener(new OnCompletionListener() { @Override public void onCompletion(MediaPlayer mp) { performOnEnd(); } }); mp.start(); 

Попробуйте использовать сервис для воспроизведения музыки .. после того, как он будет воспроизводиться один раз, а затем остановите свое обслуживание, и вы можете добавить свою программу в сервисный метод onDestroy (). Надеюсь, это поможет 🙂