Android studio 导入 github 工程
最近从 github 下载两个开源项目,导入 Android Studio 都以 Studio 卡死结束。第一次以为是项目问题,第二次查询资料发现导入方式不正确,在此整理。
原目录结构如下:
Android Studio 中的 Project 等同于 eclipse 中的 workspace , Module 等同于 eclipse 中的 project。
一、整项目导入
下载完项目先不要急着导入,按下文操作修改一些 gradle 相关文件后再导入,特别是下文说的第二个需要修改的文件,如果本地没有这个配置的包,导入时会花很长时间去下这个包,但是一般我们在安装studio的时候就已经有了。
首先,用文本编辑器,修改配置文件 build.gradle 的 dependencies 部分。
dependencies {
classpath 'com.android.tools.build:gradle:1.5.0'
}
1.5.0,改成你所安装的 Android Studio 使用的版本。若不知道该改成啥,最简单的方式是新建一个project,找到这个文件看这个值是是用的哪个版本。
更改后:
dependencies {
classpath 'com.android.tools.build:gradle:2.3.3'
}
其次,修改 gradle/wrapper/gradle-wrapper.properties 的 distributionUrl 的值 gradle-x.x-all.zip 版本。同样可以参照新建 project。也可直接用新建项目下 gradle/wrapper/ 目录下的两个文件替换。
更改后:
distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip
再次,修改 gradle.properties 文件配置,同样可以参照新建 project。如果项目这个文件没有配置,则不用管。
第四,如果存在 Modul 还需要如下修改:
A 修改 Module 目录下 build.gradle ,若文件中存在 apply from: 部分,则将该部分注释。(如果没有,则不用管。)
更改后:
//apply from: 'https://raw.githubusercontent.com/blundell/release-android-library/master/android-release-aar.gradle'
B 其他文件 Module 目录下的 project.properties 文件中的 target=android-17 ,指定 SDK 版本
有时本地 sdk 没有这个版本,且没有修改这个文件,结果编译通过可以运行。其实在之前可以指定,即在文件 gradle.properties 中指定,如下:
ANDROID_BUILD_TARGET_SDK_VERSION=21
ANDROID_BUILD_TOOLS_VERSION=21.1.2
ANDROID_BUILD_SDK_VERSION=21
以上文件改完后就可以直接导入整个工程,选择工程根目录。
如果有错点击工具栏中的同步,如下图:
注意:
我在实践时,直接用新建项目下 gradle/wrapper/ 目录下的两个文件替换下载下来的开源项目同位置的文件,不用做其余修改,即可导入成功。
二、Module 导入
如果已经有Project,只想导入 lib-zxing 和 app 这两个项目到 Model (即Project)。
首先,File > New > Import Module
其次,在项目中引用添加的 Module (以 lib-zxing 为例)
Project Structure → app(要添加引用的 Project) → Dependencies → 3 Module dependency
添加完以后,同步一下。
Android studio 导入 github 工程的更多相关文章
- 【转】Android studio 导入github工程
http://blog.csdn.net/feixiaku/article/details/45155587/ 从github下载两个开源项目: PagerSlidingTabStrip | ...
- android studio学习---Android studio 导入github工程
无论是那种方式,都最好是先把github上的工程项目下载到本地,然后修改文件再import 首先要知道 自己的build.gradle,在project下面的版本号是多少,比如我的: depende ...
- Android Studio导入GitHub上的项目常见问题(有例子)
前言:github对开发者而言无疑是个宝藏,但想利用它可不是件简单的事,用Android studio导入开源项目会遇到各种问题,今天我就以github上的一个图片轮播项目为例,解决导入过程中的常见问 ...
- Android Studio导入GitHub上的项目常见问题(以图片轮播开源项目为实例)
前言:github对开发者而言无疑是个宝藏,但想利用它可不是件简单的事,用Android studio导入开源项目会遇到各种问题,今天我就以github上的一个图片轮播项目为例,解决导入过程中的常见问 ...
- Android Studio 导入Eclipse工程
eclipse:workspace对应多个project:而android studio是project对应多个module:故,在android studio中的工程project实际上是eclip ...
- Android Studio导入github下载的工程
现在从github上面现在的项目大部分都是Android Studio工程,那么问题来了,从github上面down一个工程下来,怎么导入android studio呢? 对刚从eclipse转And ...
- android studio学习----Android Studio导入github下载的工程--替换方法
http://www.cnblogs.com/liuling/p/2015-9-16-01.html 这种方法是可行的,主要是先自己创建一个project ,然后把没有的文件夹都复制过去就OK了,特别 ...
- Android Studio导入github下载的project和module
前言:我们以前eclispe时代, 经常都是跑到github浏览第三方开源资源,然后下载下来,运行一下sample之类的,学习没有接触的第三方安卓库,但是到了Android Studio,在githu ...
- Android Studio导入eclipse工程(引用多个其它工程)
eclipse工程向android studio 迁移过程中需要到编译错误: eclipse工程的结构比较复杂,引用了其它的工程,在迁移的过程中遇到了错误. @ViewInject(R.id.edit ...
随机推荐
- 在Visual Studio中使用序列图描述对象之间的互动
当需要描述多个对象之间的互动,可以考虑使用序列图. 在建模项目下添加一个名称为"Basic Flow"的序列图. 比如描述客户是如何在MVC下获取到视图信息的. 备注: ● 通常是 ...
- ios 向sqlite数据库插入和读取图片数据
向sqlite数据库插入和读取图片数据 (for ios) 假定数据库中存在表 test_table(name,image), 下面代码将图片文件test.png的二进制数据写到sqlite数据库: ...
- 手机端可以和PC端同时在线-java QRCode 实现网站扫码登录(即支持同帐号多设备同时登录)
微信扫码测试地址:: http://sms.reyo.cn 用户名:aa 密码:123456 扫码登录实现方式很多,比如ajax轮询,http长连接(comet...),websocket,event ...
- SharePoint 列表视图修改多行文本字段显示长度
前言 最近有这么个需求,用户希望在所有项目视图显示多行文本字段,然后,又不希望显示的过场,也就是处理一下长度. 一开始就想到用js的方式去处理,偶然间发现还可以用jslink,尝试了一下,非常好用,分 ...
- Swift - RotateView
Swift - RotateView 效果 源码 https://github.com/YouXianMing/Swift-Animations // // RotateView.swift // S ...
- 趣谈Java变量的可见性问题
了解过多线程的我们,对synchorized,sleep和valatile都比较了解,但是当这三个名词和“Java变量得可见性”的话题联系在一起不知道大家是否还可以保持大脑清晰??? 最近看到一个关于 ...
- Nvidia驱动正确安装过程
找到适合的正确的驱动 去nvidia驱动官网下载 卸载掉原有驱动 sudo apt-get remove –purge nvidia* 安装驱动 进入命令行界面 Ctrl-Alt+F1 给驱动run文 ...
- .NET零基础入门05:委托与事件
一:前言 本小节,我们需要停一停我们的小游戏开发,虽然它现在还不完美,还很简单,甚至还有BUG.但是,为了更好的理解C#,现在到了该深入了解一些基础知识的时候了. 当然,实际上,本小节内容对于零基础入 ...
- [转]Linux awk 命令 说明
From : http://blog.csdn.net/tianlesoftware/article/details/6278273 一. AWK 说明 awk是一种编程语言,用于在linux/un ...
- godep使用
安装: 1.mac:brew Install godep,全局可用 2.go get -u -v github.com/tools/godep 参数-u表示更新,-v可以看到进度信息.成功安装后,在 ...