java不能加载系统so库

aree 2013-01-23 03:38:10
系统里本身有一个库 /system/lib/libjnigraphics.so,
我在apk里写了:

public class AAActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
static {
System.loadLibrary("libjnigraphics");//这里写成绝对path也是不行的/system/lib/libjnigraphics.so
}
}

现在是一运行这个apk,就会报错误


01-01 01:09:17.383: E/AndroidRuntime(4974): FATAL EXCEPTION: main
01-01 01:09:17.383: E/AndroidRuntime(4974): java.lang.UnsatisfiedLinkError: Couldn't load libjnigraphics: findLibrary returned null
01-01 01:09:17.383: E/AndroidRuntime(4974): at java.lang.Runtime.loadLibrary(Runtime.java:460)
01-01 01:09:17.383: E/AndroidRuntime(4974): at java.lang.System.loadLibrary(System.java:585)
01-01 01:09:17.383: E/AndroidRuntime(4974): at com.a.t1.MainAct$1.onClick(MainAct.java:21)
01-01 01:09:17.383: E/AndroidRuntime(4974): at android.view.View.performClick(View.java:2535)
01-01 01:09:17.383: E/AndroidRuntime(4974): at android.view.View$PerformClick.run(View.java:9129)
01-01 01:09:17.383: E/AndroidRuntime(4974): at android.os.Handler.handleCallback(Handler.java:618)



为什么总是不能加载so库?
...全文
770 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
aree 2013-04-01
  • 打赏
  • 举报
回复
编译就是放到out/..../system/lib/目录下的
lunar1983 2013-02-20
  • 打赏
  • 举报
回复
楼主这个问题解决了吗,我把已有的so库放入libs/armeabi下,编译的apk可以直接load库,运行也正常 但是在data/data/.../lib下没有so库,不知道打包到哪里了
aree 2013-01-25
  • 打赏
  • 举报
回复
谢谢! 但如果,我把这个.so文件放到源码目录lib/armeabi/libjnigraphics.so并生成apk,那apk中,应该怎么加载这个so库呢?
dong3560 2013-01-23
  • 打赏
  • 举报
回复
二楼正解啊,不能加前边的lib
oyq_yangy 2013-01-23
  • 打赏
  • 举报
回复
引用 1 楼 yinke22222 的回复:
改成 System.loadLibrary("jnigraphics");试试
try.
不简单de 2013-01-23
  • 打赏
  • 举报
回复
改成 System.loadLibrary("jnigraphics");试试

80,350

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧