Android Studio导入Project的方法
2015-10-13 19:05
375 查看
Android Studio到现在已经发展到0.8+的版本了,最近也在试着使用它,原因是多方面的,一个毕竟是未来的趋势,二则是github上越来越多的大牛开源项目都是基于Android Studio的,因此会使用Android Studio就成为一件必须的任务。
关于Android Studio的下载和安装,网上一搜一大堆的文章,本文不准备累赘地谈论这些问题,主要说一下如何在Android Studio中导入已有的项目进去。
在具体下面的工作之前,有两个概念是与Eclipse不大相同的,即Project和Module。在Android Studio中,一个Project并不是Eclipse的project,倒是有点像workspace(或者说任务吧),而Module才是与Eclipse的project相似的。所以,一个Project中可以包含多个Module,多个Module在一起共同构成一个Project,每个Module可以是一个库,也可以是一个可运行的Module(对应可运行的apk)。
好了,现在进入正题。
1、启动Android Studio,本文使用的是0.8.0版的。
2、准备需要在Android Studio中打开的项目。这里以 https://github.com/AndroidAlliance/EdgeEffectOverride/ 为例,请将对应的zip文件下载下来并解压缩,这是一个滚动控件如ScrollView滚动到超出边界时会出现高光现象的项目。之所以以这个项目为例,是因为在导入这个项目时,出现了几个问题需要解决。
3、修改项目中所需的Gradle软件包需求。
找到 EdgeEffectOverride-master\gradle\wrapper下面的gradle-wrapper.properties文件,使用Notepad++之类的文本文件工具打开它,里面的这一行(红色部分):
#Wed Oct 02 23:50:13 BST 2013
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=http\://services.gradle.org/distributions/gradle-1.8-all.zip
请将红色部分改为你的机器上已安装的Gradle版本,比如我这里是gradle-1.12-
all.zip,如图所示(在C:\Users\Administrator\.gradle\wrapper\dists\gradle-1.12-
all\2apkk7d25miauqf1pdjp1bm0uo,你的机器可能与这略有不同,因为最后一个文件夹名是随机生成的):
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/47c7df2c86614f45ce017b8de6544ea1.png)
如果不做这步修改的话,不同的项目要求的Gradle版本不同,Android Studio不得不下载多份Gradle软件包放到C:盘上,其实没有必要,因为每个Project会提出它所需的Gradle最低版本要求,可以打开Project中的build.gradle文件看到(红色部分):
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.6.+'
}
}
这里的例子是要求0.6以上版本的Gradle,因为我们的机器可能已经存在比这个版本更高的Gradle,因此不需要像上面要求的那样去下一份gradle-1.8-all.zip的文件,直接用机器中已有的即可。顺便说一下,可以通过http://services.gradle.org/distributions/xxx.zip(请将蓝色部分xxx.zip改为所需的文件名,比如gradle-1.12-all.zip,其它版本也是一样),这样手工下载下来,然后放到C:\Users\Administrator\.gradle\wrapper\dists\gradle-1.12-all\2apkk7d25miauqf1pdjp1bm0uo里面,不需要解压缩,Android Studio会自己解压缩的。
4、点击Import Project。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/8f8cc6b943a722f289d5309afe939c5e.png)
定位到项目所在的目录,找到其中的build.gradle文件,然后点击OK按钮。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/cea685fd304f701c20d9bd3995f7512d.png)
5、遇到的问题
首先会提示一个错误,大意是使用了不支持的Gradle版本,请使用Gradle1.10,如下:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/e07bf5f6a3382f252165f4748c882e6f.png)
此时点击下面的“Gradle settings”蓝色链接,出现下面的窗口:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/6d554a9a55ffa9ef5fbb269dcfd414cf.png)
选中“Use default gradle wrapper(recommended)”推荐的选项,点击OK按钮即可。回到前一个界面时,再点击Fix Gradle wrapper and re-import project蓝色链接,这样就开始修正并自动构建Project了。
在gradle构建project过程中,底部出现下图所示的提示信息,见红色感叹号的两行:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/471e457f4a51b677142308bac1ba4b1a.png)
其中第一个是说DefaultGroovMavenDeployer缺少了nexusUsername属性,第二个是说必须使用更新版本的Android Gradle插件。
先纠正第一个问题,在Android Studio中打开EdgeEffectOverride模块中的build.gradle文件,删掉最后那行(见截图底部蓝色选中部分):
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/8e4b94654360aba5c50cd32dfde63045.png)
好了,删掉最后这行,Android Studio会自动保存。注意,如果是误修改的话,可以按Ctrl+Z后退,但若要重新前进的话,快捷键是Ctrl+Shift+Z,而不是平常惯用的Ctr+Y,Ctrl+Y在Android Strdio中是删除当前行的意思。
接下来处理第二个问题,打开EdgeEffectOverride-master项目下面的build.gradle文件,如下图所示:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/a9816dbf2bd7507e160aa7ce195bda18.png)
蓝色选中部分就是要修改的内容,奇怪的是Android Studio已经自动帮我们改好了,已经是当前的Gradle插件版本了。
最后,点击顶部的“Try Again”链接,如图所示。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/ddced7aa8c86a074cbf4ace4d9cdfde5.png)
不过,又是出现新的问题:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/16ad2698e36dda3e8628be273b68b46c.png)
意思是说项目使用的SDK Build Tools版本18.0.1太低了,最低要使用19.1.0,没办法,只好按照提示改了。
继续在Android Studio中分别打开EdgeEffectOverride和EdgeEffectOverrideSample这两个模块下面的build.gradle文件,将其中的buildToolsVersion后面的数字统统改成19.1.0,如下图中的红色标记部分,记得两个build.gradle文件都要改。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/2ee5bcff1479238285e879c46161ec8a.png)
好了,点击编辑器顶部的“Try Again”,经过Gradle一番忙碌之后,一切终于好了,下载终于可以运行了。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/5360e5c58713f592d00a399b5e081f38.png)
6、点击绿色的三角箭头,EdgeEffectOverrideSample跑起,其中EdgeEffectOverride是EdgeEffectOverrideSample运行依赖的模块(相当于Eclipse中的library)。
关于Android Studio的下载和安装,网上一搜一大堆的文章,本文不准备累赘地谈论这些问题,主要说一下如何在Android Studio中导入已有的项目进去。
在具体下面的工作之前,有两个概念是与Eclipse不大相同的,即Project和Module。在Android Studio中,一个Project并不是Eclipse的project,倒是有点像workspace(或者说任务吧),而Module才是与Eclipse的project相似的。所以,一个Project中可以包含多个Module,多个Module在一起共同构成一个Project,每个Module可以是一个库,也可以是一个可运行的Module(对应可运行的apk)。
好了,现在进入正题。
1、启动Android Studio,本文使用的是0.8.0版的。
2、准备需要在Android Studio中打开的项目。这里以 https://github.com/AndroidAlliance/EdgeEffectOverride/ 为例,请将对应的zip文件下载下来并解压缩,这是一个滚动控件如ScrollView滚动到超出边界时会出现高光现象的项目。之所以以这个项目为例,是因为在导入这个项目时,出现了几个问题需要解决。
3、修改项目中所需的Gradle软件包需求。
找到 EdgeEffectOverride-master\gradle\wrapper下面的gradle-wrapper.properties文件,使用Notepad++之类的文本文件工具打开它,里面的这一行(红色部分):
#Wed Oct 02 23:50:13 BST 2013
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=http\://services.gradle.org/distributions/gradle-1.8-all.zip
请将红色部分改为你的机器上已安装的Gradle版本,比如我这里是gradle-1.12-
all.zip,如图所示(在C:\Users\Administrator\.gradle\wrapper\dists\gradle-1.12-
all\2apkk7d25miauqf1pdjp1bm0uo,你的机器可能与这略有不同,因为最后一个文件夹名是随机生成的):
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/47c7df2c86614f45ce017b8de6544ea1.png)
如果不做这步修改的话,不同的项目要求的Gradle版本不同,Android Studio不得不下载多份Gradle软件包放到C:盘上,其实没有必要,因为每个Project会提出它所需的Gradle最低版本要求,可以打开Project中的build.gradle文件看到(红色部分):
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.6.+'
}
}
这里的例子是要求0.6以上版本的Gradle,因为我们的机器可能已经存在比这个版本更高的Gradle,因此不需要像上面要求的那样去下一份gradle-1.8-all.zip的文件,直接用机器中已有的即可。顺便说一下,可以通过http://services.gradle.org/distributions/xxx.zip(请将蓝色部分xxx.zip改为所需的文件名,比如gradle-1.12-all.zip,其它版本也是一样),这样手工下载下来,然后放到C:\Users\Administrator\.gradle\wrapper\dists\gradle-1.12-all\2apkk7d25miauqf1pdjp1bm0uo里面,不需要解压缩,Android Studio会自己解压缩的。
4、点击Import Project。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/8f8cc6b943a722f289d5309afe939c5e.png)
定位到项目所在的目录,找到其中的build.gradle文件,然后点击OK按钮。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/cea685fd304f701c20d9bd3995f7512d.png)
5、遇到的问题
首先会提示一个错误,大意是使用了不支持的Gradle版本,请使用Gradle1.10,如下:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/e07bf5f6a3382f252165f4748c882e6f.png)
此时点击下面的“Gradle settings”蓝色链接,出现下面的窗口:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/6d554a9a55ffa9ef5fbb269dcfd414cf.png)
选中“Use default gradle wrapper(recommended)”推荐的选项,点击OK按钮即可。回到前一个界面时,再点击Fix Gradle wrapper and re-import project蓝色链接,这样就开始修正并自动构建Project了。
在gradle构建project过程中,底部出现下图所示的提示信息,见红色感叹号的两行:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/471e457f4a51b677142308bac1ba4b1a.png)
其中第一个是说DefaultGroovMavenDeployer缺少了nexusUsername属性,第二个是说必须使用更新版本的Android Gradle插件。
先纠正第一个问题,在Android Studio中打开EdgeEffectOverride模块中的build.gradle文件,删掉最后那行(见截图底部蓝色选中部分):
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/8e4b94654360aba5c50cd32dfde63045.png)
好了,删掉最后这行,Android Studio会自动保存。注意,如果是误修改的话,可以按Ctrl+Z后退,但若要重新前进的话,快捷键是Ctrl+Shift+Z,而不是平常惯用的Ctr+Y,Ctrl+Y在Android Strdio中是删除当前行的意思。
接下来处理第二个问题,打开EdgeEffectOverride-master项目下面的build.gradle文件,如下图所示:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/a9816dbf2bd7507e160aa7ce195bda18.png)
蓝色选中部分就是要修改的内容,奇怪的是Android Studio已经自动帮我们改好了,已经是当前的Gradle插件版本了。
最后,点击顶部的“Try Again”链接,如图所示。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/ddced7aa8c86a074cbf4ace4d9cdfde5.png)
不过,又是出现新的问题:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/16ad2698e36dda3e8628be273b68b46c.png)
意思是说项目使用的SDK Build Tools版本18.0.1太低了,最低要使用19.1.0,没办法,只好按照提示改了。
继续在Android Studio中分别打开EdgeEffectOverride和EdgeEffectOverrideSample这两个模块下面的build.gradle文件,将其中的buildToolsVersion后面的数字统统改成19.1.0,如下图中的红色标记部分,记得两个build.gradle文件都要改。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/2ee5bcff1479238285e879c46161ec8a.png)
好了,点击编辑器顶部的“Try Again”,经过Gradle一番忙碌之后,一切终于好了,下载终于可以运行了。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201910/14/5360e5c58713f592d00a399b5e081f38.png)
6、点击绿色的三角箭头,EdgeEffectOverrideSample跑起,其中EdgeEffectOverride是EdgeEffectOverrideSample运行依赖的模块(相当于Eclipse中的library)。
相关文章推荐
- Android 项目(一):自定义View绘制“柱状图”
- android push 原理
- android 单通道多应用Push系统的设计与实现
- Android ListView去掉顶部阴影
- Android显示GIF动画
- (转载)Google 发布 Android 性能优化典范
- Android性能优化之电量篇
- 疯狂android handler书上例子更正
- android Binder 设计
- Android 根据规划 Touch 分配和消费机制的事件
- Android中fragment之间和Activity的传值、切换
- Android 屏幕适配方案
- apk获取资源文件及反编译方式
- Android自定义正负双向SeekBar
- 一起学习android使用一个回调函数onCreateDialog实现负载对话(23)
- android sensor 框架--Java层
- Android之SimpleAdapter的使用
- Android仿58同城Loading View
- Android,两个互相影响的EditText如何避免死循环
- AndroidLifeCycle