**Where all does Unity search for its dll files? Will it find them if they are located in a package outside the project? Can the Unity editor use .aar files?**
I imported an XR plugin, QIYU XR Plugin v1.2.1 (*com.uniy.xr.qiyu*). When calling their playerprefs wrapper functions I get a DllNotFound Exception directed at the code below. Technically the file is an Android .aar library file, which Unity supports. I don't expect the Unity editor to run Android code, but what should I make of this error? The file is clearly present. Is this error a red herring, such that the .aar file *can* be found, but a deeper dependency can't-- producing this surface level error?
DllNotFoundException: qiyivrsdkcore
**(1)** The package is located in a folder outside of the project. It was imported via Unity Package Manager.
**(2)** I can search for the file in the project view and see it is located here:
Packages/QIYU XR Plugin/Runtime/Android/qiyivrsdkcore
**(3)** I have tried selecting "Any Platform" and leaving it on only "Android"
**(4)** This issue occurs in editor and in builds with their Quest-like headset.
**(5)** *Dependency Walker* does not support .aar files.
**(6)** Sample of the relevant class.
namespace Unity.XR.Qiyu
{
public static partial class QiyuPlugin
{
public class QiyuSDKCorePlugins
{
private const string pluginName = "qiyivrsdkcore";
//------------------------------------------------------------------------
[DllImport(pluginName, CallingConvention = CallingConvention.Cdecl)]
public static extern void QVR_Update(float deltaTime);
(...)
}
}
}
↧