常常在github上看到一些好用的框架,但是对于一个新手怎样在android studio上导入去总会遇到各种麻烦,索性来研究下第三方类库怎样在android studio上导入。

以我在github上看到的一个简单的具有水面波动效果的TextViewUI控件为例,github地址:https://github.com/RomainPiel/Tianic。首先使用Git工具将其clone下来或下载其zip文件并解压。

在android studio中新建项目GithubSample,android studio 中导入模块和第三方类库从File->New->ImportModule导入。

先来看看下下来的Tianic里都有什么

里面有自带的样例和library库,当然我们要的是library库,对于想了解怎样使用的也能够和sample一同导入,这一点能够在Tianic文件夹下的settings.gradle里更改。

该settings.gradle文件中的内容例如以下:

若不想导入sample,去掉后面就可以。这里我们导入自带的样例。非常多时候直接导入下下来的第三方类库可能会遇到各种问题。以Tianic为例,直接导入就出现了以下的问题:

说什么runProguard()方法找不到。上网一查才知道新版本号的gradle已不支持runProguard()方法对应的使用minifyEnabled取代,所以应该把sample和library下build.gradle里的runProguard换成minifyEnabled。

改后再次Sync

发现还是出现了错误

那是由于我的SDK没有19.0.1版的Build Tool,要么下载该版本号的BuildTool 要么在sample和library下build.gradle里面改成你的应用使用的版本号号。改前:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

不知道自己应用使用的版本能够在你应用下的build.gradle里查看

将sample和library下build.gradle里的相应的地方改成上图所看到的即可了,再Sync

发现还是会有错误,像这样什么什么资源找不到的错误就要看编译的依赖文件了。查看sample和library下的build.gradle文件

再查看你应用下的build.gradle文件

发现版本号不一样,改成你应用中使用的版本号后再Sync发现没有错误后就能够在你的应用中使用该框架了。先点Project Structure

再在你应用的依赖下(Dependencies)加入库依赖,在Module dependency下选择须要使用的类库。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

这样就可使用了,在主layout中加入

主Activity例如以下:

执行效果:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">       

前面讲的是一步一步哪里出了错再改哪里。最好的办法是在未导入Android studio前将须要导入的类库的对应文件进行修改,再来简单回想下,在类库所在文件夹下的settings.gradle中选择是否导入样例demo,将类库文件夹下build.gradle文件里箭头所指地方版本号改成自己项目所用版本号。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

将类库文件夹下gradle/wrapper/gradle-wrapper.properties里箭头所指版本号号改成自己项目所用版本号。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

将所需库文件夹下(不包括sample的类库文件夹)下的build.gradle文件里对应的版本进行修改(导入sample的话sample下的build.gradle也作对应的修改),这样导入之前修改好导入的时候就会快一点错误也会少一点。其他的依据提示进行操作。

Android studio中导入第三方类库的更多相关文章

  1. 如何向android studio中导入第三方类库

    下面分两种情况介绍一下如何导入第三方类库. 1.对于jar的类库,直接复制进libs目录,然后把jar复制进去,然后File->Project Structure,然后选中主module的名称, ...

  2. Android Studio中导入第三方库

    之前开发Android都是使用的eclipse,近期因为和外国朋友Timothy一起开发一款应用,他是从WP平台刚切换使用Android的,使用的开发环境时Android Studio,为了便于项目的 ...

  3. Android如何使用so文件和Android studio中导入so

    Android中使用so文件: 做一个PDF阅读的功能,找到一个开源的库,mupdf.下载的是网上编译好的so库,导入到自己项目中的时候一直报错Java.lang.UnsatisfiedLinkErr ...

  4. 在android studio中导入github下载的工程

    1.从Github中下载工程压缩包,并将其解压到本地 2.修改文件 假设,解压后的文件目录如下: (1)修改配置文件  xx\build.gradle // Top-level build file ...

  5. Android Studio中导入v4,v7和recyclerview-v7包的方法

    概述 Android Studio中新建工程中会默认导入v7的包,即在gradle中默认配置了com.android.support:appcompat-v7:x.x.x的依赖.但是不会默认为我们配置 ...

  6. Support Library官方教程(3)android studio中导入支援包

    Support Library Setup How you setup the Android Support Libraries in your development project depend ...

  7. Android Studio中导入Android项目StepbyStep

    想把在eclipse的项目导入Android studio,有两种方法,但是我喜欢的是不改变项目文件结构的方法,因为这样可以兼容eclipse. 第一步: 导入的项目不能运行,需要配置运行环境.And ...

  8. 如何在Android Studio中导入JNI生成的.so库

    由于在原来的ADT的Eclipse环境中,用ndk_build工具生成了相应的各个.so库文件之后,eclipse工具就会自动把这些库导入到apk中.而Android Studio目前为止(0.86版 ...

  9. Android开发中导入第三方库所遇问题记录

    1.重复循环依赖的问题 (1)需求 如下图所示: 在Android 项目中,采用模块化开发,一个是主跑application--Mudule A,另外一个是library--Library B 1)M ...

随机推荐

  1. 升级到php7和安装拓展(mac centos)

    Mac升级到php7 使用homebrew安装php7 brew update #更新源 brew search php #查找源中的php,发现有php7.1版本,安装最新的php7.1 brew ...

  2. 02-MariaDB主从安装SpringBoot整合MyBatis配置

    关于MariaDB的介绍 MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为My ...

  3. Ext NumberField使用

    Ext.onReady(function(){ Ext.QuickTips.init(); Ext.form.Field.prototype.msgTarget="side"; v ...

  4. EntityFramework中几种操作小结

    目前项目中使用到的EntityFramework中几种操作小结,先标记下.没有详细介绍,后续有空的话再补充一些并完善一下. 列中加入RowVersion时间戳 public class Product ...

  5. java多线程知识汇总(三)如何选择锁?如何加锁

    1.锁,保证的是被锁的代码,一次执行完毕才能被其他线程执行,锁保证了一个线程执行过程中不被其他线程打断.以保证数据的准确性. 2.数据的读写过程,是有冲突的,当一个线程正在读数据,另一个线程正在写同一 ...

  6. windows10许可证即将过期怎么办

    来自:http://www.xuexila.com/diannao/xitong/win7/1316897.html 会提示需要激活windows,不需要每隔两小时会重启一次,有些应用是运行不起来的. ...

  7. client怎样调用IBinder接口对象

    代码: public void funclick(View view){ Intent _intent = new Intent(MainActivity.this,MyService.class); ...

  8. HttpClient使用例子

    HttpClient client = new HttpClient(); String url = http://localhost:8080/ana/workFlowOaInterface.do? ...

  9. OpenCV使用二维特征点(Features2D)和单映射(Homography)寻找已知物体

    使用二维特征点(Features2D)和单映射(Homography)寻找已知物体 目标 在本教程中我们将涉及以下内容: 使用函数 findHomography 寻找匹配上的关键点的变换. 使用函数  ...

  10. [转]MySQL Explain

    Mysql Explain 详解 一.语法 explain < table_name > 例如: explain select * from t3 where id=3952602; 二. ...