在 XamarinSolution
中,我有:
项目 1:一个
Android
应用项目(应用程序)。Android
我有一个使用三个的旧应用程序.so
,构建为AndroidNativeLibrary
. 这运作良好.so
并被发现。我想用它做一个图书馆。出于这个原因,我做了一个新Library
项目。现在,在我的解决方案中,我有第二个项目:Library
项目2:.so
构建为EmbeddedNativeLibrary
. 这是行不通的。DLL
不包含.so
也不.so
复制到引用它的 Android 应用程序项目中。(我不知道/lib
在构建过程中将它们放在应用程序文件夹中的通常过程是什么)所以 .so 库无处可寻,Dalvik
找不到它。我知道如果我直接将它们放在应用程序项目中它会起作用,但这是一个丑陋的解决方案。
在我看来EmbeddedNativeLibrary
,从名字来看,应该对我有所帮助。但它没有效果。
如何将我的.so
文件嵌入.DLL
Library
或自动复制到应用程序/lib
目录中?
[编辑]
我之前应该验证过,但这些库确实包含在 APK 中。只是在运行应用程序时找不到它们。就像丢失或错误引用的库一样。也许有一个额外的步骤可以使它们可见?
[Mono] DllImport attempting to load: 'libffmpeg.so'.
[Mono] DllImport error loading library '/storage/sdcard0/Android/data/com.pure.ffmpeg/
files/.__override__/libffmpeg.so': 'Cannot load library:
load_library[1093]: Library '/data/data/com.pure.ffmpeg/lib//storage/sdcard0/Android/
data/com.pure.ffmpeg/files/.__override__/libffmpeg.so' not found'.
[Mono] DllImport error loading library
'/storage/sdcard0/Android/data/com.pure.ffmpeg/files/.__override__/libffmpeg.so':
'Cannot load library: load_library[1093]: Library '/data/data/com.pure.ffmpeg/
lib//storage/sdcard0/Android/data/com.pure.ffmpeg/files/.__override__/libffmpeg.so'
not found'.
[Mono] DllImport error loading library 'libffmpeg.so':
'Cannot load library:
load_library[1093]: Library '/data/data/com.pure.ffmpeg/lib/libffmpeg.so' not found'.
[Mono] DllImport error loading library 'libffmpeg.so': 'Cannot
load library: load_library[1093]: Library '/data/data/com.pure.ffmpeg/lib/libffmpeg.so' not found'.
[Mono] DllImport error loading library 'libffmpeg.so': 'Cannot
load library: load_library[1093]: Library '/data/data/com.pure.ffmpeg/lib/libffmpeg.so' not found'.
[Mono] DllImport unable to load library 'Cannot load library: load_library[1093]:
Library '/data/data/com.pure.ffmpeg/lib/libffmpeg.so' not found'.