首先在src同级目录下创建libs目录讲需要的.so复制到这里效果如图
Android Studio引入.so文件的正确姿势 以及调用.so 文件时报错has text relocations 解决_第1张图片

然后在app级别的build.gradle配置lib路径,效果如果
Android Studio引入.so文件的正确姿势 以及调用.so 文件时报错has text relocations 解决_第2张图片
完整代码如下:

apply plugin: 'com.android.application'android {    compileSdkVersion 24    buildToolsVersion "25.0.1"    defaultConfig {        applicationId "com.liberation.idcarread"        minSdkVersion 15        targetSdkVersion 24        versionCode 1        versionName "1.0"        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"    }    buildTypes {        release {            minifyEnabled false            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'        }    }    task nativeLibsToJar(type: Zip, description: "create a jar archive of the native libs") {        destinationDir file("$projectDir/libs")        baseName "Native_Libs2"        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(dir: 'libs', include: ['*.jar'])    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {        exclude group: 'com.android.support', module: 'support-annotations'    })    compile 'com.android.support:appcompat-v7:24.2.1'    testCompile 'junit:junit:4.12'}

至此配置完成点击sync即可正常使用。编译运行过程遇到*.so: has text relocations 说明编译.so文件时使用了较低版本sdk 版本 此时降低build.gradle的targetSdkVersion 版本为22以及以下即可 我们这里改为22 最终效果如下

运行时又出现一个异常

 **java.lang.UnsatisfiedLinkError: No implementation found for int com.liberation.idcarread.ivsign.IDCReaderSDK.wltInit(java.lang.String) (tried Java_com_liberation_idcarread_ivsign_IDCReaderSDK_wltInit and Java_com_liberation_idcarread_ivsign_IDCReaderSDK_wltInit__Ljava_lang_String_2)**

解决方法:按照官方Demo放好包名路径。包名一定要跟原来的一模一样负责无法调用!

更多相关文章

  1. 把TextView中的文字添加阴影效果及Style的使用 mono版
  2. Android给view或者布局添加水波纹点击效果
  3. 【Android开发学习06】Android中的文件I/O操作
  4. 关于xml文件中的一些常用标签的意义
  5. Android中资源文件夹res/raw和assets的使用
  6. Android - 修改最小SDK版本(minSdkVersion)
  7. Android ListView元素间隙线自定义渐变效果

随机推荐

  1. 跨进程共享 SharedPreferences
  2. Android(安卓)查看本机外网IP
  3. Android(安卓)Google地图那些事
  4. Android之百度地图开发,包含定位,覆盖物,经
  5. 获取手机系统
  6. Android触屏事件处理策略
  7. android 自定义用相机拍照后的照片存储位
  8. android中文乱码解决大全
  9. Android: 用Instrumentation类发送鼠标或
  10. [Android] 调用相机、打开相册、裁剪图片