基于Android手机开发―――介绍与入门

基于基于Android手机开发手机开发 介绍与入门介绍与入门 Contents Android发展的历史 Android为什么受欢迎 第一个程序 Helloworld Android开发工具和环境介绍 Resource的初步接触 Android的调试 Android发展的历史发展的历史 始于始于2007 11 5 基于 基于Linux 由 由google推出推出 09年第三季度市场份额年第三季度市场份额3 5 10年第三季度市场份额年第三季度市场份额25 5 11年第二季度市场份额年第二季度市场份额37 同期 同期 iPhone 仅占仅占27 国内保有量国内保有量861万台万台 11年年4月新增月新增3万应用万应用 Android 开发人员薪资调查开发人员薪资调查 Android为什么受欢迎 为什么受欢迎 一个词 好用 一个词 好用 能够兼容大量的硬件 如蓝牙 能够兼容大量的硬件 如蓝牙 GPS 重力感 重力感 应 应 SD卡 摄像头 触屏 卡 摄像头 触屏 开放的平台 大量手机终端厂商加入 如摩托开放的平台 大量手机终端厂商加入 如摩托 罗拉手机 罗拉手机 HTC 三星 联想等 三星 联想等 自由的开发平台 易学 易用 无过多开发的自由的开发平台 易学 易用 无过多开发的 限制 限制 Android为什么受欢迎 为什么受欢迎 Dalvik虚拟机针对移动设备进行了优化 虚拟机针对移动设备进行了优化 优化的图形能力支持优化的图形能力支持2D 3D图形图形 OpenGL ES 1 0 集成了基于开源集成了基于开源WebKit引掣的浏览器 引掣的浏览器 SQLite作为结构化数据存储 作为结构化数据存储 多媒体支持多种音频 视频格式 多媒体支持多种音频 视频格式 支持蓝牙支持蓝牙Bluetooth 3G和和WiFi 依托依托Java丰富的编程资源丰富的编程资源 丰富的开发环境 包括模拟机 调试工具 内丰富的开发环境 包括模拟机 调试工具 内 存运行检测 以及为存运行检测 以及为Eclipse IDE所写的插件 所写的插件 系统架构系统架构 Andoid运行环境运行环境 应用开发语言 应用开发语言 Java Dalvik虚拟机虚拟机 指令 Dalvik Excutable Java标准库标准库 把java代码编译为Dalvik可执行文件 dex at Android模拟器模拟器 我们调试程序的一大利器 模拟器 我们调试程序的一大利器 模拟器 用键盘控制模拟器用键盘控制模拟器 Emulated Device Key Keyboard Key Home HOME Menu left softkey F2 or Page up button Star right softkey Shift F2 or Page Down Back ESC Call dial button F3 Hangup end call button F4 Search F5 Power button F7 Audio volume up button KEYPAD PLUS Ctrl 5 Audio volume down button KEYPAD MINUS Ctrl F6 Camera button Ctrl KEYPAD 5 Ctrl F3 Switch to previous layout orientation for example portrait landscape KEYPAD 7 Ctrl F11 Switch to next layout orientation for example portrait landscape KEYPAD 9 Ctrl F12 Toggle cell networking on off F8 Toggle code profiling F9 only with trace startup option Toggle fullscreen mode Alt Enter Toggle trackball mode F6 Enter trackball mode temporarily while key is pressed Delete DPad left up right down KEYPAD 4 8 6 2 DPad center click KEYPAD 5 Onion alpha increase decrease KEYPAD MULTIPLY KEYPAD DIVIDE Android开发工具和环境介绍开发工具和环境介绍 两个工具包 两个工具包 Android SDK ADT Plugin for Eclipse 第一个程序第一个程序 Helloworld 打开打开eclipse 新建 新建android工程工程 打开打开Eclipse 新建项目 新建项目 点击点击 File New Project 在项目列表中展开 在项目列表中展开 Android目录 选择目录 选择Android Project 项目的设置项目的设置 应用程序的 名称 包名称 启动类名称 兼容的最低版本 运行你的程序运行你的程序 两种方法 两种方法 点击运行按钮 项目上右键点击run as Android application 程序的文件夹程序的文件夹 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界面文界面文 件 图片或数据 件 图片或数据 AndroidManifest xml 功能清单文件功能清单文件 这个文件列出了应用程序所提供的功能 在这个文件中 你可以指这个文件列出了应用程序所提供的功能 在这个文件中 你可以指 定应用程序使用到的服务定应用程序使用到的服务 如电话服务 互联网服务 短信服务 如电话服务 互联网服务 短信服务 GPS服务等等服务等等 另外当你新添加一个 另外当你新添加一个Activity的时候 也需的时候 也需 要在这个文件中进行相应配置 只有配置好后 才能调用此要在这个文件中进行相应配置 只有配置好后 才能调用此 Activity default properties 项目环境信息 一般是不需要修改此文件项目环境信息 一般是不需要修改此文件 Resource布局的一个实例布局的一个实例 Resource的初步接触的初步接触 几个常用的标记 xmlns android 每个资源文件必须包含 用于的 引用Android命名空间定义的通用属性 android id 用于定义资源文件的元素 方便有 代码对资源的引用 android layout width及android layout height 用于定义元素的高和宽 Android text 顾名思义 就是定义文本的 Gravity 对齐方式 图形界面编辑图形界面编辑Resource 用图形的方式编辑界面 有时候会让你更轻松 用图形的方式编辑界面 有时候会让你更轻松 TextView 文本视图文本视图 不可编辑不可编辑 android autoLink 将指定格式的文本显示为链接 取值取值 none web email phone map all android gravity 在x轴和y轴的显示方向 android height android width 高度和宽度 以像素为单位 android hint 当内容为空时显示的文本 输入框提示 android text 文本内容 android textColor 文本颜色 android textSize 字体大小 android typeface 文本字体 android ellipsize 显示内容超出长度时如何省略 取值取值 none start middle end marquee R java public final class R public static final class attr public static final class drawable public static final int icon 0 x7f020000 public static final class id public static final int layout 0 x7f050000 public static final class layout public static final int main 0 x7f030000 public static final class string public static final int app name 0 x7f040001 public static final int hello 0 x7f040000 初识初识Activity import android app Activity import android os Bundle public class HelloActivity extends Activity Called when the activity is first created Override public void onCreate Bundle savedInstanceState super onCreate savedInstanceState setContentView R layout main Manifest的第一个作用的第一个作用 每一个每一个Activity都需要在都需要在AndroidMainfest xml中中 文件当中进行配文件当中进行配 置置 用程序显示界面信息用程序显示界面信息 使用使用TextView 用 用setContentView的方式的方式 把程序内的字符显示出来 把程序内的字符显示出来 TextView tv new TextView this tv setText Hello Android setContentView tv 动静结合设置页面动静结合设置页面 为什么要用两种方式显示界面 为什么要用两种方式显示界面 静态xml为框架 代码填充动态的内容 动静结合的示例动静结合的示例 在在Resource里添加必要的控件 如里添加必要的控件 如TextView 同过同过findViewById 控件的控件的 id 可以得到所要显示可以得到所要显示 的控件 例如 的控件 例如 取得取得TextView的控件的控件 TextView textView TextView findViewById R id Test 浅谈浅谈Color And