[关闭]
@natsumi 2016-05-17T09:04:48.000000Z 字数 978 阅读 1557

【转】如何在Android Studio中导入JNI生成的.so库

Android Android_Studio


转自:http://www.cnblogs.com/zenny-chen/p/4040401.html

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

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

完成之后,编辑app目录下的build.gradle文件,为其添加以下代码:

  1. sourceSets {
  2. main {
  3. jniLibs.srcDirs = ['libs']
  4. }
  5. }

完整的build.gradle文件如下所示:

  1. apply plugin: 'com.android.application'
  2. android {
  3. compileSdkVersion 20
  4. buildToolsVersion "20.0.0"
  5. defaultConfig {
  6. applicationId "com.adwo.gamecenter.civetcoffeegamecenter"
  7. minSdkVersion 9
  8. targetSdkVersion 20
  9. versionCode 1
  10. versionName "1.0"
  11. }
  12. buildTypes {
  13. release {
  14. runProguard false
  15. proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
  16. }
  17. }
  18. sourceSets {
  19. main {
  20. jniLibs.srcDirs = ['libs']
  21. }
  22. }
  23. }
  24. dependencies {
  25. compile fileTree(dir: 'libs', include: ['*.jar'])
  26. compile 'com.android.support:appcompat-v7:20.0.0'
  27. }
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注