[这是一个常见的Android问题,请不要查看Gstreamer关键字]
我试图通过Xamarin.Android(在TypeError: Invalid dimensions for image data
)在Android上使用Gstreamer,所以我在Ubuntu上构建了this sample project,接受了编译后的Visual Studio
和libtutorial-5.so
库并将它们作为libgstreamer_android.so
添加到Xamarin.Android项目中。当我尝试使用AndroidNativeLibrary
使用libgstreamer_android.so
时,一切正常,但当我尝试使用DllImport
(当然使用libtutorial-5.so
)时,我得到:
DllImport无法加载库' dlopen失败:无法加载库" build / obj / local / armeabi-v7a / libgstreamer_android.so"需要" libtutorial-5.so&#34 ;;由图书馆" build / obj / local / armeabi-v7a / libgstreamer_android.so"找不到'。
发生此错误是因为DllImport
取决于libtutorial-5.so
。 libgstreamer_android.so
尝试在libtutorial-5.so
位置找到libgstreamer_android.so
库。
但是当然这两个库位于build/obj/local/armeabi-v7a/libgstreamer_android.so
目录中,即使我在这个位置替换了所有两个库或只是lib/armeabi-v7a
,我仍然有这个错误。所以我认为我有两个选择:
libgstreamer_android.so
目录中的库(因为如果我在build/obj/local/armeabi-v7a
中使用此位置,那么我仍有此问题)?OR
Solution Explorer
或Android Studio
文件(.mk
构建阶段)中更改我的第一个库所依赖的库的路径?