我有一個xamarin android項目(VS2015),我添加了一個Android綁定庫項目來使用java lib。包裝工作正常,我可以在我的應用程序項目中調用類/方法。然而,一個Java類取決於添加.so到Xamarin android綁定庫
armeabi/libjnisgfplib.so
我曾嘗試加入兩/資產和/庫我的應用程序中。 BuildAction = AndroidNativeLibrary,Copy = Always。然而,它找不到這個lib,我不斷收到。
java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.company-1/base.apk"],nativeLibraryDirectories=[/data/app/com.company-1/lib/arm, /vendor/lib, /system/lib]]] couldn't find "libjnisgfplib.so"
我試圖Java.Lang.JavaSystem.LoadLibrary("libjnisgfplib");
調用類之前,但我收到同樣的exeption。
如何將libjnisgfplib.so添加到我的項目中,以便綁定庫jar可以找到它?
.so是'.so在'/ lib /'中,還是嵌套在'/ lib/arm /'裏?根據我的經驗,您需要將.so文件放入其中一個二進制文件夾('arm','x86'等)中以供解決。 – matthewrdev
這是在lib/armeabi /我也試過arm/x86/armeabi-v7a等。 – user2634703
嗯,好的。下一步是遠程進入設備,找到'.so'文件的位置:'adb shell' - >'run-as com.company-1'。在應用程序文件夾中探索。也許這將有一些線索? – matthewrdev