[TIMOB-24542] Hyperloop: Android - Static variable is returned as null
GitHub Issue | n/a |
Type | Bug |
Priority | None |
Status | Closed |
Resolution | Not Our Bug |
Resolution Date | 2017-04-04T15:18:08.000+0000 |
Affected Version/s | Release 6.0.3 |
Fix Version/s | n/a |
Components | Android, Hyperloop |
Labels | n/a |
Reporter | Ricardo Ramirez |
Assignee | Christopher Williams |
Created | 2017-03-29T08:45:22.000+0000 |
Updated | 2018-08-06T17:52:09.000+0000 |
Description
Issue Description
When customer is trying to access a static variable in the third party library, it is returned as null. (Unable to access the constants and enums in the third party library, it is returned as null)
H5. Steps to Replicate
Download the attached project
Run
Click on the label
Attachments
It would have been helpful to have more info here, like logs. In any case, I attempted to reproduce the issue locally. When I run the above steps I see this in my logs:
The important part there is that it's failing to load a native library named
libAtalaBar.so
I recompiled the platform/android/kfxutilities.jar and see that through chain of calls, we get to com.kofax.kmc.kut.utilities.IpLibutil class, which attempts to load the native libraries: AtalaBar and EvrsJniWrapper. That means there should be anlibAtalaBar.so
andlibEvrsJniWrapper.so
somewhere to load. Since this is a JAR file, it isn't inside it. So the basic issue stems from missing native libraries that aren't packaged with this app, but are required by the kfxutilities.jar they're trying to consume. They need to make sure if they have Java libraries that require native libraries that they include those as well (They'd end up at a location likeplatform/android/libs/<arch>/libAtalaBar.so
where arch isx86
orarmeabi-v7a
). Typically you'd package this up all of this as an AAR so the java code in this jar would be included as well as the native libraries it depends upon and you wouldn't have to worry about copying multiple files/paths over.Closing as "not our bug". If you disagree, please reopen.