codecamp

Android Studio 添加第三方库的6种方式(Jar,module,so等)

前几篇我们讲过了AS3种添加插件的方式,以及[最常用的一些快捷键的用法]http://www.w3cschool.cn/androidstudio/androidstudio-kpws253p.html),这篇我们讲讲添加第三方库的方法,我这里讲的是最实用、最简单也是最有效的方法,网上很多方法杂七杂八的而且有的已尽很老了在新的版本中根本不起作用,好了开始教程


点击项目设置按钮

这里写图片描述

依次选择 App & Dependencies

这里写图片描述

1. 直接搜索法

依次选择 + & Library dependency

这里写图片描述

这里的搜索一定要是全名的,不然搜不到哦

这里写图片描述

下图所表示的库和Gradle文件是对应的,后面我们会将Gradle

这里写图片描述

点击OK后,我们会看到AS下边中心位置出现了刷新,以及重新Build项目

这里写图片描述

测试

这里写图片描述

这里如果你想问我的背景怎么设置的那么请看这里:[Android Studio 权威教程]Android Studio 三种添加插件的方式,注意先顶帖哦,可以自己设置图片哦

2. libs添加法

这里直接复制你的第三方jar包到如下目录,我们这里以UML为例子,首先点击Android ,切换到Project

这里写图片描述

找到app & libs ,如果没有libs就新建一个;如果是eclipse导出过来的项目那么这个libs目录直接在根目录下,这点切记

这里写图片描述

现在我们点击下图的按钮重新Build一下项目

这里写图片描述

测试

这里写图片描述

3. Module添加法

这在这里新建了一个Module名称为 mylibrary,和新建项目差不多,这里先不多讲,然后我新建了一个UserTest.class做测试,我们在App中调用这个类

这里写图片描述

然后我们开始添加Module,点击项目设置小按钮

这里写图片描述

app &Dependencies & + &3.Module dependency

这里写图片描述

选择Module

这里写图片描述

然后就看到我们添加的Module了,然后点击ok

这里写图片描述

Build项目中,等到Build完毕我们测试

这里写图片描述

测试

这里写图片描述

4. Gradle 直接添加法

找到build.gradle(Module:app),然后找到dependencies,

这里我们可以看到我们刚才添加的库,刚才那个项目设置是和这里是一一对应的。

这里写图片描述

我们这里以github上android 中Star最多的网络请求框架[android-async-http],我们来到它的官网,我们可以看到这样一段描述:

这里写图片描述

再看看上边的那个图,我们是不是可以直接复制下面的内容就可以了

compile 'com.loopj.android:android-async-http:1.4.5'

这里写图片描述

然后我们重新点击Build按钮,然后开始测试

(注意:这里有时候build一两次是不可以的,需要多build几次,原因你懂得)

这里写图片描述

测试

这里写图片描述

5. 添加.so链接库法

如果你的app需要集成百度地图之类的,一定有这样的so动态库,这里是我自己编译的一个简单的so库,我们做测试:

这里写图片描述

然后复制lib下的所有文件,到AS的app > libs下

这里写图片描述

然后找到build.gradle(Module:app) 文件,在android节点下添加如下内容

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

这里写图片描述

然后build一下

这里写图片描述

看到如下说明成功构建了

这里写图片描述

测试,使用jni给TextView赋值

这里写图片描述

这里写图片描述

这里我们就测试成功了,下面我们讲一种更加简单粗暴的方法

6. 添加.so简单粗暴法

直接创建一个jniLibs目录就可以了,然后复制就好了

路径为:app & src & main &jniLibs

这里写图片描述

到这里我们的添加第三方库的教程就结束了,如果有问题请留言,感谢


Android Studio 最实用的快捷键
Android Studio断点调试和高级调试
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }