Android

关注公众号 jb51net

关闭
首页 > 软件编程 > Android > Android 打包.so库到apk中

Android Studio打包.so库到apk中实例详解

投稿:lqh

这篇文章主要介绍了Android Studio打包.so库到apk中实例详解的相关资料,需要的朋友可以参考下

Android Studio打包.so库到apk中实例详解

由于在原来的ADT的Eclipse环境中,用ndk_build工具生成了相应的各个.so库文件之后,eclipse工具就会自动把这些库导入到apk中。而Android Studio目前为止(1.1.0版本)还无法做到那么自动,但是我们可以通过以下方式进行。

首先在Android Studio工程的app目录下创建整个jni目录,jni目录里写Android.mk、Application.mk以及各类C/C++和汇编源文件。然后跟原来一样,用ndk_build工具去编,然后工具会自动生成libs目录,里面还有每个你在Application.mk里所指定处理器架构的so文件。

完成之后,编辑你对应module(类似eclipse中的project)目录下的build.gradle文件,为其添加以下代码:

sourceSets { 
  main { 
    jniLibs.srcDirs = ['libs'] 
  } 
} 

比如本人module完整的build.gradle文件如下所示:

apply plugin: 'com.android.application' 
 
android { 
  compileSdkVersion 22 
  buildToolsVersion "21.1.1" 
 
  defaultConfig { 
    applicationId "com.example.way.aligesture" 
    minSdkVersion 15 
    targetSdkVersion 22 
    versionCode 1 
    versionName "1.0" 
  } 
  buildTypes { 
    release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
    } 
  } 
  sourceSets { 
    main { 
      jniLibs.srcDirs = ['libs'] 
    } 
  } 
} 
 
dependencies { 
  compile fileTree(dir: 'libs', include: ['*.jar']) 
  compile project(':acra') 
  compile project(':hwdroid') 
} 

最后记得选中对应的module右击synchronize同步一下,以便使其生效。如下图所示,module目录下回生成一个jniLibs目录,再打包生成的apk就会带上.so了。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

您可能感兴趣的文章:
阅读全文