Android Studio打包.so库到apk中

转载:http://blog.csdn.net/way_ping_li/article/details/44631017

由于在原来的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文件,为其添加以下代码:

[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. sourceSets {  
  2.     main {  
  3.         jniLibs.srcDirs = ['libs']  
  4.     }  
  5. }  

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

[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. apply plugin: 'com.android.application'  
  2.   
  3. android {  
  4.     compileSdkVersion 22  
  5.     buildToolsVersion "21.1.1"  
  6.   
  7.     defaultConfig {  
  8.         applicationId "com.example.way.aligesture"  
  9.         minSdkVersion 15  
  10.         targetSdkVersion 22  
  11.         versionCode 1  
  12.         versionName "1.0"  
  13.     }  
  14.     buildTypes {  
  15.         release {  
  16.             minifyEnabled false  
  17.             proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'  
  18.         }  
  19.     }  
  20.     sourceSets {  
  21.         main {  
  22.             jniLibs.srcDirs = ['libs']  
  23.         }  
  24.     }  
  25. }  
  26.   
  27. dependencies {  
  28.     compile fileTree(dir: 'libs', include: ['*.jar'])  
  29.     compile project(':acra')  
  30.     compile project(':hwdroid')  
  31. }  

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


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值