#android #user-interface #stream #audiotrack
#Android #пользовательский интерфейс #поток #audiotrack
Вопрос:
Я пытаюсь воспроизводить звук непрерывно, и я создал аудиодорожку в потоковом режиме. Это работает, но каждый раз, когда слушатель реагирует и записывает новый пакет данных в буфер, пользовательский интерфейс зависает на некоторое время. Трек вместе со слушателями находится в их собственном потоке, и потоку задан минимальный приоритет.
Что я делаю не так?
Для моих целей я, вероятно, мог бы использовать метод цикла, но я хочу понять, как передавать звук, не блокируя пользовательский интерфейс.
Заранее спасибо.
Ответ №1:
Вы выполняете запись в отдельном потоке? Это то, что действительно важно. Попробуйте использовать для этого AsyncTask. Если вы хотите получить дополнительный кредит, вы можете прочитать статью о безболезненной потоковой передаче, чтобы узнать некоторые приятные подробности. Вы должны стараться избегать создания потоков вручную. Управление ими может быть затруднительным, и есть вероятность, что вы можете облажаться. Например, я надеюсь, что вы используете платформу воспроизведения мультимедиа Android для обработки фактического воспроизведения звука для вас.