我正在Android Studio中构建一个非常简单的c ++共享库,并使用CMAKE为x86,x86_64,armeabi-v7a,arm64-v8a构建.so
生成的文件称为libnative-lib.so
我正在使用Unity3D(2018.3.11f1)。然后将.so文件复制到Plugins / Android_x86,Plugins / Android_x86_64,Plugins / Android_armeabi-v7a,Plugins / Android_arm64-v8a。
每个插件都会在检查器预览中显示正确的设置
我的C ++
extern "C" int initTest() {
return -1;
}
我的c#(调用与advice at the Unity3D manual和其他地方一致的插件“ native-lib”)
[DllImport("native-lib", CallingConvention = CallingConvention.Cdecl)]
public static extern int initTest();
// Start is called before the first frame update
void Start()
{
Debug.Log(initTest());
}
它总是导致DllNotFoundException错误
DllNotFoundException:本机库