Как предотвратить повреждение файлов?

Я делаю и записываю заявку. И большая проблема для меня заключается в том, что когда пользователь нажимает кнопку записи (я использую пользовательский рекордер, а не намерение по умолчанию), и если они снова быстро его нажимают, или MediaRecorder выдает исключение, или видеофайл будет поврежден. Я пытался установить Enabled() на кнопки, но это не работает... я не знаю почему, кажется, что они не отключены по какой-то причине...

Может кто-нибудь помочь мне с этим?

1 ответ

Не больно иметь более одного уровня проверки. В дополнение к setEnabled(false) для вашей кнопки записи, попробуйте добавить логику, чтобы предотвратить грязную запись. Код предполагает, что вы работаете в одном потоке.

boolean inProgress;

onClick()
{
    inProgress = true;
    record();
}

public boolean record()
{
    if(!inProgress)
    {
        // record sound
        // don't forget to reset inProgress if record success/fail
    }
}
Другие вопросы по тегам