1

i'm developing an app that needs to connect to an embedded system (Pic18fXXXX) via bluetooth i used the ANE lib. described here. http://as3breeze.com/bluetooth-ane/

all fine, datatypes and methods imported as default, but when compiling into android application (testing or publishing) i get :

The content cannot be loaded because there was a problem loading an extension: Error: Extension namespace is invalid for C:\Users\Mhood\AppData\Local\Temp\Tmp_ANE_File_Unzipped_Packages\AndroidBluetooth.ane

1 Answers1

0

This looks like a version mismatch between the AIR SDK you are using and the one required for the native library. Here is the content of the extension descriptor for the Bluetooth ANE extension:

<extension xmlns="http://ns.adobe.com/air/extension/3.4">
  <id>com.as3breeze.air.ane</id>
  <versionNumber>1</versionNumber>
  <platforms>
    <platform name="Android-ARM">
      <applicationDeployment>
        <nativeLibrary>AndroidBluetooth.jar</nativeLibrary>
        <initializer>com.as3breeze.air.BluetoothExtension</initializer>
        <finalizer>com.as3breeze.air.BluetoothExtension</finalizer>
      </applicationDeployment>
    </platform>
  </platforms>
</extension>

From the Adobe docs:

The namespace is one of the factors, along with the SWF version, that determines compatibility between an AIR SDK and an ANE file. The AIR application must be packaged with a version of the AIR SDK that equals or exceeds the extension namespace. Thus an AIR 3 application can use an extension with the 2.5 namespace, but not the 3.1 namespace.

Did you use the required Adobe AIR 3.4 version? Check the Adobe documentation of Native Extension descriptor files for more details.

raju-bitter
  • 8,906
  • 4
  • 42
  • 53