很多时候,studio的IDE并不能满足需求,在以下场景下,我们需要手动修改build.gradle文件来改变配置


为工程添加libs目录下所有JAR依赖

在module settings中为module增加dependence时,有如下选项:


第一项可以添加网络依赖的support jar包,第二项可以增加单个jar的依赖,第三个可以增加module依赖。

libs目录下有成吨的jar,每次添加都要修改配置,万一忘记就不好了。

可以在dependencies节点添加如下内容:

    compile fileTree(dir: 'src/main/libs', include: ['*.jar'])
用IDE添加单个JAR依赖后,build.gradle文件增加的对应的内容是“compile file”

增加网络JAR依赖

support-v4等包比较神烦,为了统一管理,可以直接引用。

不过好像直接用IDE也能修改,在dependencies节点下面增加:

compile 'com.android.support:support-v4:19.1.0'

这段也是在depenencies下面,可以和上一段进行合并。。


修改了libs目录

修改了libs目录,也要修改配置,在android节点下增加如下内容:
sourceSets.main {    jniLibs.srcDirs 'src/main/libs'}


在NDK中引用了一些库

我的jni层使用的是C++代码,C++和C的JNI函数还是有区别的。

我的工程中使用了android的log以及C++的STL库。

之前是eclipse的工程,在C++代码中包含了:

#include <android/log.h>
而在jni的Application.mk文件中添加了STL库支持:
APP_STL := stlport_static
直接在命令行中NDK-BUILD没有错误,导出到studio之后编译找不到log以及STL。

现在在build.gradle文件的android.defaultConfig节点下加入如下内容:

ndk {    moduleName "aa"    stl "stlport_static"    ldLibs "log"}
其中aa是我的so库的名字。


最后,我的配置文件粘贴如下供参考:

apply plugin: 'com.android.application'android {    compileSdkVersion 19    buildToolsVersion "23.0.3"    defaultConfig {        applicationId "com.example.sample"        minSdkVersion 14        targetSdkVersion 19        ndk {            moduleName "aa"            stl "stlport_static"            ldLibs "log"        }    }    buildTypes {        release {            minifyEnabled false            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'        }    }    sourceSets.main {        jniLibs.srcDirs 'src/main/libs'    }}dependencies {    compile 'com.android.support:support-v4:19.1.0'    compile fileTree(dir: 'src/main/libs', include: ['*.jar'])}

更多相关文章

  1. 一款常用的 Squid 日志分析工具
  2. 手把手带你搭建 Elasticsearch 集群
  3. GitHub 标星 8K+!一款开源替代 ls 的工具你值得拥有!
  4. RHEL 6 下 DHCP+TFTP+FTP+PXE+Kickstart 实现无人值守安装
  5. Linux 环境下实战 Rsync 备份工具及配置 rsync+inotify 实时同步
  6. Android(安卓)Database【origin】
  7. Android生存指南之:解Bug策略与思路问题的详解
  8. android 权限问题分析
  9. .Net 转战 Android(安卓)4.4 日常笔记(3)--目录结构分析

随机推荐

  1. android canvas drawText 使用说明
  2. android闹钟程序实现铃声
  3. Android Studio3.2 Butter Knife配置填坑
  4. 安卓屏幕适配
  5. android studio的安装信息
  6. (Android)调用百度地图api之添加覆盖物
  7. android http通信——HttpURLConntection
  8. 关于 Activity 中 must implement OnFrag
  9. android 更新sdk ip
  10. Android存储:SharePreferences保存Map方法