- 现在智能家居很火,有很多的云平台提供者,也有很多智能设备提供者,例如智能摄像头,偶然的机会我接触了一款智能摄像头PnP网络摄像头,就下载了他的sdk玩了一下,简单记录一下调用so库踩的坑。
- PnP网络摄像头的demo是eclipse开发,我就想切换到as上面,我新建项目之后,将so库放在了libs目录下面之后,我不知道怎么处理这个so,找了很久找了解决方法,在
app
的build.gradle
文件中的android
节点里添加下面的代码,就可以引入so库。
//加载so库
sourceSets {
main {
jniLibs.srcDirs = ['libs']
}
}
之后就是调用so库中的native
static {
//加载so库的时候,需要掐头去尾,去掉lib和.so
System.loadLibrary("ijkffmpeg");
System.loadLibrary("vstc2_jni");
}
如果运行起来,报Android:No implementation found for native
,如果你是使用别人的so库那多半是因为加载so库的所在的包名路径的问题。
关于错误 Android:No implementation found for native
可以查看这篇文章Android:No implementation found for native
Android Studio使用jni、so库
感谢前辈博主们的分享,加油!