Я разрабатываю простую игру для Android с использованием Adobe Air, но при воспроизведении на устройстве есть некоторая задержка звуковых эффектов. Я проверил звук (файл mp3), есть ли в начале тишина, но в звуковом файле нет тишины. Поэтому я подумал, что могу разработать ANE, чтобы воспроизводить звуки и избегать задержки звука. Теперь проблема с ANE заключается в том, что он выдает ошибку ввода-вывода при попытке доступа к mp3-файлу. Я новичок в создании ANE, и я не могу заставить это работать. У меня есть mp3-файл в папке res / raw по имени snd.mp3, и у меня есть папка res, скопированная в папку Android-ARM и упакованную ANE вместе со звуками.jar и library.swf. Я использую SoundPool
для воспроизведения звука.
Я попытался получить доступ к звуку, передав строку функции загрузки SoundPool
:
sp.load("android.resource://" +
freContext.getActivity().getPackageName() +
freContext.getResourceId("raw.snd"));
Однако resourceId дает уникальный номер, который показывает, что звуковой файл существует, но я не могу воспроизвести звук. Я тоже пробовал с MediaPlayer
, то же самое. Выдает ошибку ввода-вывода. Есть ли что-то, что я делаю неправильно или упускаю? Любая помощь будет оценена. Заранее спасибо.