mauijnaaarjnienv

MAUI Project getting errors after binding android library (.aar)


I am using android library called "autoreplyprint.aar" , this library contains another.jar file called "jna-4.5.1.jar".

I have used following code to bind it in my MAUI project,

<ItemGroup Condition="$(TargetFramework.Contains('-android'))">
        <LibraryProjectZip Include="Libs/autoreplyprint.aar" />
</ItemGroup>

After binding the .aar, I am getting many auto generated files which is expected but most of them have errors.

One of the errors is as following which is related to "jna-4.5.1.jar"

Error : 'JNIEnv' does not contain a definition for 'GetString'

enter image description here

enter image description here

I have also tried to bind only "jna-4.5.1.jar" as well which results in the same error confirming that issues are in the "jna-4.5.1.jar".


Solution

  • Found the solution which was to include metadata.xml and add following code and after that it started working.

    for more details please refer following link : Solution

    <?xml version="1.0" encoding="UTF-8"?>
    <metadata>
          <remove-node path="/api/package[@name='com.sun.jna']/class[@name='JNIEnv']"/>
          <remove-node path="/api/package[@name='com.sun.jna']/class[@name='Pointer']/field[@name='NULL']"/>
    </metadata>