当前位置: 技术问答>linux和unix
Android System.loadlibrary失败
来源: 互联网 发布时间:2017-02-06
本文导语: 我使用了Android源码里的 libmedia.so, 我使用类 AudioTrack* at = new AudioTrack(); at->Set(...) at->start() at->write() -------------生成了一个libplayctl.so 我在.java文件里调用 system.loadlibrary("playctl")时, logcat里输出 Couldn't load l...
我使用了Android源码里的 libmedia.so,
我使用类
AudioTrack* at = new AudioTrack();
at->Set(...)
at->start()
at->write()
-------------生成了一个libplayctl.so
我在.java文件里调用 system.loadlibrary("playctl")时,
logcat里输出 Couldn't load lib: playctl - Cannot load library: reloc_library[1311]: 33 cannot locate '_ZN7android10AudioTrack***set***'...这样的错误,应该是说 AudioTrack::set有问题。
于是我把 at->set(..)删掉, system.loadlibrary("playctl")就成功了,
于是我就调用了一个带参数的 new AudioTrack(参数)的构造方法,它里面自己调用了set方法,于是仍然会提示这样的错误,就是说 这个set方法只要这调用,就 load失败,不知道是怎么回事,花了很长时,也没找到原因,我才接触NDK几天,还不太会,就遇到这种问题。。。先谢谢大家了
我使用类
AudioTrack* at = new AudioTrack();
at->Set(...)
at->start()
at->write()
-------------生成了一个libplayctl.so
我在.java文件里调用 system.loadlibrary("playctl")时,
logcat里输出 Couldn't load lib: playctl - Cannot load library: reloc_library[1311]: 33 cannot locate '_ZN7android10AudioTrack***set***'...这样的错误,应该是说 AudioTrack::set有问题。
于是我把 at->set(..)删掉, system.loadlibrary("playctl")就成功了,
于是我就调用了一个带参数的 new AudioTrack(参数)的构造方法,它里面自己调用了set方法,于是仍然会提示这样的错误,就是说 这个set方法只要这调用,就 load失败,不知道是怎么回事,花了很长时,也没找到原因,我才接触NDK几天,还不太会,就遇到这种问题。。。先谢谢大家了
|
引用 "我使用了Android源码里的 libmedia.so"
有没可能是 libmedia.so 没有加载进去.
有没可能是 libmedia.so 没有加载进去.
|
楼主的问题解决了没?
我也遇到同样的问题
我在android2.1下启动模拟器会出现,Cannot load library: reloc_library[1244]: 30 cannot locate '_ZN7android17StagefrightPlayerC1Ev'...
但是在android2.3下同样的程序启动正常
我也遇到同样的问题
我在android2.1下启动模拟器会出现,Cannot load library: reloc_library[1244]: 30 cannot locate '_ZN7android17StagefrightPlayerC1Ev'...
但是在android2.3下同样的程序启动正常
|
不太懂,关注下,jni确实很麻烦。