Проблема воспроизведения звука на устройстве iPad с MonoTouch - PullRequest
2 голосов
/ 09 мая 2011

Я использую следующий код для воспроизведения файла .CAF в приложении iPad через Monotouch:

        public void PlayClick()
        {
            PlaySound("Media/Click.caf");
        }

        private void PlaySound(string soundFile)
        {
            //var mediaFile = NSUrl.FromFilename(soundFile);
            //var audioPlayer = new SystemSound(mediaFile);
            //audioPlayer.PlaySystemSound();
            var audioPlayer = new SystemSound(soundFile);
            if (audioPlayer != null)
            {
               audioPlayer.PlaySystemSound();
            }
        }

Это работает, найдите в симуляторе - фактически все варианты, которые я пробовал (SystemSound,AVAudioPlayer и т. Д.) В симуляторе работают нормально, но я еще не получил версию для воспроизведения на реальном устройстве.Все звуковые файлы помечены как «Контент», и я проверил пакет, загруженный на iPad, и эти файлы определенно находятся в подпапке «Медиа».Если я изменяю код для использования SystemSound (через конструктор с Url), я получаю InvalidOperationException с деталями:

Не удалось создать системный идентификатор звука для файла URL: //localhost/private/var/mobile/Applications/AC24496E-12E9-4690-B154-BA1AD1123EDC/Sample.app/Media/Click.caf;ошибка = SystemSoundUnspecified

Кто-нибудь знает, что я делаю не так?Спасибо за любые подсказки, чтобы вывести меня из этой проблемы!

1 Ответ

1 голос
/ 09 мая 2011

Симулятор учитывает регистр, но фактическое устройство чувствительно к регистру. Это споткнуло многих людей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...