FLASH / FLEXBUILDER: computeSpectrum прекращает вычисление спектра без причины
-
03-07-2019 - |
Вопрос
Я использую Flex Builder для компиляции своего SWF. Я использую mp3-файлы на моей локальной машине и computeSpectrum () для анализа mp3. Р>
После игры в течение 20 секунд мой computeSpectrum прекращает возвращать значения, вместо этого он начинает возвращать эту ошибку:
SecurityError: Error #2121: Security sandbox violation: SoundMixer.computeSpectrum: file:///C|/Documents%20and%20Settings/Kasper/My%20Documents/Flex%20Builder%203/Soundanalizer/bin%2Ddebug/Soundanalizer.swf cannot access . This may be worked around by calling Security.allowDomain.
Если я скомпилирую с flash, он не выдаст эту ошибку: /
Решение
Flash Player считает, что пытается открыть локальный файл с веб-сайта. Это игнорируется, если вы запускаете его из flash ide. Он также должен работать как есть, если вы загрузите его на веб-сервер.
Чтобы иметь возможность локально протестировать добавление доступа к своему swf (или всей папке проекта) с помощью вкладки безопасности на http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html
Другие советы
Проблемы, которые у меня были с computeSpectrum в прошлом, были вызваны глобальным способом, который Flash проверяет в песочнице, что означает, что другой несвязанный Flash-контент, открытый в браузере (например, YouTube), обрабатывается так, как если бы ваш swf пытался его загрузить - это означает, что если вы запустите свое приложение, а затем откроете YouTube, вы получите ошибку.
Может ли это быть причиной?