Воспроизведение звука на картах - PullRequest
0 голосов
/ 13 марта 2020

У меня есть приложение с картами в стеке (много карт - около 500)

I компонент карты, который я добавил:

function getVoice() {
    try {
        const mySound = new Sound(getSoundName(id), Sound.MAIN_BUNDLE,
            (error) => {
                if (error) {
                    Alert.alert('Error:', error.message)
                    return;
                }
            })

        if (mySound != null) {
            mySound.play((success, error) => {
                if (success) {
                    Alert.alert('success')
                } else {
                    Alert.alert('err')
                }
                mySound.release()
            })
        }
    }
    catch{

    }
};

Здесь выдается предупреждение err

Что не так?

Я попробовал другой вариант.

Я позвонил new Sound() в начале загрузки компонента

Здесь воспроизводился звук, но он работает на 8 картах. Позже происходит та же ошибка, что и сейчас

1 Ответ

0 голосов
/ 13 марта 2020

Работает нормально:

const getVoice = () => {
    try {
        const sound = new Sound(getSoundName(id), null, (error) => {
            if (error) {
                return;
            }

            sound.play();
        });
    }
    catch{
    }
};
...