У меня есть Adobe AIR ANE, который прекрасно работает и работает на iOS.Я хочу запустить это приложение в симуляторе AIR, но с версией actioncript нативного ANE.
При чтении документов кажется, что для этого идеально подойдет профиль по умолчанию.
Iдобавил профиль по умолчанию в файл extension.xml.Я добавил реализацию AS собственного интерфейса для каждого проекта в моей рабочей области.Я сделал методы статическими / не статичными и т. Д. Я перепробовал все, но постоянно получаю эту ошибку:
ArgumentError: Error #3500: The extension context does not have a method with the name
Я в полной растерянности.Вот соответствующие файлы:
extension.xml
<extension xmlns="http://ns.adobe.com/air/extension/3.1">
<id>com.novel.analytics.ext.ApsalarNativeInterface</id>
<versionNumber>0.0.0</versionNumber>
<platforms>
<platform name="iPhone-ARM">
<applicationDeployment>
<nativeLibrary>libApsalarNativeInterface.a</nativeLibrary>
<initializer>ExtInitializer</initializer>
<finalizer>ExtFinalizer</finalizer>
</applicationDeployment>
</platform>
<platform name="default">
<applicationDeployment/>
</platform>
</platforms>
</extension>
Моя реализация AS:
package com.novel.analytics.ext
{
public class ApsalarNativeInterface
{
public function ApsalarNativeInterface()
{
}
private static function initExtension():void
{
}
public function initApsalar(apiKey:String, secret:String):void
{
}
}
}
мой собственный интерфейс:
package com.novel.analytics
{
import flash.external.ExtensionContext;
public class ApsalarInterface
{
private static const EXTENSION_ID : String = "com.novel.analytics.ext.ApsalarNativeInterface";
private var context : ExtensionContext;
public function ApsalarInterface()
{
this.context = ExtensionContext.createExtensionContext(EXTENSION_ID, null);
}
public function initApsalar(apiKey:String, secret:String):void
{
context.call("initApsalar", apiKey, secret);
}
}
}
Вот моя командная строка adt (library.swf - это библиотека, содержащая два вышеуказанных файла:
/Applications/Adobe\ Flash\ Builder\ 4.6/sdks/4.6.0/bin/adt -package -target ane ../../$PRODUCT_NAME.ane extension.xml -swc NativeInterface.swc -platform iPhone-ARM -C . library.swf -platform default -C . library.swf
Как я уже сказал, я полностью проиграл.