1

我想在我的 android 应用程序中使用 *.so 文件,所以我按照某些网站的建议将文件复制到“libs\armeabi\libctrl_gpio.so”。当我运行并创建 apk 文件时,Eclipse 会创建这个文件夹(在 apk 内)!

"lib\armeabi\libctrl_gpio.so"

当应用程序想要使用此代码加载库时,它将“libs”更改为“lib”:

System.loadLibrary("ctrl_gpio");

我得到错误:

Trying to load lib /data/data/shopping.shop/lib/libctrl_gpio.so
Added shared lib /data/data/shopping.shop/lib/libctrl_gpio.so
JNI_OnLoad
failed to open /dev/ctrl_gpio -- No such file or directory.
JNI_OnLoad returned bad version (-1) in /data/data/shopping.shop/lib/libctrl_gpio.so
WARNING: Could not load library!

您在第一行看到路径是“lib/libctrl_gpio.so”,而不是 apk 文件中的“lib\armeabi\libctrl_gpio.so”!

同样在第 4 行,路径是“/dev/ctrl_gpio”!!!!!!!!!!!!

我不明白为什么会发生这种情况,这是我阻止加载库的问题吗?我搜索并看到了很多网站和问题,但没有一个能解决我的问题。任何帮助将不胜感激。我是android的新手,所以请提供详细信息。谢谢。

4

0 回答 0