我正在尝试使用DllImport获取在模拟器中使用Monodroid的Native C/C++库。我主要在Windows/Visual Studio 2010中开发。Mono Android Monodroid Native Library DllNotFoundException
我使用Ubuntu虚拟机为x86和armeabi平台构建了一个使用Android NDK工具的本机C/C++库(ZeroMQ)。这是正确的 - 模拟器的x86和真正的设备的armeabi? (这在iPhone/MonoTouch上肯定是这种情况 - 尽管在这种情况下,静态链接libzmq.a文件和DllImport __Internal)
我已将x86版本的libzmq.so添加到我的MonoDroid项目下的目录结构lib \ x86 \ libzmq.so
当我第一次尝试构建/部署到模拟器时,出现'无法确定abi类型'的错误,因此我已将x86添加到AndroidNativeLibrary Include =“lib \ x86 \ libzmq。所以“>项目项目组。然后部署。
我有一个的DllImport为函数调用函数[DllImport( “libzmq”
我libzmq.so试过,LIB/86/libzmq,LIB/86/libzmq.so等,后来我打电话该方法dllimport导入(在模拟器中运行),我总是得到一个DllNotFoundException
谁能给我一些指导
编辑:?读取另一支答案,指出仿真器使用armeabi的.so库后,我已经删除了x86/libzmq并添加了我的lib/armeabi/libzmq.so作为AndroidNativeLibrary。我还删除了项目文件Abi条目,确实该项目建成并部署良好。
但是,当我尝试调用DllImported函数时,I 仍然会得到DllNotFoundException。有任何想法吗?
非常感谢