【Android Studio使用教程2】Android Studio创建项目
创建项目
首先,先指出Android Studio中的两个概念。 Project 和 Module 。在Android Studio中, Project 的真实含义是工作空间, Module 为一个具体的项目。
在 Eclipse 中,我们可以同时对多个 Eclipse 的 Project 进行同时编辑,这些 Project 在同一个 workspace 之中。在Android Studio中,我们可以同时对多个Android Studio的 Module 进行同时编辑,这些 Module 在同一个 Project 之中。
Eclipse 的 Project 等同于Android Studio的 Module 。
Eclipse 的 workspace 等同于Android Studio的 Project 。
本文中所说到的项目指的是Android Studio的 Module 。Android Studio创建一个项目,首先要先创建 Project 。但是你创建项目的同时, Project 自动创建了,因此很多人容易混淆这两种概念。
讲解1
Android Studio创建项目的过程,其实就是 Eclipse 创建项目过程的细分化。 Eclipse 许多在一个页面设置的内容,Android Studio拆分成了多个页面,因此,创建项目的过程其实并不复杂。
Android Studio有两种创建项目的方法。
第一个是在Android Studio起始页选择 Start a new Android Studio project 。

第二个是在Android Studio主页,选择 File --> New Project 。

讲解2
接下来,我们会看到这个页面。

- Application name :应用程序的名称。它是app在设备上显示的应用程序名称,也是在Android Studio Project 的名称。
- Company Domain :公司域名。影响下面的 Package name 。默认为电脑主机名称,当然你也可以单独设置 Package name 。
- Package name :应用程序包名。每一个app都有一个独立的包名,如果两个app的包名相同,Android会认为他们是同一个app。因此,需要尽量保证,不同的app拥有不同的包名。
- Project localtion : Project 存放的本地目录。
以上内容设置完毕,点击 Next 。
讲解3
接下来,我们会看到这个页面。

在这里,你可以你的 Project 中 Module 的类型以及支持的最低版本。
- Phone and Tablet :表示 Module 是一个手机和平板项目。
- TV :表示 Module 是一个Android TV项目。
- Wear :表示 Module 是一个可穿戴设备(例如手表)项目。
- Glass :表示 Module 是一个 Google Glass 项目(不知道 Google Glass 是什么请自行搜索)。
你可以同时选择多个类型,区别就是项目会根据你选择的类型创建一个或多个 Module 。
Minimum SDK 表示的是 Module 支持的Android最低版本。根据不同的用户可以选择不同的版本。你可以点击 Help me choose 来查看当前Android版本分布情况。现在这个时代,如果你的项目支持到 2.2 版本几乎是支持了所有的Android设备。
以上内容设置完毕,点击 Next 。
讲解4
接下来,我们会看到这个页面(由于我的 Module 类型只选择了 Phone and Tablet ,所以会有这个页面。)。

这个页面是让我们选择是否创建 Activity以及创建 Activity 的类型。你可以选择不创建 Activity ( Add No Activity )。
如果你选择自动创建 Activity,Android Studio会自动帮你生成一些代码。根据 Activity 类型的不同,生成的代码也是不同的。有时,你能从这些自动生成的代码中,学到很多东西,比如 Fullscreen Activity 。
选择完毕,点击 Next 。
讲解5
接下来,我们会看到这个页面(上一步中,我选择了 Blank Activity 。)。

- Activity Name :自动创建的 Activity 的类名。
- Layout Name :自动创建的 Activity 的布局文件名称。
- Title :自动创建的 Activity 的名称。
- Menu Resource Name :自动创建的 Activity 的 Menu 文件名称。
以上内容设置完毕,点击 Next 。你将会看到这个进度条。这个表示,Android Studio正在创建和编译你的项目。

讲解6
项目创建编译完毕,会进入Android Studio的主页,你将看到下面的界面。

左侧是你的项目文件区域,中部是代码区域,右侧是布局文件的预览区域。
细心的话,你会发现,左侧的项目文件区域显示的文件层级,和 Eclipse 是不相同的,甚至和本地目录的文件层级也是不相同的。
和 Eclipse 不相同是因为Android Studio使用了 Gradle 这个项目构建工具,而 Eclipse 使用 Ant 构建项目,你可以通过 Gradle 设置和 Eclipse 拥有相同的目录结构。
和本地目录的文件层级不同是因为,在Android Studio 0.8版本之后,官方推荐使用 Android 文件目录显示结构,你可以切换。在项目文件区域的左上角,你可以选择你想选择的文件结构显示类型。

虽然官方建议是使用 Android ,但是我个人还是比较喜欢使用 Project 。你可以根据你的个人习惯进行选择。下面是 Android 和Project 这两种显示类型的显示区别。


从这两张图可以看出: Android 区分明显,只显示了和项目有关的文件; Project 根据本地目录结构,显示了文件结构,比较繁杂却更显示出了真实目录结构。
另外,对于项目文件区域,我还有两个设置。在项目文件区域的右上角,有一个齿轮的设置按钮,点击可以更加细节的设置文件显示效果。

默认是没有勾选 Flatten Packages 和 Autoscroll to Source 的,是我自己勾选上的。 Flatten Packages 是设置将包以完整包名的形式显示(个人习惯)。 Autoscroll to Source 是你点击某一个文件,将自动打开,省去了双击操作。
讲解7
如果你已经有一个项目,你想在这个项目中创建一个 Module ,你可以选择 File --> New Module 。
这样,会在当前的目录下创建一个 Module ,而不是在一个新的窗口中,单独创建 Project 和 Module 。
之后,你就会看到下面的界面。

同样的道理,你可以设置项目类型,但是,由于你现在是创建一个 Module ,所以只能选择一种类型。
下方的4个选项代表着不同的意义:
- Android Library :创建一个 Android Library 的 Module 。
- Import Existing Project :导入其他项目为一个 Module ,导入的项目可以是 Eclipse ADT 项目,也可以是 Gradle 项目( Gradle 只是项目构建工具, Eclipse 中也是可以使用的)。
- Import .JAR or .AAR Package :导入 JAR 或者 AAR 文件为一个 Module 。
- Java Library :创建一个 Java 的 Module ,主要用于编写 Java 的工具包。
选择完毕,点击 Next 。其余步骤,和上面几乎一样,就不在赘述了。
鉴于Android官网上下载很慢,Android Studio等已在网盘分享:Android Studio 网盘下载路径:
windows:http://yunpan.cn/cfTszP2wrJxdD (提取码:70b4)
Linux:http://yunpan.cn/cfTspUFzu2qqv (提取码:b9d3)
Mac:http://yunpan.cn/cfTsILm8hKpTB (提取码:4de0)
JDK1.7
Linux :http://yunpan.cn/cfTshyK9BGf7j (提取码:4a45)
【Android Studio使用教程2】Android Studio创建项目的更多相关文章
- WebStorm中Node.js项目配置教程(1)——创建项目
Node.js绝对是一个web开发的热点话题,作为web神器的WebStorm也是开发Node.js的佼佼者. 接下来就Node.js项目在WebStorm的配置操作就行详细的讲解,首先是创建项目.两 ...
- Scrapy教程——搭建环境、创建项目、爬取内容、保存文件
1.创建项目 在开始爬取之前,您必须创建一个新的Scrapy项目.进入您打算存储代码的目录中,运行新建命令. 例如,我需要在D:\00Coding\Python\scrapy目录下存放该项目,打开命令 ...
- ABP教程-通过ABPboilerplate模版创建项目
开篇说明: 此篇博客是属于半教程博客,为什么说是半教程呢.因为我不会打算说什么理论性的东西,没必要.要看理论性的资料以及基础信息,请前往tkb至简和@阳光铭睿的博客查看文档资料. 开发环境: vs20 ...
- Symfony 框架实战教程——第一天:创建项目(转)
这个系列的实战博客真是太有用了,很多例子自己调试也是通的,不同于很多网上不同的实战例子...附上原文地址 https://www.chrisyue.com/symfony-in-action-day ...
- Android开发简易教程
Android开发简易教程 Android 开发因为涉及到代码编辑.UI 布局.打包等工序,有一款好用的IDE非常重要.Google 最早提供了基于 Eclipse 的 ADT 作为开发工具,后来在2 ...
- 1.0 Android基础入门教程
1.0 Android基础入门教程 分类 Android 基础入门教程 本教程于2015年7月开始撰写,耗时半年,总共148节,涵盖了Android基础入门的大部分知识,由于当时能力局限,虽已竭尽全力 ...
- [转载]Google Android开发精华教程
原文地址:Android开发精华教程">Google Android开发精华教程作者:huiyi8zai Android是Google于2007年11月5日宣布的基于Linux平台的开 ...
- [转]Android Studio系列教程六--Gradle多渠道打包
转自:http://www.stormzhang.com/devtools/2015/01/15/android-studio-tutorial6/ Android Studio系列教程六--Grad ...
- Android笔记——Windows环境下Android Studio v1.0安装教程
本文主要讲解Windows环境下Android Studio的安装教程,Mac的Android Studio安装与此类似不在赘述,另外友情提示Windows下的SDK与Mac的SDK是通用的,可以直接 ...
随机推荐
- ESP8266 TCP传输AT指令顺序
); //复位 ret = ESP8266_Cmd ( );//测试AT启动 ret = ESP8266_Cmd ( );//选择WIFI应用模式softAP+station //ret = ESP8 ...
- msyql数据库主从架构
在Web应用系统中,数据库性能是导致系统性能瓶颈最主要的原因之一.尤其是在大规模系统中,数据库集群已经成为必备的配置之一.集群的好处主要有:查询负载.数据库复制备份等. MySQL数据库支持数据库的主 ...
- HDU 1712 ACboy needs your help (分组背包模版题)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1712 有n门课,和m天时间.每门课上不同的天数有不同的价值,但是上过这门课后不能再上了,求m天里的最大 ...
- HDU4289Control(最大流)
看了这道题,然后重新开始练习自己的刚敲不久的网络流,发现还是难以一遍敲得完整啊,,,,, 调了...遍,改了...遍,测了...遍,交了,,,遍,总算是A了,,不简单啊 然后试着用了其他两种算法EK和 ...
- kindeditor html代码过滤不能保存
这是因为编辑器默认开启了过滤模式(filterMode:true).当filterMode为true时,编辑器会根据htmlTags设定自动过滤HTML代码,主要是为了生成干净的代码.如果想保留所有H ...
- spring+jpg环境下,spring实现文件下载web实现通用的文件下载方法
jar包复制到WEB-INF 文件夹lib下: commons-io-1.3.2.jar public static String download(HttpServletRequest reques ...
- Log设计
Log设计 http://biancheng.dnbcw.info/net/380312.html http://blog.csdn.net/anyqu/article/details/7937378 ...
- jqGrid初次使用遇到的问题及解决方法
问题一:初始化定义翻页用的导航栏时,表中出现"undefined"方框: 解决:需要导入grid.locale-cn.js文件. 问题二:页面只有一页,无法翻页: 解决:初始化设置 ...
- java正则表达式语法详解及其使用代码实例
原文地址 译者序(下载代码) 正则表达式善于处理文本,对匹配.搜索和替换等操作都有意想不到的作用.正因如此,正则表达式现在是作为程序员七种基本技能之一*,因此学习和使用它在工作中都能达到很高的效率. ...
- c++中获取代码运行时间
include<ctime> time_t begin,end; begin=clock(); { .............//被测试的代码 } end=clock(); cout ...