android studio 本地仓库调用 upload.uploadArchives, 父模块的so库未打包进父模块的解决方式。

java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.demo-1/base.apk"],nativeLibraryDirectories=[/data/app/com.demo-1/lib/arm64, /data/app/com.demo-1/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]] couldn't find "libtest.so"

如果依赖的是父模块,so库放在父模块里面,需要在父模块的build.gradle(:app)文件里面添加
android {
    repositories {
        flatDir {
            dirs 'libs'
        }
    }
}
这样父模块才能在uploadArchives的时候将so库打包进aar。

在父模块里面 so库存放的 结构目录是 main->jniLibs->armeabi-v7a->libtest.so

在子模块里面需要在build.gradle(:app)文件里面添加

android {
  defaultConfig {
    ndk {
            abiFilters "armeabi-v7a"
           }
   }
}

你可能感兴趣的:(so库)