Я предполагаю, что проблема возникает при загрузке страницы .html с URL-адреса file://
(а не при запуске с веб-сервера, даже с локального хоста). Эта проблема возникает из-за того, что проигрыватель Flash Player использует другую изолированную программную среду безопасности для локальных файлов.
ExternalInterface.addCallback
нельзя использовать в песочнице file://
, если у вас нет набора «Надежное расположение» (согласно ответу Тома; это может объяснить, почему он работает в вашей папке dev, если он настроен как надежное расположение) , К сожалению, установка надежных расположений может быть непростой задачей, поэтому я предпочитаю настроить веб-сервер на localhost для моего тестирования.
Если вашей конечной целью является развертывание вашего html (и js, swf и т. Д.) На веб-сервере, тогда вы должны столкнуться с этой проблемой только во время разработки (за исключением других междоменных проблем). Но если вы планируете распространять без веб-сервера (скажем, записи файлов на DVD), это будет постоянной проблемой.