Android零基础入门第8节:HelloWorld,我的第一趟旅程出发点
原文:Android零基础入门第8节:HelloWorld,我的第一趟旅程出发点
经过前面几期的学习,我们知道了Android的前世今生,也大致了解了Android的系统架构和应用组件,然后花了几期来学习掌握Android的开发环境搭建。
有很多朋友不理解,现在基本都是使用Android Studio进行开发,为什么还要来总结Eclipse呢?原因很简单啊,Eclipse入手非常简单,哪怕完全小白也可以轻松开发一些简单的Android应用,同时还有很多资深程序员在同时使用Eclipse和Android Studio,当然也有很多早期代码资料是Eclipse版本的。在Android开发环境概述的时候也比较过Eclipse + ADT和Android Studio,各有优缺点,请根据自己的情况来选择就好,毕竟也就是一款IDE而已,并不影响Android开发的学习,关于AS的使用后期再总结分享。
一、创建HelloWorld应用程序
本期就先使用Eclipse开发第一款Android应用程序,关于Android Studio的开发使用后期再进行学习。
1.1创建Android工程
有三种方法创建Android工程,分别如下:
1、点击Eclipse 左上角的File 按钮,然后选择New,然后点击Android Application Project,开始Android 工程的创建。
2、鼠标右键点击Package Explorer空白区域,然后选择New,然后点击Android Application Project,开始Android 工程的创建。
3、通过Alt+Shift+N组合快捷键方式来打开工程创建窗口,选择Android Application Project,开始Android 工程的创建。
1.2配置Android工程
经过上一步操作后,进入Android工程创建向导页面,如下图所示:
主要分为两个区域,上面一个区域是Android程序的相关名称,下面一个区域是SDK的相关版本。每个区域中的内容介绍如下:
1. Application Name:
代表应用名称,当_程序安装到手机上时显示的名称就是这个应用名称。
2. Project Name:
代表项目名称,在项目创建完成后该名称会显示在eclipse中,在此使用的是 HelloWorld。
3. Package Name:
代表项目的包名。Android系统是通过包名来区分不同的应用程序,因此,必须保证同一个设备中的应用程序包名唯一,在此使用com.ibeifeng.android.helloworld。
4. Minimum Required SDK:
指程序最低兼容的版本,这里选择Android 4.0。
5. Target SDK:
指最匹配的目标版本,系统不会在这个版本上再向上做兼容操作,这里选择版本Android 8.0.0。
6. Compile With:
指程序将使用哪个版本的SDK进行编译,这里选择Android 8.0.0。
7. Theme:
指程序UI所使用的主题,默认选择是Holo Light with Dark Action Bar,这里选择无主题None。
配置上以上几个选项后,点击Next按钮进入下一步,如图所示:
这里有几个复选框,下面针对这几个复选框进行简要介绍,具体如下:
1).Create custom launcher icon:
用于创建 Android 图标。
2).Create activity:
用于创建 Activity,即Android程序界面。
3).Mark this project as a library:
将当前创建的项目封装成一个库文件。
4).Create Project in Workspace:
用于指定项目创建的工作空间。
5).Add project to working sets:
将新建的项目添加到工作空间,即项目存放的物理地址,暂时可以不用选择。
一般使用默认的配置即可,单击图中的Next按钮,进人启动图标配置界面,这里配置的图标就是应用程序安装到手机上显示的图标,这些选项可以根据个人爱好自行选择,如图所示:
如果程序中的Logo还没设计好,后期也可以在项目中配置应用图标,这里可以暂不配置,直接单击Next按钮即可。然后会进人创建活动界面,在该界面中可以选择一个想创建的活动类型,
这里选择默认的Blank Activity,如图所示:
继续单击Next按钮,给创建好的Activity界面指定名称,同时给这个Activity布局起一个名字。此处使用默认即可,如图所示。
然后单击Finish按钮,项目就创建完成了,此时在Ecipse中会显示创建好的HelloWorld 程序,如图所示:
二、运行HelloWorld应用程序
程序创建成功后,暂不需要添加任何代码就可以直接运行程序。通过Eclipse来运行Android应用非常简单,只要如下两步即可。
2.1运行Android工程
有四种方法运行Android工程,分别如下:
1、右击HelloWorld项目,选择Run As,然后选择Android Application,如下图所示:
2、选中HelloWorld项目,单击Run菜单,选择Run As,然后选择Android Application,如下图所示:
3、选中HelloWorld项目,单击Run菜单,选择Run,弹出对话框,如图所示:
在弹出的对话框选择Android Application,再单击OK按钮。
4、选中HelloWorld项目,通过Ctrl+F11组合快捷键方式来打开上图所示选择对话框,选择Android Application,再单击OK按钮。
2.2安装Android工程
通过上面的操作,即可将所开发的Android应用程序安装到对应Android设备上。会出现以下几种情况:
1、如果有Android模拟器或者真机成功连接,则HelloWorld应用程序直接安装到模拟器或真机上(当有多个设备的时候会提示用户选择其一),并运行为打开如下HelloWorld页面:
2、如果没有打开Android模拟器,也没有成功连接真机,当AVD Manager列表有多个Android虚拟设备的时候,会弹出选择提示框要求用户选择启动其中一个(如果只有一个设备,则直接启动),当启动成功后直接将HelloWorld应用程序安装到对应设备上,并运行打开HelloWorld界面。
三、认识Android项目结构
至此,HelloWorid应用程序就开发完了。在这个程序中只是创建程序,并没有写任何代码, 这是因为ADT工具非常智能,可以自动生成简单的代码。
在后续的开发中,我们会自己添加一些代码或者文件,开发更加高级的程序,在此只是让大家了解Android程序的创建过程。欢迎加入Android零基础入门技术分享群,可先添加好友(jinwenyu2010)再拽入群,共同学习成长。
3.1Android项目结构
在创建Android程序时,eclipse就为其构建了基本结构,设计者可以在此结构上开发应用程序,因此,掌握Android程序的结构 是很有必要的。接下来展示HelloWorld程序的组成结构,如下图所示:
在图中,可以看到一个Android程序由多个文件以及文件夹组成,这些文件分别用于不同的功能,常用文件和文件夹如下:
1.src:
该目录是放置所有Java代码的地方,在这里的含义和 普通Java项目下的src目录是完全一样的,在src目录中 可以创建多个包,每个包中可以存放不同的文件或者 Activity。
2.gen:
该目录是自动生成的,主要有一个R.java文件,在项目中添加的任何资源文件都会在其中生成一个相应的资源Id,这个文件一定不要手动修改,当res资源文件修改时, R.java文件都会重新编译。
3.Android 8.0.0:
该目录中存放的是当前工程使用的Android SDK,从图中可以看出当前应用程序引用的是Android SDK 8.0.0,不同版本的SDK文件的名称也不同。
4.assets:
该目录用于存放一些随程序打包的文件,通常放置一些项目中用到的多媒体资源。当Android程序打包时它会原封不动地一起打包,安装时会直接解压到对应的assets 目录中。
5.bin:
该目录不需要过多的关心,它主要包含了一些在编译时自动产生的文件,其中会有一个当前项目编译好的安装包,展开bin目录会看到HelloWorld程序的安装包HelloWorld.apk,把这个文件复制到手机上就可以直接安装了。但是不能作为发布版本使用。
6.libs:
如果项目中用到了第三方的Jar包,就需要把这些Jar包都放在libs目录下,放 在这个目录下的Jar包都会被添加到构建路径中去。
7.res:
该目录中放置的是Android要用到的各种程序资源,如图片、布局、字符串等。(可以分为以下几层)
8.res/drawable:
存放png、jpg 等图标文件。其中,drawable目录分为不同的文件夹:drawable-hdpi、drawable-ldpi、drawable-mdpi、 drawable-xhdpi、drawable-xxhdpi,这些文件夹中存放的图片分别对应不同的手机屏幕大小,以便做屏幕适配。
9.res/layout:
存放xml 界面文件,xml 界面文件和HTML 文件一样,主要用于显示用户操作界面。
10.res/values:
存放应用使用到的各种类型数据。不同类型的数据存放在不同的文件中,其中strings.xml 定义字符串和数值,colors.xml 定义颜色和颜色字串数值,dimens.xml 定义尺寸数据,styles.xml 定义样式。
11.res/anim:
存放自定义动画的XML 文件。
12.res/raw:
该目录用于存放应用使用到的原始文件,如音效文件等。编译软件时,这些数据不会被编译,它们被直接加入到程序安装包里。
13.res/xml:
XML资源文件。
14.AndroidManifest.xml:
该文件是整个项目的配置文件,在程序中定义的四大组件都需要在这个文件里注册,另外还可以在这个文件中给应用程序添加权限声明,也可以重新 指定创建项目时程序最低兼容的版本和最高版本。清单文件配置的信息会配置到Android系统中,当程序运行时,系统会先找到清单文件中配置的信息,然后根据设置的信息打开相应的组件。
15.proguard-project.txt:
该文件是Android提供的混淆代码工具Proguard的配置文件,通过该文件可以混淆应用程序中的代码,防止应用程序被反编译出源码。
16.project.properties:
该文件记录了 Android项目运打时的环境,并通过一行代码指定了编译程序时所使用的SDK版本,这个版本可以手动更改,但必须是已下载的版本
3.2走进HelloWorld世界
上面只是大体了解了一下在Eclipse开发工具下Android应用程序的结构,接下来我们一起来简单了解一下HelloWorld应用程序时如何启动和运行的,当然对于完成零基础的你来说,不一定能看懂,不过没关系,我们只是现有一个大概的了解,后续会逐步细化来进行完整的学习。
1、AndroidManifest.xml
首先是我们的AndroidManifest.xml配置文件,可以大体预览一下:
整个HelloWorld应用程序的入口就在这里,里面有一些文字是不是很熟悉!还记得我们前面在创建和配置HelloWorld应用程序时填写的那些参数吗?
这里的意思是HelloWorld应用程序启动时,首先打开的页面就是我们所配置的MainActivity页面,也就是在src目录下面的MainActivity.java文件。
2、MainActivity.java
打开src目录下面的MainActivity.java文件,预览如下:
在这个java文件里面,所见到的Activity就是在第一章认识的Android四大组件之一。这个java文件主要配置了Activity获得页面主要加载的界面文件activity_main.xml。当然暂时我们可能不认识这些代码,不过别担心,很快就会认识的,主要是用的Java语言来编写的。
3、activity_main.xml
这个文件在res/layout目录下面,预览如下:
这个文件就是我们之前开发的HelloWorld应用程序运行时界面所显示出来的“HelloWorld”。
现在HelloWorld应用程序运行界面非常简单,在下一期我们就从这个文件开始,向里面添加更丰富的界面元素。
今天就先到这里,如果有问题欢迎留言一起探讨,共同成长!
往期总结分享:
此文章版权为微信公众号分享达人秀(ShareExpert)——鑫鱻所有,若转载请备注出处,特此声明!
Android零基础入门第8节:HelloWorld,我的第一趟旅程出发点的更多相关文章
- Android零基础入门第29节:善用TableLayout表格布局,事半功倍
原文:Android零基础入门第29节:善用TableLayout表格布局,事半功倍 前面学习了线性布局和相对布局,线性布局虽然方便,但如果遇到控件需要排列整齐的情况就很难达到要求,用相对布局又比较麻 ...
- Android零基础入门第30节:两分钟掌握FrameLayout帧布局
原文:Android零基础入门第30节:两分钟掌握FrameLayout帧布局 前面学习了线性布局.相对布局.表格布局,那么本期来学习第四种布局--FrameLayout帧布局. 一.认识FrameL ...
- Android零基础入门第28节:轻松掌握RelativeLayout相对布局
原文:Android零基础入门第28节:轻松掌握RelativeLayout相对布局 在前面三期中我们对LinearLayout进行了详细的解析,LinearLayout也是我们用的比较多的一个布局. ...
- Android零基础入门第26节:layout_gravity和gravity大不同
原文:Android零基础入门第26节:layout_gravity和gravity大不同 上一期我们一起学习了LinearLayout线性布局的方向.填充模型和权重,本期来一起学习LinearLay ...
- Android零基础入门第27节:正确使用padding和margin
原文:Android零基础入门第27节:正确使用padding和margin 前面两期我们学习了LinearLayout线性布局的方向.填充模型.权重和对齐,那么本期我们来学习LinearLayout ...
- Android零基础入门第24节:自定义View简单使用
原文:Android零基础入门第24节:自定义View简单使用 当我们开发中遇到Android原生的组件无法满足需求时,这时候就应该自定义View来满足这些特殊的组件需求. 一.概述 很多初入Andr ...
- Android零基础入门第25节:最简单最常用的LinearLayout线性布局
原文:Android零基础入门第25节:最简单最常用的LinearLayout线性布局 良好的布局设计对于UI界面至关重要,在前面也简单介绍过,目前Android中的布局主要有6种,创建的布局文件默认 ...
- Android零基础入门第23节:ImageButton和ZoomButton使用大全
原文:Android零基础入门第23节:ImageButton和ZoomButton使用大全 上一期我们学习了ImageView的使用,那么本期来学习ImageView的两个子控件ImageButto ...
- Android零基础入门第22节:ImageView的属性和方法大全
原文:Android零基础入门第22节:ImageView的属性和方法大全 通过前面几期的学习,TextView控件及其子控件基本学习完成,可以在Android屏幕上显示一些文字或者按钮,那么从本期开 ...
随机推荐
- iOS项目中所有icon的尺寸以及命名
一般icon以下几个: Icon.png – 57×57 iPhone (ios5/6) Icon@2x.png – 114×114 iPhone Retina (ios5/6) Icon-72.pn ...
- Java数组课后习题
package javafirst; import java.util.Arrays; class Show{ public void showArray(int[] arr){ for(int i ...
- cxf整合spring发布rest服务 httpclient访问服务
1.创建maven web项目并添加依赖 pom.xml <properties> <webVersion>3.0</webVersion> <cxf.ver ...
- Android之高仿手机QQ聊天
源代码下载 转载请注明出处,谢谢! 最终版已上传.优化下拉刷新.增加来消息声音提示.主界面改成ViewPager,实现左右滑动.新增群组.最近会话显示条数,开始上班了,不再修改了.谢谢! 国庆这几天, ...
- centos 7 构造iptables开放80port
centos7默认是使用firewalld托管防火墙. 安装后centos7后,已安装nginxserver,但同样没有在一个局域网访问,我哥哥告诉我,我应该是一个防火墙以打开.防火墙关闭就可以了. ...
- Mac下cocos2dx3.1用Cocos IDE写的Lua binding篇01
本人Lua新手,写着玩玩. 新建一个模版project. 一.改动main.lua require "Cocos2d" require "Cocos2dConstants ...
- Codeforces 15C Industrial Nim 简单的游戏
主题链接:点击打开链接 意甲冠军: 特定n 下列n行,每一行2的数量u v 表达v礧:u,u+1,u+2···u+v-1 问先手必胜还是后手必胜 思路: 首先依据Nim的博弈结论 把全部数都异或一下, ...
- 特征价格(Hedonic price)
特征价格法,又称 Hedonic 模型法和效用估价法,认为房地产由众多不同的特征组成,而房地产价格是由所有特征带给人们的效用决定的.由于各特征的数量及组合方式不同,使得房地产的价格产生差异.因此,如能 ...
- EF codefirst第一篇
一直以来喜欢dbfirst 因为简单,一直不明白为什么codefirst会是主流,根据对ddd的学习终于知道了codefirst的目的 本文是对博客园 小崔的笔记本 文章 EF实体框架之CodeFi ...
- C#中正则表达式使用介绍
摘要:本文给出了在C#下利用正则表达式实现字符串搜索功能的方法,通过对.NET框架下的正则表达式的研究及实例分析,总结了正则表达式的元字符.规则.选项等. 关键字:正则表达式.元字符.字符串.匹配 1 ...