可以开发属于自己的应用,是否有点小激动?好吧!让我们开始,首先点击Start a new Android Studio Project创建工程:

android studio 输入流创建完文件存储位置 android studio输出helloworld_Android Studio

接下来需要输入应用名称(第一个字母要大写)、公司域以及指定应用存放目录,点击Next按钮进入下一步:

android studio 输入流创建完文件存储位置 android studio输出helloworld_android_02

如果第一个字母不是大写,会提示:The application name for most app begins with an uppercase letter

接下来需要选择开发什么设备(可选“手机和平板”、“穿戴(Wear)”、“TV”,“车载(Android Auto)”等)上的应用,以及确定最小SDK的版本号。

Minimum SDK的作用是在应用安装前,会对设备的Android版本做校验,如果设备的Android版本低于这个最小版本会阻止用户安装应用。

android studio 输入流创建完文件存储位置 android studio输出helloworld_Android Studio_03

如果不知道怎么选择最小版本可以点击Help me choose看看每个版本的分布图表和描述:

android studio 输入流创建完文件存储位置 android studio输出helloworld_HelloWorld_04

继续点击Next按钮进行下一步,我们需要通过形象友好的GUI模板,来选择我们第一个Activity的样式:

android studio 输入流创建完文件存储位置 android studio输出helloworld_Android Studio_05

然后需要给Activity和Layout起一个名字。

android studio 输入流创建完文件存储位置 android studio输出helloworld_开发第一应_06

点击Finish按钮后,Android Studio开始创建并编译应用。编译结束后,我们就可以看到Android Studio的IDE界面了。

android studio 输入流创建完文件存储位置 android studio输出helloworld_开发第一应_07

从图上可以看出Android Studio已经帮我们将工程组织的很好了。

 

问题

  怎么启动项目,查看效果呢?

  1、在Android Studio 操作栏选择

android studio 输入流创建完文件存储位置 android studio输出helloworld_Android_08

按钮,然后,选择已经安装的虚拟设备,然后点击Start...启动。

android studio 输入流创建完文件存储位置 android studio输出helloworld_Android_09

  2、在操作栏,选择app项目,然后点击三角形启动。(注意:如果没有先启动模拟器,而直接点击三角形运行的话,在下图的Connectioned Devices列表中将不会展示第1步中启动的Genymotion模拟器)

 

android studio 输入流创建完文件存储位置 android studio输出helloworld_Android_10

 

 

界面介绍

android studio 输入流创建完文件存储位置 android studio输出helloworld_开发第一应_11

如上图所示,我将界面分为5个区域做详细的讲解:

区域1介绍

android studio 输入流创建完文件存储位置 android studio输出helloworld_android_12

这个区域是运行和调试相关的操作。

1、编译2中显示的模块

2、当前项目的模块列表

3、运行2中显示的模块

4、调试2中显示的模块

5、测试2中显示的模块代码覆盖率

6、调试安卓运行的进程

7、重新运行2中显示的模块

8、停止运行2中显示的模块

区域2介绍

android studio 输入流创建完文件存储位置 android studio输出helloworld_android_13

这个区域主要是和Android设备和虚拟机相关的操作。

1、虚拟设备管理。

2、同步工程的Gradle文件,一般在Gradle配置被修改的时候需要同步一下。

3 、项目结构,一些项目相关的属性配置。

4、Android SDK管理

5、Genymontion模拟器(需要装Genymontion插件,安装篇[模拟器安装]部分)

区域3介绍

android studio 输入流创建完文件存储位置 android studio输出helloworld_开发第一应_14

这个区域主要是工程文件资源等相关的操作。

1、展示项目中文件的组织方式,默认是以Android方式展示的,可选择“Project、Packages、Scratches、ProjectFiles、Problems…”等展示方式。平时用的最多的就Android和Project两种。

2、定位当前打开文件在工程目录中的位置。

3、关闭工程目录中所有的展开项。

4、额外的一些系统配置,点开后是一个弹出菜单:

android studio 输入流创建完文件存储位置 android studio输出helloworld_Android_15


Autoscroll to Source 和 Autoscroll from Source两个勾选起来后,Android Studio会自动定位当前编辑文件在工程中的位置,用起来会很爽。其他功能大家可以自己摸索摸索。

区域4介绍

android studio 输入流创建完文件存储位置 android studio输出helloworld_开发第一应_16

这个区域主要是用来编写代码和设计布局。

1、已打开的文件的Tab页。(在Tab页上按下Ctrl键 + 点击鼠标会出现一个弹出菜单会有惊喜哦!)

2、UI布局预览区域。

3、布局编辑模式切换,对于一些老鸟来说更喜欢通过Text来编辑布局,新手可以试试Design编辑布局,编辑后再切换到Text模式,对于学习Android布局设计很有帮助。

区域5介绍

android studio 输入流创建完文件存储位置 android studio输出helloworld_Android_17

这个区域大部分是用来查看一些输出信息的。

1、终端 - 喜欢命令行操作的伙伴不用额外启动终端了。

2、监控 - 可以查看应用的一些输出信息。

3、信息 - 工程编译的一些输出信息。

4、运行 - 应用运行后的一些相关信息。

5、TODO - 标有TOTO注释的列表。

6、事件 - 一些事件日志。

7、Gradle控制台,通过这个可以了解Gradle构建应用的时候一些输出信息。

Android Studio目录结构

android studio 输入流创建完文件存储位置 android studio输出helloworld_开发第一应_18

1、Gradle编译系统,版本由wrapper指定

2、Android Studio IDE所需要的文件

3、应用相关文件的存放目录

4、编译后产生的相关文件

5、存放相关依赖库

6、代码存放目录

7、资源文件存放目录(包括:布局、图像、样式等等)

8、应用程序的基本信息清单,描述哪些个组件是存在的

9、git版本管理忽略文件,标记出哪些文件不用进入git库中

10、Android Studio的工程文件

11、模块的gradle相关配置

12、代码混淆规则配置

13、工程的gradle相关配置

14、gradle相关的全局属性设置

15、本地属性设置(key设置,android sdk位置等属性)

应用开发调试

android studio 输入流创建完文件存储位置 android studio输出helloworld_Android Studio_19

如上图1所示在需要调试的行号处点击设置断点,然后点击2所示的Debug按钮(或直接按下Shift+F9快捷键)开始调试。

android studio 输入流创建完文件存储位置 android studio输出helloworld_android_20

如上图所示Android Studio下方出现了调试视图。

1、当前程序停留的代码行

2、调试相关的一些按钮

3、程序调用栈区,该区域显示了程序执行到断点处所调用过的所有方法,越下面的越早被调用。

4、局部变量观察区

5、用户自定义变量观察区

android studio 输入流创建完文件存储位置 android studio输出helloworld_android_21

1、Step Over(F8) - 程序向下执行一行,如果当前行有方法调用,这个方法执行完毕返回,然后到下一行。

2、Step Into(F7) - 程序向下执行一行,如果当前行有用户自定义方法(非官方类库方法)调用,则进入该方法。

3、Force Step Into(Alt+Shift+F7) - 程序向下执行一行,如果当前行有方法调用,则进入该方法。

4、Step Out(Shift+F8) - 如果在调试的时候你进入了一个方法,并觉得该方法没有问题,你就可以使用Step Out跳出该方法,返回到该方法被调用处的下一行语句。值得注意的是,该方法已执行完毕。

5、Drop Frame - 点击该按钮后,你将返回到当前方法的调用处重新执行,并且所有上下文变量的值也回到那个时候。只要调用链中还有上级方法,可以跳到其中的任何一个方法。

6、Run to Cursor(Alt+F9) - 一直运行到光标所在的位置。

7、Resume Program(F9) - 一直运行程序直到碰到下一个断点。

8、View Backpoints(Ctrl + Shift +F8) - 查看你设置过的所有断点并可以设置断点的一些属性

9、Mute Backpoints - 选中后所有的断点别设置成无效状态。再次点击可以重新设置所有断点有效。

在点击了View Backpoints按钮后,会出现一个断点属性窗口,可以对断点进行一些更高级的设置。

android studio 输入流创建完文件存储位置 android studio输出helloworld_HelloWorld_22

1、列出了所有程序中设置的断点

2、可以输入条件,在条件成立后断点才起作用(例如:在输入框中输入 i == 8),这种带条件断点在实际开发过程中非常有用。也可以通过右键点击断点来设置条件断点

好了,到这里调试相关的功能都介绍完了。

应用打包签名

基础

一个 Android Studio 项目中,会存在多个 .gradle 文件。其中, project 目录下存在一个 build.gradle 文件和每一个 module 会存在一个 build.gradle 文件。

工程中的build.gradle

buildscript {
	repositories {	 
	  jcenter()   // 声明使用 maven 仓库
	}
	dependencies {	 
	  // 依赖android提供的2.1.0-alpha5的gradle build
	  classpath 'com.android.tools.build:gradle:2.1.0-alpha5'
	}
}
// 为所有的工程的repositories配置为jcenters
allprojects {
	repositories {
	jcenter()
	}
}

// 清楚工程的任务
task clean(type: Delete) {
	delete rootProject.buildDir
}

模块中的build.gradle

// 这表示该module是一个app module
apply plugin: 'com.android.application'
android {
	// 基于哪个版本编译
	compileSdkVersion 23
	// 基于哪个构建工具版本进行构建的
	buildToolsVersion "23.0.3"

	// 缺省配置主要包括:应用ID,最小SDK版本,目标SDK版本,应用版本号、应用版本名
	defaultConfig {
	    applicationId "open_open.com.helloworld"
	    minSdkVersion 10
	    targetSdkVersion 23
	    versionCode 1
	    versionName "1.0"
	}

	// buildTypes是构建类型,常用的有release和debug两种,可以在这里面启用混淆,启用zipAlign以及配置签名信息等。
	buildTypes {
	    release {
	        minifyEnabled false
	        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
	    }
	}

}

// dependencies它定义了该module需要依赖的jar,aar,jcenter库信息。
dependencies {
	compile fileTree(dir: 'libs', include: ['*.jar'])
	testCompile 'junit:junit:4.12'
	compile 'com.android.support:appcompat-v7:23.2.1'
}

打包签名

选择Build->Generate Signed APK...,如下图:

android studio 输入流创建完文件存储位置 android studio输出helloworld_android_23

在弹窗中一直Next直到下面这个界面:

android studio 输入流创建完文件存储位置 android studio输出helloworld_Android_24

在没有Key的情况下,我们可以先点击Create new...按钮来创建一个Key,创建过程很简单,如下图:

android studio 输入流创建完文件存储位置 android studio输出helloworld_android_25

如果你已经存在Key了,那就点击Choose existing...按钮指定.jks文件位置,如下图:

android studio 输入流创建完文件存储位置 android studio输出helloworld_android_26

输入Key store password和Key password(在创建Key的时候输入的那两个密码),点击Next按钮:

android studio 输入流创建完文件存储位置 android studio输出helloworld_开发第一应_27

接下来就点击Finish按钮,坐等AS打包签名完成,签名完成后AS会提示我们:

android studio 输入流创建完文件存储位置 android studio输出helloworld_android_28

点击Show in Explorer,可以找到我们签名好的APK文件:

android studio 输入流创建完文件存储位置 android studio输出helloworld_android_29