android基本知识-精讲第1节快速入门_第1页
android基本知识-精讲第1节快速入门_第2页
android基本知识-精讲第1节快速入门_第3页
android基本知识-精讲第1节快速入门_第4页
android基本知识-精讲第1节快速入门_第5页
免费预览已结束,剩余43页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Android开发Android快速入门Android基本概念搭建Android开发运行环境第一个Android应用程序APK介绍给模拟器安装APK程序简单android组件介绍用户界面设计,布局介绍目标学员:Android初级开发者学习目标:

3G,全称为3rdGeneration,中文含义就是指第三代数字通信。所谓3G,是指将无线通信与国际互联网等多媒体通信结合的新一代移动通信系统。3G只是一种通信技术标准,符合这个标准的技术有WCDMA、CDMA2000、TD-SCDMA三种制式。中国联通使用的是WCDMA(世界上大部分3G网络都采用的是该标准)

;中国电信使用的是CDMA2000(日、韩和北美使用);中国移动使用的是具有自主知识产权的TD-SCDMA(只有中国才使用)。相对第一代模拟制式手机(1G)和第二代GSM、CDMA等数字手机(2G),3G网络能处理图像、音乐、视频等多种媒体形式,提供包括网页浏览、电话会议、电子商务等多种信息服务。第三代与前两代的主要区别是在传输声音和数据的速度上有很大的提升。由于3G商用需要相当浩大的工程,要从目前的2G迈向3G不可能一下就衔接得上,因此前几年2.5G的手机就出现了。符合2.5G标准的技术有CDMA20001X和GPRS,中国联通使用的是CDMA20001X标准,中国移动使用的是GPRS标准。目前,我们可以把2.5G移动通信技术看作是2G迈向3G的衔接性技术,在2.5G网络下出现了如WAP、蓝牙(Bluetoot)等技术。什么是3GAndroid程序员需求量IDC:2011年智能手机出货量将超过4.5亿部2011年全球智能手机市场规模将增长49.2%,出货量将超过4.5亿部,而2010年为3.034亿部。IDC:2013年移动开发人才需求20万,未来人才需求缺口将达百万随着Android平台的扩张,引发了Android人才荒,2013年移动开发人才需求20万,未来人才需求缺口将达百万。3G人才全球紧缺,实用人才培养已迫在眉睫。IDC:2015年Android市场份额将达到45%2015年Android市场份额将达到45.4%,成为全球最大智能手机操作系统。51job:有1年开发经验的Android工程师月薪在6000元左右课外补充:互联网数据中心(InternetDataCenter)简称IDC

Android基本概念Android一词本意指“机器人”,它是Google推出的开源手机操作系统,Android基于Linux平台,由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开源和完整的移动软件。1.5是Cupcake(纸杯蛋糕)

1.6是Donut(甜甜圈)

2.1是Eclair(松饼)

2.2是Froyo(冻酸奶)

2.3是Gingerbread(姜饼)

3.x是b(蜂巢)

4.0是IceCreamSandwich(冰激凌)4.1是JellyBean(果冻豆)5.0的代号将是KeyLimePie(酸橙派)Android系统具有5个特点开放性:Google与开放手机联盟合作开发了android,google通过与运营商、设备制造商、开发商和其他有关方面结成深层的合作伙伴关系,系统通过建立标准化、开放式的移动电话软件平台,在移动产业内形成一个开放的生态系统应用程序无界限:android上的应用程序可以通过标准的API访问核心移动设备功能,通过互联网,应用程序可以声明他们的功能可提供其他应用程序使用应用程序是在平等条件下创建:移动设备上的应用程序可以被替换或者扩展,即使是拨号或者主屏幕这样的核心组件应用程序可以轻松的嵌入网络:应用程序可以轻松的嵌入HTML、javaScript和样式表、还可以通过WebView显示网络内容应用程序可以并行运行:android是一种完整的多任务环境,应用程序可以在其中并行运行。在后台运行时,应用程序可以生成通知引起注意说说你们为什么青睐android?Android系统架构介绍Android应用程序框架对于我们开发者哪个层什么接触最多?应用程序框架层

Android系统提供给应用开发者的本身就是一个框架,所有的应用开发都必须遵守这个框架的原则,我们在开发应用时就是在这个框架上进行扩展,Android开发准备工作配置android开发环境之前,首先需要了解android对操作系统的要求。它可以使用windowsXP及其以上版本、MacOS、Linux等操作系统。Android开发所需软件的下载地址

工具介绍Android以java作为开发语言,JDK是进行java开发时必须的开发包,Eclipse是一款非常优秀的开源IDE,在大量插件的配合下,完全可以满足从企业级java应用到手机端java游戏的开发,google官方也提供了基于eclipse的android开发插件ADTAndroid开发环境搭建1.安装JDK和配置Java开发环境(本例中使用的是jdk1.7.0_17)2.下载Eclipse(本例中使用的是4.2.2)3.安装和配置SDK(本例中使用的是21.1)4.安装和配置ADT(本例中使用的是21.1)android模拟器介绍从android1.5开始引入了AVD(AndroidVirtualDevice)这个概念,AVD是一个经过配置的模拟器,在创建AVD的时候可以对其进行配置第一个Android应用Android应用程序架构src/java原代码存放目录gen/自动生成目录gen目录中存放所有由Android开发工具自动生成的文件。目录中最重要的就是R.java文件。这个文件由Android开发工具自动产生的。Android开发工具会自动根据你放入res目录的xml界面文件、图标与常量,同步更新修改R.java文件。正因为R.java文件是由开发工具自动生成的,所以我们应避免手工修改R.java。R.java在应用中起到了字典的作用,它包含了界面、图标、常量等各种资源的id,通过R.java,应用可以很方便地找到对应资源。另外编绎器也会检查R.java列表中的资源是否被使用到,没有被使用到的资源不会编绎进软件中,这样可以减少应用在手机占用的空间。res/资源(Resource)目录在这个目录中我们可以存放应用使用到的各种资源,如xml界面文件,图片或数据。具体请看ppt下方备注栏。assets资源目录Android除了提供/res目录存放资源文件外,在/assets目录也可以存放资源文件,而且/assets目录下的资源文件不会在R.java自动生成ID,所以读取/assets目录下的文件必须指定文件的路径,如:file:///android_asset/xxx.3gpAndroidManifest.xml

功能清单文件这个文件列出了应用程序所提供的功能,在这个文件中,你可以指定应用程序使用到的服务(如电话服务、互联网服务、短信服务、GPS服务等等)。另外当你新添加一个Activity的时候,也需要在这个文件中进行相应配置,只有配置好后,才能调用此Aperties

项目环境信息,一般是不需要修改此文件res资源文件结构res资源文件下包含以下几个文件:drawalble存放工程图片的信息,默认是png格式的文件。layout存放工程的布局文件,以.xml结束。values文件夹下面存放一个很重要的string.xml,此文件夹存放的是自定义的字符串和数值。此外,我们还可以自定义arrays.xml(用来定义数组),color.xml(用来定义颜色和颜色的字符串数值),dimens.xml(用来定义尺寸数值),styles.xml(用来定义样式)这些都是用来存储值,那在android工程中如何声明和调用呢?在样式layout文件中,上述文件可以通过@+文件名/对应的对象名来获取所对应的值,但是在java程序中如何获取这几个xml文件里面的值呢?但是在java程序中,上述的xml文件里面的值要通过getResource()来获取,具体表现为:文件取值方式string.xmlgetResource().getString(resourceId)或者getResource().getText(resourceId)arryas.xmlgetResource().getStringArray(resourceId)colors.xmlgetResource().getDarwable(resourceId)或者getResource().getColor(resourceId)dimens.xmlgetResource().getDimension(resourceId)styles.xml不需要取值Android的AndroidMainfest.xml介绍AndroidManifest.xml是每个android程序中必须的文件,他位于整个项目的根目录,描述了package中暴露的组件(activities,services等等),他们各自的实现类,各种能够被处理的数据和启动位置,除了能够声明程序中的Activities,ContentProviders,Services,和IntentReceivers,还能制定permission和instrumentation(安全控制和测试)下面我们来介绍一下清单文件的一些重要属性。创建简单的Android应用,运行后显示默认的字符串修改string.xml文件内容,修改显示的字符串简单调试Logcat通过android.util.Log类的静态方法来查找错误和打印系统日志消息。它是一个进行日志输出的API,我们在android程序中可以随时为某一对象插入一个Log,然后在DDMS中观察Logcat的输出是否正常。Android.util.Log常用的方法有以下5个:Log.vLog.dLog.iLog.wLog.e

分别对应VERBOSE\DEBUG\INFO\WARN\ERROR,当利用DDMS进行调试时,他们的区别并不大,只是显示颜色不同,可以控制要显示的某一类错误。Android应用程序最终是以apk文件形式发布的,apk是一种与zip文件格式兼容的文件。AndroidSDK提供了aapt工具,可以把类文件和资源文件打包成apk文件aapt转换过程aaptlistchapter01.apk输出如下:res/drawable/icon.pngres/layout/main.xmlAndroidManifest.xmlresources.arscclasses.dexMETA-INF/MANIFEST.MFMETA-INF/CERT.SFMETA-INF/CERT.RSAAPK文件1.配置环境变量,F:\android-sdk-windows\platform-tools加到环境变量path2.开始-运行-cmd3.进入androidSDK目录,F:\android-sdk-windows\platform-tools4.使用adb命令进行安装,adbinstallc:/a.apk给模拟器安装APK1Activity是什么一个Android应用中可以只有一个Activity,也可以有多个Activity。Activity介绍Activity是最基本的模块,我们称之为“活动”,在应用程序中,一个Activity通常就是一个单独的屏幕。每一个活动都被实现为一个独立的类,并且从活动基类中继承而来,活动类将会显示由视图控件组成的用户接口,并对事件作出响应。Activity是应用程序的图形用户界面每一个Android应用都至少包含一个ActivityActivity是Android应用的图形用户界面Activity是一个Java类从开发者角度看,Activity是一个Java类Activity类必须遵守一定的规范,例如,必须直接或间接继承自android.app.Activity类等;必须覆盖父类的某些方法等。publicclassHelloActivityextendsActivity{/**Calledwhentheactivityisfirstcreated.*/@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);}}android.app.Activity类Android应用中的任何Activity类都继承了父类android.app.Activity类子类经常覆盖的方法onCreateActivity类中常用方法this.setContentViewthis.findViewById显示文本的组件---TextViewTextView往往用来向用户显示文本,如邮件正文或应用程序标签等。API中对应android.widget.TextView类<TextViewandroid:background="#FF00FF“android:layout_gravity="center"android:layout_height="wrap_content"android:layout_margin="60dp"android:layout_width="fill_parent“android:padding="40dp"android:text="@string/hello"android:textColor="#0000FF"/>TextView的重要属性文本的颜色和背景android:textColor=“#0000FF”android:background=“#0000FF”TextView的对齐方式android:layout_gravity=“center”字体大小android:textSize=“20px”单行显示android:singleLine=“true”普通按钮---ButtonButton类继承了TextView类在布局文件中,使用属性指定Button的属性,如android:text指定Button显示的文本<Buttonandroid:id="@+id/simplebuttonview_button1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="按钮1"/>UIStyle概述UIStyle指交互设计风格,是当用户与操作系统、界面进行交互的时候所得到的直观体验UIStyle的目的UIStyle使用方式StyleGuide影响范围Android用户体验---交互方式Android用户体验---信息架构与组织Android用户体验---任务流程Android用户体验---整体布局及硬键Android用户体验---文本风格及原则布局方式Android系统中提供了几种常用的布局方式,每种布局方式都对应API中一个类LinearLayout:线性布局FrameLayout:层叠布局RelativeLayout:相对布局TableLayout:表格布局AbsoluteLayout:坐标布局线性布局LinearLayout为线性布局,将组件按照属性设置的水平或垂直方向按顺序排列<LinearLayoutandroid:gravity="center_horizontal"android:layout_height="fill_parent"android:layout_width=“fill_parent”android:orientation=“vertical”xmlns:android=“”></LinearLayout>层布局FrameLayout称为层布局,将组件显示在屏幕的左上角,后面的组件覆盖前面的组件<FrameLayoutandroid:gravity="center_horizontal"android:layout_height="fill_parent"android:layout_width="fill_parent"android:orientation="vertical"xmlns:android=""><Buttonandroid:id="@+id/button1"android:layout_height="wrap_content"android:layout_width="wrap_content"android:text="按钮1"/><Buttonandroid:id="@+id/button2"android:layout_height="wrap_content"android:layout_width=“wrap_content”android:text=“按钮2”/>/FrameLayout>相对布局RelativeLayout是相对布局,相对布局指的是某个组件的位置是相对于它所以来的组件的位置<RelativeLayoutandroid:gravity="center_horizontal"android:layout_height="fill_parent"android:layout_width="fill_parent"xmlns:android=""><Buttonandroid:layout_height="wrap_content"android:layout_width="wrap_content"android:text="按钮1"android:id="@+id/button1"/><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="按钮2"android:layout_below="@+id/button1"/></RelativeLayout>表格布局TableLayout是表格布局,使用TableRow指定一行,每个组件表示一列<TableLayoutandroid:layout_height="fill_parent"android:layout_width="fill_parent"xmlns:android=""><TableRow><Buttonandroid:id="@+id/button1"android:layout_height="wrap_content"android:layout_width="wrap_content"android:text="按钮1"/><Buttonandroid:id="@+id/button2"android:layout_height="wrap_content"android:layout_width="wrap_content"android:text="按钮2"/></TableRow></TableLayout>坐标布局AbsoluteLayout是绝对布局管理器,指的是指定组件的左上角绝对坐标来指定组件的布局<AbsoluteLayoutandroid:gravity="center_horizontal"android:layout_height="fill_parent"android:layout_width="fill_parent"android:orientation="vertical"xmlns:android=""><Buttonandroid:id="@+id/button1"android:layout_height="wrap_content"android:layout_width="wrap_content"android:layout_x="0px"android:layout_y=“0px”android:text=“按钮1”/></AbsoluteLayout>公共控件属性1.android:id="@+id/XXX":通过ID来关联控件2.android:layout_width/android:layout_height:控件的宽度/高度:可选"wrap_content"/"fill_parent"/"match_parent"/具体像素3.android:layout_marginLeft/Right/Top/Bottom=“5dip”各边距离其他控件的距离4.android:gravity:控件中内容的显示位置5.android:textSize:控件中文本大小6.android:textColor="#ff123456":控件中文本颜色,以#开头,前两位为透明值,后六位为颜色值7.android:textStyle="normal"/"bold"/"italic":控件文本风格,也可用“|”将属性组合起来,其中bold(加粗)italic(斜体)8.android:text:控件文本内容9.android:sigleLine:如果设置为真的话,则将控件的内容在同一行当中进行显示10.a

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论