Air Native Extension для Mac - "не имеет названного метода"
Я адаптирую расширение для ПК под Mac. Успешно создаю проект, который "должен" работать, но вместо этого я получаю
Ошибка № 3500: у контекста расширения нет метода с именем
Упакованный ANE загружается успешно, но никакие вызовы не работают. Я подозреваю, что инициализатор не вызывается (и ничто не жалуется на это). Мое доказательство в том, что я удалил инициализатор и финализатор из проекта C, и поведение не изменилось.
Какие-либо предложения?
Версии: Xcode 3, Air-15, Flex 4.13, Flash Builder 4.7
Редактировать: больше информации; Я обнаружил, что экспорт приложения в виде сборки выпуска / подписанного нативного установщика, затем установка и запуск приложения, он работает (ну, все еще требуется отладка, но методы расширения достигаются). Таким образом, вопрос упрощается до "что не так со средой Flash Builder"
1 ответ
По-видимому, невозможно использовать Flash Builder в сочетании с расширениями Native Air в OSX.
Создание контекста расширения работает без жалоб, но вызывает любую из предоставленных функций.
приводит к "ошибке № 3500: у контекста расширения нет метода с именем..."
Мне потребовалось много времени (и, следовательно, денег моей компании), чтобы обнаружить, что ANE на самом деле хорошо, и может быть
Вызывается за пределами Flash Builder, с помощью соответствующей командной строки или путем упаковки исполняемого файла релиза.
Этот полный набор поведения является очень неудовлетворительным, и о нем известно не менее двух лет.
Даже с помощью обходного пути (выпуск пакета или вызов с использованием командной строки) рабочий процесс
сильно деградировал.
-
для справки, наиболее полезное объяснение обходного пути находится по этому URL
http://riawanderer.com/2012/03/27/working-with-air-native-extensions-on-the-mac/ отметьте дату этой записи!
затем найдите панель, которая следует за текстом
"Теперь, когда этот простой демонстрационный код готов, давайте запустим и посмотрим, что он делает. Когда вы запустите приложение, вы должны увидеть ниже сообщение об ошибке, указывающее, что ошибка Flex Builder существует:)".