Android Studio开发App项目时引入第三方库是个比较麻烦的事情。之前导入Volley就折腾了好久,导入下拉刷新控件PullToRefresh时又碰到了各种问题。在此记录一下,以便查阅。

  一、导入PullToRefresh

  1、将PullToRefresh克隆到本地

git clone https://github.com/chrisbanes/Android-PullToRefresh

  2、克隆到本地后library目录复制到app同级目录下,并将名称改为PullToRefresh

  3、在项目根目录下的settings.gradle下添加第三方库目录

include ':app', ':PullToRefresh'

  4、在app/build.gradle下添加编译依赖

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:23.0.1'
compile project(':PullToRefresh'
)
}

  5、在PullToRefresh目录下添加build.gradle

apply plugin: 'android-library'
android {
compileSdkVersion 23
buildToolsVersion "23.0.0"
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['aidl']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
}
}

  6、最后别忘记Sync Now和Rebuild(Build-->Rebuild Project)

  二、例子:

    可查看sample目录下的例子,也可查看测试例子:https://github.com/chrisbanes/Android-PullToRefresh/wiki/Quick-Start-Guide

  三、常见问题:

  1、路径不对

14:59:54 Gradle sync failed: Configuration with name 'default' not found.
Consult IDE log for more details (Help | Show Log)

  

  导致这种问题是由于

    a、settings.gradle包含了不正确的目录:include ":目录名"

    b、app目录下build.gradle文件目录不正确:compile project(':目录名')

    c、引入的第三方库下是否包含build.gradle文件

  2、编译器版本不对

Error:A problem occurred configuring project ':PullToRefresh'.
> failed to find target with hash string 'android-17' in: D:\Users\ibm\AppData\Local\Android\sdk
<a href="openAndroidSdkManager">Open Android SDK Manager</a>

  这只需要将第三方库中build.gradle下编译器版本改成和工程项目的一致即可。

  如,项目的编译器版本为

    compileSdkVersion 23
buildToolsVersion "23.0.0"

  如果下称如下版本,则会出现以上异常。

    compileSdkVersion 17
buildToolsVersion "21.1.2"

  更多内容见:https://github.com/chrisbanes/Android-PullToRefresh/

Android Studio项目引入外部库注意事项(PullToRefresh)的更多相关文章

  1. Android Studio项目引入外部库注意事项(zxing)

    1.复制到app同级目录下,zxing: 2.在项目根目录下的settings.gradle下添加第三方库目录 4.在app/build.gradle下添加编译依赖 compile project(p ...

  2. Android Studio项目整合PullToRefresh的问题记录

    PullToRefresh下拉刷新在App中应用非常频繁,然而PullToRefresh是在ADT下开发完成的.如果要将其整合到Android Studio目录下的话颇费周折.前面的文章“Androi ...

  3. 如何在Android Studio项目中导入开源库?

    前两天,谷歌发布了Android Studio 1.0的正式版,也有更多的人开始迁移到Android Studio进行开发.然而,网上很多的开源库,控件等还是以前的基于Eclipse进行开发,很多人不 ...

  4. 如何在Android应用中引入外部网页

    在某些情况下,我们需要在Android应用中引入外部网页,这里记录一下如何操作(其实很简单^.^). 先介绍一下开发环境: 开发工具:Android Studio 1.5 SDK API版本:17 操 ...

  5. Android Studio中导入第三方库

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

  6. 怎样将android studio项目导入eclipse

    如今,越来越多的开源项目都是用android studio来开发的,所以源码都与eclipse有所不同. 以下是将android studio项目导入eclipse的一般步骤: 1. 先解压项目: 2 ...

  7. Android studio 项目(Project)依赖(非Module)

    Android studio 项目(Project)依赖(非Module) 0. 前言 对于Module 级别的依赖大家都知道,今天说下Android Studio下的项目依赖. 场景: A Proj ...

  8. 【Android Studio安装部署系列】三、Android Studio项目目录结构

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 简单介绍下Android studio新建项目的目录结构. 常用项目结构类型 在Android Studio中,提供了以下几种项目结 ...

  9. Android Studio项目Gradle内网配置

    由于内网无法连接到外部网络,在使用Gradle编译Android Studio项目时就会面临一些问题: 1.Gradle安装文件无法下载 2.Gradle Android插件无法下载 3.项目依赖文件 ...

随机推荐

  1. .net架构设计读书笔记--第二章 设计体系结构

    第五节 探索领域架构 一.领域驱动设计的价值与意义 最初在java中使用,.net要晚些才引入.领域驱动设计出现之初的争议.一个向导,少走弯路   1. 我们真的需要DDD吗? DDD并不适用于每个软 ...

  2. 20.(转)Android的样式(Style)和主题(Theme)

    Android上的Style分为了两个方面: 1,Theme是针对窗体级别的,改变窗体样式: 2,Style是针对窗体元素级别的,改变指定控件或者Layout的样式. Android系统的themes ...

  3. 高斯混合聚类及EM实现

    一.引言 我们谈到了用 k-means 进行聚类的方法,这次我们来说一下另一个很流行的算法:Gaussian Mixture Model (GMM).事实上,GMM 和 k-means 很像,不过 G ...

  4. groovy-运算符

    算术和条件运算符 Groovy支”!”操作符,例如: 1 def expression = false 2 assert !expression 基于集合的运算符: Spread Operator ( ...

  5. 在visual studio2012中如何使用localDB具体讲解

    http://www.cnblogs.com/zhangran/archive/2012/08/26/2657864.html 说明: 经过一段时间的小捉摸终于基本掌握在vs2012中如何使用loca ...

  6. 利用Arraylist输入学生的成绩,求出平均分和总分。

    Console.WriteLine("请输入学生人数:"); int n=int.Parse(Console.ReadLine()); ArrayList arr= new Arr ...

  7. --hdu 2570 迷瘴(贪心)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2570 Ac code: #include<stdio.h> #include<std ...

  8. DedeCMS 5.7 后门漏洞

    简要描述: DedeCMS V5.7 SP1正式版 UTF-8 GBK版本疑似被植入一句话后门 前几日下载并不存在此代码 详细说明: shopcar.class.php被植入一句话@eval(file ...

  9. Linux常用命令 查看进程信息时 copy的-----温故而知新

    1.查进程    ps命令查找与进程相关的PID号:    ps a 显示现行终端机下的所有程序,包括其他用户的程序.    ps -A 显示所有程序.    ps c 列出程序时,显示每个程序真正的 ...

  10. Javascript中理解发布--订阅模式

    Javascript中理解发布--订阅模式 阅读目录 发布订阅模式介绍 如何实现发布--订阅模式? 发布---订阅模式的代码封装 如何取消订阅事件? 全局--发布订阅对象代码封装 理解模块间通信 回到 ...