Аудио поток работает медленно при использовании анимации - PullRequest
0 голосов
/ 31 января 2012

Я использую сервис для запуска фоновой музыки для всего приложения. Служба помечает задачу Async для воспроизведения аудиофайла. Для действий, в которых нет анимации, музыка работает хорошо. но для действий, у которых есть анимация, музыка продолжает ломаться или, может быть, говорит, что работает медленно (я надеюсь, что смогу выразить).

Я не понимаю, в чем проблема, потому что все работает нормально, кроме звука только на этом конкретном экране

Это потому, что я использую эмулятор и в реальном устройстве он будет работать? или есть способ сделать это в эмуляторе.

спасибо, что ответили.

Ответы [ 2 ]

0 голосов
/ 12 февраля 2012

Две вещи, которые решили эту проблему

  1. Использование AmimationDrawable вместо класса AnimationUtils (мерцание звука только во время навигации)
  2. Увеличение размера кучи avd (даже это небольшое мерцание былоустранено после этого)
0 голосов
/ 31 января 2012

Запустите анимацию в отдельном потоке. Это поможет, но убедитесь, что вы используете обработчики. Потому что представления могут быть изменены только из исходного потока.

Сделайте это следующим образом:

    final Handler myHandler = new Handler();

    (new Thread(new Runnable() {

        @Override
        public void run() {
            //do long calculations here
            myHandler.post(new Runnable() {

                @Override
                public void run() {
                  //set your views here
                    }
                }
            });
        }
    })).start();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...