I am trying to trace the GPU activity on an unrooted Samsung S6 using Unity. I have added the libMGD.so to my application and it does appear in my .apk package. I have installed the MGDDaemon and this can see my application.
I start the MGDDaemon and the Mali Graphics Debugger application (Windows8).
Debug | "Connect to target" appears to work and launches a window titled "Capturing Target@/127.0.0.1:5002".
There is no message on the console and no other output appears.
From the MGDDaemon app on device, I select my application which launches.
There are still no traces appearing within the Windows MGD app.
MGD v 3.0.0.6d92cba7
android-non-root\arm\armeabi-v7a\libMGD.so dated 05/08/2015 18:38
Are messages getting lost somewhere?
Thanks in advance,
Ed
Hi drl,
On the Unity side, there's no way to do that "add to the Android.mk and Activity class" stuff.
Unfortunately without the "Activity class stuff", your application is not going to load the MGD interceptor.
Your APK may have libMGD.so inside of it, but its not going to be used unless you explicitly load it.
We're going to have a look and see if there's a way for Unity applications to load libraries.
Thanks,
Jon.
Unity uses C# for scripting, but as I see the library you provided is written in c++.
In c#, there's a method to load a dll, which was previously compiled by C#, too (and therefore it can be built to any supported platform later).
Or you can call a specific function from the pre-compiled library using [DllImport()]. But I don't know which functions are in this .so file, which of them I need to call and when.