Хорошо, я сделал простое радио приложение, которое транслирует музыку с моей университетской радиостанции. Проблема, с которой я столкнулся, заключается в том, что время, необходимое приложению для подготовки потока, приводит к тому, что кнопка воспроизведения перестает отвечать на запросы.
Подробности:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mp = new MediaPlayer();
initializeUI();
setSource();
preparedNotify();
prepareMP();
}
void initializeUI() {...
}
void setSource() {...
}
void prepareMP() {
mp.prepareAsync();
}
Как вы можете видеть, приложение запускает prepareAsync, как только вызывается onCreate, но если пользователь нажимает кнопку воспроизведения до того, как он будет подготовлен, ничего не произойдет, что приведет к созданию плохого UX.
Итак, суть моего вопроса: могу ли я что-либо сделать с
а) сократить время на подготовку потока
b) запретить пользователю нажимать кнопку до готовности, сохраняя при этом плавный UX