前言:我们以前eclispe时代, 经常都是跑到github浏览第三方开源资源,然后下载下来,运行一下sample之类的,学习没有接触的第三方安卓库,但是到了Android Studio,在github下载下来的project,利用as进行import之后,总是容易发生很多问题和错误,导致程序无法运行。(本篇我们只讨论下载后的项目如何利用as进行import成功运行,不涉及maven的方式)

一、当前环境说明

as说明:
Android Studio1.4.1
buildtools —— 23.0.1
windows 64bit

库说明:
Android-Universal-Image-Loader 1.9.5+
(当前下载时间为 2015-11-16)

一、as导入github下载的库工程

1、在as上新建一个工程,待建立完成之后运行一遍在手机或者模拟器上。然后打开我们刚刚新建的那个工程目录

新建一个工程成功运行.png

2、复制替换文件

由于库的作者的开发环境(as的版本,sdk的版本,buildtool等和我们当前本机开发环境的不同,所以gradle的相关的文件和文件夹就会产生很大差异)

我们要做的,就是尽量让下载下来的第三方的项目在我们当前的环境下好好的跑起来。接下来开始行动了。

  • 在行动之前,让我们看一下我们主要操作的是那些文件和文件夹

下面的圈出来的这四个文件或者文件夹

  • gradle 文件夹 (必须)
  • build.gradle (必须)
  • gradle.properties (必须)
  • .gradle 文件夹 (非必须)(注意前面的.)

需要操作的几个文件/文件夹.png

接下来看一下我们下载下来的库解压后的文件结构:

从github上解压后的project的文件结构.png

看完这两张图片,我们就正式干活了。

我们要做就是把上面提及的我们本地新建的工程生成4个文件/文件夹复制到从github上解压出来的文件夹里,进行替换操作。(本人一直都是删掉然后另外复制过去)

注: gradle 文件夹(必须) 、build.gradle (必须)和gradle.properties (必须) 这三个一定要复制
但是 .gradle 文件夹 (前面带.的这个文件夹)如果我们从github上解压下来的没有这个就不用复制,当然你要复制也是可以的,不会报错的

替换文件/文件夹.png

如图那般替换就可以了。

3、as进行import 工程

刚刚经过替换之后的project可以顺利地导入了。

当如的方式有两种:

  • 第一种:编程界面 Import Project
  • 第二种:欢迎界面 Open an existing project

File —— New —— Import Project 一下

import project.png

欢迎界面 Open an existing project

Open an existing project.png

两种方式效果是一致的。引入的时候不是选择project名称,而是选择的项目的build.gradle文件,如下图:

选择build.gradle文件.png

这样就可以引入的project了。
但是引入后如果报这样的一个错误,

错误如下:

报错.png

这个其实是非常好解决的,
点击 Open File
把最下面的 apply 那一句删掉或者备注掉
重新编译一下程序。即可。

解决报错.png

这时候再看,发现module改显示app的显示app,改显示库的显示库了。

成功导入够效果如下图:

成功import.png

sample成功运行

sample成功运行.png

导入module

这个没啥可说的,直接把

File —— New —— Import Module就行了

直接引入module.png

找到我们想要引入的库(库在as里面也是module的概念)

module没有被project那么娇气,引入很方便

本篇完。

文/阿敏其人(简书作者)
原文链接:http://www.jianshu.com/p/1b7209bf0c76
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

Android Studio导入github下载的project和module的更多相关文章

  1. Android Studio导入github下载的工程

    现在从github上面现在的项目大部分都是Android Studio工程,那么问题来了,从github上面down一个工程下来,怎么导入android studio呢? 对刚从eclipse转And ...

  2. android studio学习----Android Studio导入github下载的工程--替换方法

    http://www.cnblogs.com/liuling/p/2015-9-16-01.html 这种方法是可行的,主要是先自己创建一个project ,然后把没有的文件夹都复制过去就OK了,特别 ...

  3. Android Studio导入GitHub上的项目常见问题(有例子)

    前言:github对开发者而言无疑是个宝藏,但想利用它可不是件简单的事,用Android studio导入开源项目会遇到各种问题,今天我就以github上的一个图片轮播项目为例,解决导入过程中的常见问 ...

  4. Android Studio导入GitHub上的项目常见问题(以图片轮播开源项目为实例)

    前言:github对开发者而言无疑是个宝藏,但想利用它可不是件简单的事,用Android studio导入开源项目会遇到各种问题,今天我就以github上的一个图片轮播项目为例,解决导入过程中的常见问 ...

  5. 【转】Android studio 导入github工程

    http://blog.csdn.net/feixiaku/article/details/45155587/ 从github下载两个开源项目: PagerSlidingTabStrip    |   ...

  6. Android studio 导入 github 工程

    最近从 github 下载两个开源项目,导入 Android Studio 都以 Studio 卡死结束.第一次以为是项目问题,第二次查询资料发现导入方式不正确,在此整理. 原目录结构如下: Andr ...

  7. android studio学习---Android studio 导入github工程

    无论是那种方式,都最好是先把github上的工程项目下载到本地,然后修改文件再import 首先要知道  自己的build.gradle,在project下面的版本号是多少,比如我的: depende ...

  8. Android Studio导入github项目源码步骤

    1.从github上将源码下载下来 2.打开AS,新建一个新项目(我选择了EmptyActivity) 3.先不要在AS 中打开源码,来整理源码 在源码的目录下面,将project下的build.gr ...

  9. Android问题集锦之三十四:android studio导入项目下载gradle-x.x.x-all.zip

    每每打开github上的项目,都会先下载gradle.每一个项目都有自己的gradle构建程序,可是打开一个新项目就又一次下载gradle对于网络较差的情况真是苦不堪言.所以我们能够用已经下载好的放到 ...

随机推荐

  1. Jquery Uploadify3.21.与2.1版本 使用中存在的问题--记录三

    Jquery Uploadify是个上传插件. 2.1版本与3.2.1版本有很大区别,方法名跟参数变动较大 1.uploader:该属性是用来存放swf的路径,这个swf就是一个Flash的一个图标, ...

  2. require() 源码解读

    2009年,Node.js 项目诞生,所有模块一律为 CommonJS 格式. 时至今日,Node.js 的模块仓库 npmjs.com ,已经存放了15万个模块,其中绝大部分都是 CommonJS ...

  3. 计算机程序的思维逻辑 (31) - 剖析Arrays

    数组是存储多个同类型元素的基本数据结构,数组中的元素在内存连续存放,可以通过数组下标直接定位任意元素,相比我们在后续章节介绍的其他容器,效率非常高. 数组操作是计算机程序中的常见基本操作,Java中有 ...

  4. spring源码分析之<context:component-scan/>vs<annotation-config/>

    1.<context:annotation-config/> xsd中说明: <xsd:element name="annotation-config"> ...

  5. CSS3与页面布局学习总结(七)——前端预处理技术(Less、Sass、CoffeeScript、TypeScript)

    CSS不像其它高级语言一样支持算术运算.变量.流程控制与面向对象特性,所以CSS样式较多时会引起一些问题,如修改复杂,冗余,某些别的语言很简单的功能实现不了等.而javascript则是一种半面向对象 ...

  6. Java 素数 prime numbers-LeetCode 204

    Description: Count the number of prime numbers less than a non-negative number, n click to show more ...

  7. C#基础回顾(二)—页面值传递、重载与重写、类与结构体、装箱与拆箱

    一.前言 -孤独的路上有梦想作伴,乘风破浪- 二.页面值传递 (1)C#各页面之间可以进行数据的交换和传递,页面之间可根据获取的数据,进行各自的操作(跳转.计算等操作).为了实现多种方式的数据传递,C ...

  8. 搭建了个人的github.io博客

    地址:http://www.shutu.tech 说明: 基于github + hexo简易搭建的个人博客,用于收藏经典博文及技术文章,也会用于个人的技术成长记录.我是看到这篇文章搭建的:http:/ ...

  9. 通过HTML5的Drag and Drop生成拓扑图片Base64信息

    HTML5 原生的 Drag and Drop是很不错的功能,网上使用例子较多如 http://html5demos.com/drag ,但这些例子大部分没实际用途,本文将搞个有点使用价值的例子,通过 ...

  10. ES6笔记(5)-- Generator生成器函数

    系列文章 -- ES6笔记系列 接触过Ajax请求的会遇到过异步调用的问题,为了保证调用顺序的正确性,一般我们会在回调函数中调用,也有用到一些新的解决方案如Promise相关的技术. 在异步编程中,还 ...