项目中需要引入几个 so文件,但APP一直崩溃报错

java.lang.UnsatisfiedLinkError: Couldn’t load ad from loader dalvik.system.PathClassLoader…

修改 app 下的 build.gradle 文件,添加下方代码:

    // 将 .so 文件打包为 Native_Libs.jar 包文件
task nativeLibsToJar(type: Zip, description: "create a jar archive of the native libs") {
destinationDir file("$projectDir/libs")
baseName "Native_Libs"
extension "jar"
from fileTree(dir: "libs", include: "**/*.so")
into "lib"
}
tasks.withType(JavaCompile) {
compileTask -> compileTask.dependsOn(nativeLibsToJar)
} sourceSets.main{
jniLibs.srcDirs = ['libs'];
}

另外在 dependencies 中加入一行

compile files('libs/Native_Libs.jar') // 加载上方 .so 生成的该文件

至于这个包的名字 Native_Libs 是可以通过 baseName 自定义的

下面贴上完整的 build.gradle 文件:

apply plugin: 'com.android.application'

android {
compileSdkVersion 23
buildToolsVersion "23.0.3" defaultConfig {
applicationId "com.xxx.xxx.xxx"
minSdkVersion 15
targetSdkVersion 23
versionCode 2
versionName "2.0.1"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
} // 将 .so 文件打包为 Native_Libs.jar 包文件
task nativeLibsToJar(type: Zip, description: "create a jar archive of the native libs") {
destinationDir file("$projectDir/libs")
baseName "Native_Libs"
extension "jar"
from fileTree(dir: "libs", include: "**/*.so")
into "lib"
}
tasks.withType(JavaCompile) {
compileTask -> compileTask.dependsOn(nativeLibsToJar)
} sourceSets.main{
jniLibs.srcDirs = ['libs'];
}
} dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.4.0'
compile 'com.android.support:design:23.4.0'
compile 'com.joanzapata.iconify:android-iconify-fontawesome:2.2.1'
compile 'com.joanzapata.iconify:android-iconify-ionicons:2.2.1'
compile files('libs/Chance_Ad_SDK_Android_v5.3.5.jar')
compile files('libs/Native_Libs.jar') // 加载上方 .so 生成的该文件
}

最新文章

  1. JQuery中的DOM操作
  2. Unity全视角游戏的键盘操作位移——研究笔记
  3. Lintcode 175 Invert Binary Tree
  4. selenium处理div生成弹框
  5. TKinter之窗口美化 窗口大小、图标等
  6. 关于WP8 微信分享的补充说明
  7. web开发的性能准则(减少页面加载时间方面)
  8. EasyUI Datagrid 鼠标悬停显示单元格内容
  9. Bootstrap3 代码-变量
  10. Java高级特性 第11节 JUnit 3.x和JUnit 4.x测试框架
  11. function CONVERSION_EXIT ****INPUT/OUTPUT说明
  12. 基于Struts2框架的文件下载 --- Struts2
  13. Xcode的快捷键及代码格式化
  14. 《C++ Primer Plus》10.3 类的构造函数和析构函数 学习笔记
  15. 简单实现高并发处理秒杀思路(redis分布式锁)
  16. 多国语言解决方案gnu.gettext + poedit
  17. [C#]ref,out关键字的作用
  18. 常用数据库连接池 (DBCP、c3p0、Druid) 配置说明.RP
  19. centos 7 防火墙设置
  20. (3.2)mysqldump之备份单个表及脚本批量备份

热门文章

  1. Nancy学习
  2. oracle 表导入到powerDesigner 中
  3. 让大蛇(Python)帮你找工作
  4. centos 4.4配置使用 and Nutch搜索引擎(第1期)_ Nutch简介及安装
  5. Knockout, Web API 和 ASP.Net Web Forms 进行简单数据绑定
  6. 怎么让猫吃辣椒 转载自 xiaotie
  7. Visual Studio 2013 发布正式版
  8. 【编程范式】C语言1
  9. 在VMware的Linux系统上安装Redis
  10. MySQL关联查询总结