刚开始使用Android Studio 导入工程的是时候发现bug产生一大推,用着真不习惯就比如这个java.lang.UnsatisfiedLinkError: Couldn't load XXX from loader dalvik.system.问题,就是因为so文件在打包的时候没有加载到apk文件中去,那怎么加载so文件到apk文件中去呢,
解决方案:修改项目的build.gradle文件,在里面加上这个
sourceSets { main { jniLibs.srcDirs = ['libs'] } }整个配置文件如下:
apply plugin: 'com.android.application' dependencies { compile fileTree(dir: 'libs', include: '*.jar') compile project(':appcompat_v7') } android { compileSdkVersion 22 buildToolsVersion "23.0.0" 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.srcDirs = ['libs'] } // Move the tests to tests/java, tests/res, etc... instrumentTest.setRoot('tests') // Move the build types to build-types/<type> // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ... // This moves them out of them default location under src/<type>/... which would // conflict with src/ being used by the main source set. // Adding new build types or product flavors should be accompanied // by a similar customization. debug.setRoot('build-types/debug') release.setRoot('build-types/release') } }