Проблема заключается в том, что бывает, при первом за день запуске приложения, SoundPool не воспроизводит мелодию. Activity запускается, а мелодии нет. Хотя при последующих запусках SoundPool работает без проблем и мелодия запускается.
Таким образом я объявляю SoundPool и id мелодии:
SoundPool soundPool; //Soundpool
int soundID; //Id мелодии
Таким образом я инициализирую SoundPool, загружаю и запускаю мелодию:
soundPool=new SoundPool(10, AudioManager.STREAM_ALARM,0); //Инициализируем SoundPool
soundID= soundPool.load(this, R.raw.mysound,1); //Загружаем мелодию
soundPool.play(soundID, 1, 1, 1, -1, 1); //Запускаем мелодию
Могу предположить, что SoundPool не успевает загружаться, однако при незамедлительной переустановке приложения и повторной проверке всё работает.
Если ошибка может быть в самом Activity, то для полноты картины объясню. У меня есть Activity, которое запускается в определённый момент времени при помощи AlarmRecever. Чтобы оно запускалось, когда устройство находится в спящем режиме, то в Activity используется этот код:
@Override
public void onAttachedToWindow() {
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED | WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON,
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED | WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON | WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
this.getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
}
Надеюсь изложил проблему понятно. Рассчитываю на вашу помощь.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
После использования CosturaFody почти все dll пошли в exe, но пару dll, которые в папках, не могу закинуть в exe
Есть C# проект с GUIЕсть задача реализовать отправку сообщения по нажатию кнопки с сервера клиенту