Hi,

I was trying to integrate a Cordova plugin (Vuforia) but whenever I start the application and start the Vuforia plugin, the camera gets all black and nothing happens.

I started by creating a base module with the extensibility configurations url pointing to my Git:

Then, I have a javascript with the following:


After this, I have my main application Module where I consume the plugin with a simple action, like this:

I just saw a similar issue (https://www.outsystems.com/forums/discussion/37673/system-err-the-library-xxxxxxx-so-could-not-be-loaded/) and tried the solution but it didn't work for me.

Any clues on this one please? I don't have that many experience with cordova and mobile, so any help would be much appreciated.

Thanks,

Hi,

Did you check the error logs in Service Studio Monitor page?, something is going wrong and most likely it is logged. The errors could give you a clue what is going wrong.

Regards,

Daniel

Hi Daniel,

unfortunately the Service Studio doesn't log any errors since the application is running ok.

The issue seems a missing library of the Vuforia SDK, as whenever I click the button to start the plugin, the screen is all white and blank. I tried to follow the solution from the issue that I posted before (... " ... I see no mention to the SDK despite being listed as a dependency. Are you including it? ... " ...) but it gets me to the same point.


Any help would be much appreciated.

Thanks,

Hi,

I am sorry cannot help you further, i don't have all the software (he issue seems a missing library of the Vuforia SDK) to check this. Hopefully someone can.

Given your latest post I think you should be on the Vuforia developer forum not OutSystems forum to find an answer.

Regards,

Daniel

Hi Vitor & Daniël,

Just stumbled upon this thread randomly...

@Vitor, you can to troubleshoot a bit further, by connect the device the computer and use the adb logcat to get more information of what is happening.

I also noticed that the last time the npm or the github repository for vuforia was updated was 3 years ago... That can justify why it simply doesn't work.... I guess that you'll have to download the sdk itself and compile it...

Let us know how it goes.


Cheers,

RG


Hi Ruben, thank you for your help.

So, I just created a new SDK and a new personal GIT repository where I left this new SKD, but it's still not working. I logged the errors with adb logcat and got a "Channel is unrecoverably broke" and a "notWhitelisted" error. I'll attach a print screen as you can see:

Any clues on what this might be?

Thank you for your help.

Cheers,

I did some further debugging on another devices and found something interesting. There seems to be an issue with the Accelerometer and indeed it makes sense since I'm trying to make an AR application:

Any advice on how can I access the device accelerometer via OutSystems? Should I install a Cordova plugin instead?

Cheers

Hi Vitor,

My suggestion would be to try to isolate the problems.

If you can remove the Accelerometer out of scene, for now, would be good idea (we can come back to that later on - plus the cordova plugin is deprecated, since it the browser has its own api for that).


Regarding the whitelist issue, we can try to white list the vulfuria url.

To white list the url, you need to add a configuration with the following format to Extensibility Configurations*:

"access": [
        // Use the entries below to define which domains your mobile app can connect to
        {
            "origin": "<Protocol and URL of accessible domain>",
            "minimum-tls-version": "<Minimum required TLS version>",
            "requires-forward-secrecy": "<true if Forward Secrecy is required for this origin>",
            "requires-certificate-transparency": "<true if Certificate Transparency is required for this origin>"
        },
        // use the following template to set these three iOS-only fields
        {
            "origin": "*",
            "allows-arbitrary-loads-for-media": "<true_or_false>",
            "allows-arbitrary-loads-in-web-content": "<true_or_false>",
            "allows-local-networking": "<true_or_false>"
        },
    ]

This was taken from the documentation.

It should look something like this:

Let me know, if this helps.

Cheers,
RG

Hi Ruben, thank you so much for your help.

I just found out that this is only related with the libVuforia.so file. It seems that this file is not being loaded despite the fact that it is on the lib folder on the apk as you can see on the files below:

The file location:


I found a related issue with this same plugin here:
https://www.outsystems.com/forums/discussion/37673/system-err-the-library-xxxxxxx-so-could-not-be-loaded/

I'm struggling to find a workaround in order to copy this libVuforia.so library in order to make this work. Do you have any suggestion?

Cheers,

Hi Victor,

I saw that you've created a new post with this specific issue.

As such, I will close this thread, and try to reply in the new one.

Cheers,

RG