(转)Android学习笔记②——HelloWorld的创建已经基本知识
开发第一应用
可以开发属于自己的应用,是否有点小激动?好吧!让我们开始,首先点击Start a new Android Studio Project创建工程:
接下来需要输入应用名称(第一个字母要大写)、公司域以及指定应用存放目录,点击Next按钮进入下一步:
如果第一个字母不是大写,会提示:
The application name for most app begins with an uppercase letter
接下来需要选择开发什么设备(可选“手机和平板”、“穿戴(Wear)”、“TV”,“车载(Android Auto)”等)上的应用,以及确定最小SDK的版本号。
Minimum SDK的作用是在应用安装前,会对设备的Android版本做校验,如果设备的Android版本低于这个最小版本会阻止用户安装应用。

如果不知道怎么选择最小版本可以点击Help me choose看看每个版本的分布图表和描述:
继续点击Next按钮进行下一步,由于我们先前没有装2.3.3这个版本的SDK,Android Studio会自动帮我们下载需要的组件。这个过程会有些慢。
接下来我们需要通过形象友好的GUI模板,来选择我们第一个Activity的样式:
然后需要给Activity和Layout起一个名字。
点击Finish按钮后,Android Studio开始创建并编译应用。
编译结束后,我们就可以看到Android Studio的IDE界面了。
从图上可以看出Android Studio已经帮我们将工程组织的很好了。
补充!!!
如果用的是新版本的Android Studio 的话,在建好项目之后 会报下面的错误:
Error:(1, 0) Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRID
这是gradle 的版本问题这个是时候我们要看下你的gradle的版本:
Settings->Build,Execution,Deployment->Gradle (或者直接在搜索中直接搜索 )如下图

由此可见 gradle的版本是2.10的 这个时候我只要修改下版本信息就行了,如果没有gradle的文件的话可以在 http://gradle.org/gradle-download/下载,我这个是下载了Android Studio 自带的
打开bulid.gradle 把 classpath那一行 后面改成 classpath 'com.android.tools.build:gradle:2.0+' 网上也有说改成其他的版本的,我觉得应该一样吧 这个时候 在点一下 Try Again 就OK了!错误就没了!

界面介绍

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

这个区域是运行和调试相关的操作。
1、编译2中显示的模块
2、当前项目的模块列表
3、运行2中显示的模块
4、调试2中显示的模块
5、测试2中显示的模块代码覆盖率
6、调试安卓运行的进程
7、重新运行2中显示的模块
8、停止运行2中显示的模块
区域2介绍

这个区域主要是和Android设备和虚拟机相关的操作。
1、同步工程的Gradle文件,一般在Gradle配置被修改的时候需要同步一下
2、虚拟设备管理
3、Android SDK管理
4、Android设备监控
5、Genymontion模拟器(需要装Genymontion插件,安装篇[模拟器安装]部分)
区域3介绍

这个区域主要是工程文件资源等相关的操作。
1、展示项目中文件的组织方式,默认是以Android方式展示的,可选择“Project、Packages、Scratches、ProjectFiles、Problems…”等展示方式。平时用的最多的就Android和Project两种。
2、定位当前打开文件在工程目录中的位置。
3、关闭工程目录中所有的展开项。
4、额外的一些系统配置,点开后是一个弹出菜单:
Autoscroll to Source 和 Autoscroll from Source两个勾选起来后,Android Studio会自动定位当前编辑文件在工程中的位置,用起来会很爽。其他功能大家可以自己摸索摸索。
区域4介绍

这个区域主要是用来编写代码和设计布局。
1、已打开的文件的Tab页。(在Tab页上按下Cmd键 + 点击鼠标会出现一个弹出菜单会有惊喜哦!)
2、UI布局预览区域。
3、布局编辑模式切换,对于一些老鸟来说更喜欢通过Text来编辑布局,新手可以试试Design编辑布局,编辑后再切换到Text模式,对于学习Android布局设计很有帮助。
区域5介绍

这个区域大部分是用来查看一些输出信息的。
1、终端 - 喜欢命令行操作的伙伴不用额外启动终端了。
2、信息 - 工程编译的一些输出信息。
3、监控 - 可以查看应用的一些输出信息。
4、运行 - 应用运行后的一些相关信息。
5、TODO - 标有TOTO注释的列表。
6、事件 - 一些事件日志。
7、Gradle控制台,通过这个可以了解Gradle构建应用的时候一些输出信息。
Android Studio目录结构

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位置等属性)
应用开发调试

如上图1所示在需要调试的行号处点击设置断点,然后点击2所示的Debug按钮(或直接按下Ctrl+D快捷键)开始调试。
如上图所示Android Studio下方出现了调试视图。
1、当前程序停留的代码行
2、调试相关的一些按钮
3、程序调用栈区,该区域显示了程序执行到断点处所调用过的所有方法,越下面的越早被调用。
4、局部变量观察区
5、用户自定义变量观察区

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(Alt+Cmd+R) - 一直运行程序直到碰到下一个断点。
8、View Backpoints(Shift+Cmd+F8) - 查看你设置过的所有断点并可以设置断点的一些属性

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

9、Mute Backpoints - 选中后所有的断点别设置成无效状态。再次点击可以重新设置所有断点有效。
好了,到这里调试相关的都介绍完了。
应用打包签名
基础
一个 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
模块中的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...,如下图:
在弹窗中一直Next直到下面这个界面:
在没有Key的情况下,我们可以先点击Create new...按钮来创建一个Key,创建过程很简单,如下图:
如果你已经存在Key了,那就点击Choose existing...按钮指定.jks文件位置,如下图:
输入Key store password和Key password(在创建Key的时候输入的那两个密码),点击Next按钮:
接下来就点击Finish按钮,坐等AS打包签名完成,签名完成后AS会提示我们:
点击Revaal in Finder,可以找到我们签名好的APK文件:
本文转自:深度开源(open-open.com)
原文标题:Android Studio2.0 教程从入门到精通MAC版 - 入门篇
原文地址:http://www.open-open.com/lib/view/open1466732896151.html
(转)Android学习笔记②——HelloWorld的创建已经基本知识的更多相关文章
- Android 学习笔记四:创建工具栏按钮
原文:http://blog.csdn.net/lihongxun945/article/details/48951199 前面我们已经可以在一个Activity中添加一些按钮之类的组件.由于手机的屏 ...
- Android学习笔记(四) JAVA基础知识回顾
一.接口 1)接口中定义的方法都是public权限,并且默认为public,而不是default. 2)接口的实现(implements)是特殊的继承,类似于父类子类的关系,可以向上转型(非常重要). ...
- Android学习笔记之Activity详解
1 理解Activity Activity就是一个包含应用程序界面的窗口,是Android四大组件之一.一个应用程序可以包含零个或多个Activity.一个Activity的生命周期是指从屏幕上显示那 ...
- Android 学习笔记之Volley(七)实现Json数据加载和解析...
学习内容: 1.使用Volley实现异步加载Json数据... Volley的第二大请求就是通过发送请求异步实现Json数据信息的加载,加载Json数据有两种方式,一种是通过获取Json对象,然后 ...
- android学习笔记36——使用原始XML文件
XML文件 android中使用XML文件,需要开发者手动创建res/xml文件夹. 实例如下: book.xml==> <?xml version="1.0" enc ...
- [Cocos2d-x for WP8学习笔记] HelloWorld结构分析
先来看一下目录结构: Assets:游戏资源文件,图片音频等,Resource文件夹也有类似功能 include:用于放置游戏头文件 Shaders:渲染器着色器文件(大雾) cocos2dorig. ...
- [Cocos2d-x for WP8学习笔记] HelloWorld
Cocos2d-x 是一个支持多平台的 2D 手机游戏引擎,使用 C++ 开发,基于OpenGL ES,基于Cocos2d-iphone,支持 WOPhone, iOS 4.1, Android 2. ...
- Android学习笔记之JSON数据解析
转载:Android学习笔记44:JSON数据解析 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,为Web应用开发提供了一种 ...
- udacity android 学习笔记: lesson 4 part b
udacity android 学习笔记: lesson 4 part b 作者:干货店打杂的 /titer1 /Archimedes 出处:https://code.csdn.net/titer1 ...
随机推荐
- Python学习示例源码
函数和函数式编程 函数定义: 函数调用: 过程定义: 过程调用: 面向过程的编程方法: """ 面向对象-----类------class 面向过程-----过程---- ...
- Python面试题之Python面向对象编程汇总
面向对象的设计思想是从自然界中来的,因为在自然界中,类(Class)和实例(Instance)的概念是很自然的.Class是一种抽象概念,比如我们定义的Class——Student,是指学生这个概念, ...
- Python面试题之functools模块
文档 地址 functools.partial 作用: functools.partial 通过包装手法,允许我们 "重新定义" 函数签名 用一些默认参数包装一个可调用对象,返回结 ...
- jquery的prev选择器无效
今天使用jquery操作dom 需要把当前元素的同级元素中前面带有属性a=1的元素筛选出来. 查看api, .prev() 获得匹配元素集合中每个元素紧邻的前一个同辈元素,由选择器筛选(可选). 看 ...
- PHP 实现归并排序算法
算法原理 原理: 利用递归,先拆分.后合并.再排序. 步骤: 均分数列为两个子数列 递归重复上一步骤,直到子数列只有一个元素 父数列合并两个子数列并排序,递归返回数列 代码实现 // 归并排序主程序 ...
- IDEA 安装mybatis 插件 可以通过mapper定位到xml
在使用IDEA的时候 ,通过mapper类定位到 xml文件是让人很头疼的问题! 无意中发现了这个插件!可以通过类方法直接定位到xml中!比较强大!哈哈! 这玩意好像是付费的! 不过不破解也能用! 哈 ...
- svn常用维护命令
公司版本管理同时用的svn和gitlab,有互补作用 这边写一写慢慢积累自己用过的svn常用维护 查看版本范围之间的变化: [root@192-168-2-82 mnt]# svn log -r 45 ...
- Spring Boot CRUD+分页(基于JPA规范)
步骤一:JPA概念 JPA(Java Persistence API)是Sun官方提出的Java持久化规范,用来方便大家操作数据库. 真正干活的可能是Hibernate,TopLink等等实现了JPA ...
- NAT模式下远程连接centos6虚拟机与虚拟机网络配置
最近装了centos,但是没有网络,也无法远程连接.关键是虚拟机中没有ip地址. 网上方法很多,但是每个人情况不一样,所以不尽适用. 1.解决这个问题,首先保证你的vmware的dhcp服务和net服 ...
- 秒懂算法3——插入排序(C#实现)
算法思路: 将n个元素分成[已排序]和[未排序]两部分.每次将[未排序]中的一个元素取出,插入到已排序中的相应位置.直至所有元素排序完毕. [已排序] [未排序] { { a[0] } ...