这几天做视频组件,采用金山云视频组件,这个开源的组件是在eclipse下编译的,Demo在ADT下能正常运行。
金山云的的library中包含so文件,如果导出到AS下呢?
第一次按照老方法,直接在ADT下生成gradle,然后用新项目的gradle替换这个gradle。没成功。原因为:新项目gradle没包含很多引用。
所以必须要用ADT下自己生成的gradle。
第二次尝试,依然在ADT下生成gradle,替换成本地的gradle版本,在AS中用新建ADT插件的形式,安装module,编译通过。
但程序运行出错。
提示码为:
Java.lang.UnsatisfiedLinkError 不能加载so文件
查询后得知,没在gradle中引用so文件
解决方法为:
android { // .. android settings .. sourceSets.main { jniLibs.srcDir ‘src/main/myCppLibraries‘ // <-- Set your folder here! } }
我的代码:
sourceSets { main { manifest.srcFile ‘AndroidManifest.xml‘ java.srcDirs = [‘src‘] resources.srcDirs = [‘src‘] aidl.srcDirs = [‘src‘] renderscript.srcDirs = [‘src‘] res.srcDirs = [‘res‘] assets.srcDirs = [‘assets‘] jniLibs.srcDir "libs" }
时间: 2024-10-07 21:20:29