第一章 讲师:张晓飞 微信 : zxf_zxy_rxf Android 快速入门. 1. 介绍 Android 2. 完成第一个 Android 应用 3. 三个开发调试工具 4. 应用练习 1.1 Android 相关基础知识 1.2 Android 系统架构 2.1 搭建开发环境 2.2 开发第一个应用.

Slides:



Advertisements
Similar presentations
湖南城市学院 Android 智能手机开发 信息科学与工程学院 主 讲:李 旎. 湖南城市学院 课程结构 Android 平台概述 – 平台介绍 开发环境: – 构建 Android 开发环境 Android 的基本操作 -- 五种基本操作 应该程序: – 应用程序结构 典型应用: – 用户界面 –
Advertisements

开发入门 一个 android 初学者的心得与体会. 前言 两周前张老师通知我说,让我根据教练助手的学习与开发的过程讲下 android 开发的心得与体会,我觉得自己在这么多 Android 前辈大佬面前讲 android 简 直是班门弄斧。由于是刚入门的初学者,水平有限,很多方面还很不足,对 错误或不周到之处欢迎批评指正。顺便还得提下,我这个标题有抄袭积聚童.
Android ADT + Android SDK Eclipse Eclipse 編輯器 JAVA JAVA 開發工具.
Android App簡介及 App Inventor 2體驗 靜宜大學資管系 楊子青
資訊軟體人才培育先導計畫102年度課程發展專案計畫 資訊軟體人才培育雲端計算與服務課程發展專案計畫- 雲端運算與行動計算課程
第二章:行動裝置與擴增實境.
CH02 電腦軟體 介紹電腦軟體之概念 認識系統軟體、程式語言與軟體開發 認識作業系統的主要功能 認識作業系統的演進歷史 認識常用之應用軟體
Android开发入门 -----第一个Android程序 主讲:李晓蕾
用 Andriod手機 12年國教~有效教學策略設計 國立北門高中 林明璋 玩
課程地圖 (104年入學-日間部) 校通識核心 專業課程 必修與選修 與管理模組 網路技術 App設計與應用模組 學院通識核心 學院專業核心
©wequick GalenLin All rights reserved
第一章 Android简介与环境搭建 QQ号: QQ群: (Android编程入门) 网络资源:
浅谈我与Android相处的点滴 一、个人自动化经验分享 二、Android基本架构了解 三、MonkeyTest指令学习
C#,数据库(SQLServer),ASP.NET(C#)(网站开发),Mono For Android(C#)
Android环境搭建 倚动软件工厂实验室 网络课程地址:
Part 2 開發Android應用程式的流程
OUTLINE Android app Devolpment Flow App反組譯解說 實例 簽名詳解 DalvikByteCode
第八讲 信号分析案例:安卓 2017年3月20日星期一.
厦门天锐科技有限公司 纪联武.
第二章 B4A程式語言的開發環境 課程名稱:程式設計 授課老師:李春雄 博士
第1章 导论 倚动实验室.
Android App 系統開發教學 Luna 陳雯琳 2014/12/18
使用Android Studio 開發Android App 靜宜大學資管系 楊子青
建立Android新專案 建國科技大學 資管系 饒瑞佶 2010/10.
厦门大学数据库实验室 报告人:谢荣东 导师:林子雨 2014年8月30日
APP課程:Android程式設計開發環境與工具介紹
《IOS应用开发教程》 QQ学习群:
基隆社區大學 智慧型手機、平板及電腦之生活應用
第2章 建立Android應用程式 2-1 Java語言、XML文件與Android 2-2 建立第一個Android應用程式
CH3 Eclipse.
第17章 使用B4J建立跨平台應用程式 17-1 認識B4J整合開發環境 17-2 下載與安裝B4J開發環境
ANDROID與OSGI平台整合.
ICS著重細節與操作的一致性體驗 將顯著推升Android行動裝置市佔
Android程式開發準備 Android智慧型手機程式設計 建國科技大學 資管系 饒瑞佶 2012/4 V1 2012/8 V2
Introduction on Smartphone Platform
Android開發環境建置與設定 Android智慧型手機程式設計 程式設計與應用班 建國科技大學 資管系 饒瑞佶 2012/4 V1
安裝與設置 Android 發展環境 靜宜大學資工系 蔡奇偉副教授 ©.
Android SDK工具 Android智慧型手機程式設計 建國科技大學 資管系 饒瑞佶 2012/4 V1 2012/8 V2
第11章 Android GPS位置服务与地图编程
第8章 移动界面设计 山东大学计算机学院.
第一个Android程序 本讲大纲: 1、创建Android应用程序 2、Android项目结构说明 3、运行Android应用程序
Android介面設計 Android智慧型手機程式設計 建國科技大學 資管系 饒瑞佶 2012/4 V1 2012/8 V2
App Inventor 2體驗 靜宜大學資管系 楊子青
第4章 Android生命周期.
Android 课程讲义 智能手机开发
Android開發環境建置與設定 建國科技大學 資管系 饒瑞佶 2010/10.
教務行政資訊系統 簡介 資訊科技中心 資訊系統組 徐振琦
第2讲 移动应用开发基础知识(二) 宋婕
Android平台開發環境安裝.
建立Android新專案 Android智慧型手機程式設計 程式設計與應用班 建國科技大學 資管系 饒瑞佶 2012/4 V1
Android手动测试实践 ——绮珠.
Android 视频教程简介.
App Inventor 2體驗 靜宜大學資管系 楊子青
建國科技大學 資管系 饒瑞佶 2012/4 V1 2012/8 V2 2013/2 V3 2014/9 V4
Android檔案處理 建國科技大學 資管系 饒瑞佶 2010/10.
Android SDK工具 建國科技大學 資管系 饒瑞佶 2011/1.
使用Android模拟器 本讲大纲: 1、模拟器概述 2、Android虚拟设备和模拟器 3、Android模拟器启动与停止 4、控制模拟器
Android智慧型手機程式設計實務應用班
人機介面 Android 平台應用程式開發 簡介
Android 开发入门.
第1章 Java语言概述 学习目标 本章要点 上机练习 习 题.
Android視窗介面 建國科技大學 資管系 饒瑞佶 2010/10.
課程網站
Location Based Services - LBS
创意 让你大开眼界 / ##活动策划案.
App Inventor 2體驗 靜宜大學資管系 楊子青
Android視窗介面 建國科技大學 資管系 饒瑞佶 2010/10.
實驗十六:匯出APK安裝檔與軟體上架.
多媒體處理實務.
如何著手入門MyLion 如何下載和註冊 讓我們來談談如何確保所有獅友知道如何下載和註冊app。.
Presentation transcript:

第一章 讲师:张晓飞 微信 : zxf_zxy_rxf Android 快速入门

1. 介绍 Android 2. 完成第一个 Android 应用 3. 三个开发调试工具 4. 应用练习 1.1 Android 相关基础知识 1.2 Android 系统架构 2.1 搭建开发环境 2.2 开发第一个应用 HelloAndroid 3.1 ADB 3.2 DDMS 3.3 Log 4.1 简单模拟下载

Android 是一种基于 Linux 的 开源 的操作系统 主要使用于 智能设备 ,如智能手机、平板电脑和智能电视等 由 Google 公司领头开发并推广, 2008 年推出第一个版本。 Google 此系统最初由 ” 安卓之父 " Andy Rubin ( 安迪 - 鲁宾 ) 开发 (2003 年 ) Andy Rubin 1.1 Android 相关基础知识 Android 是什么 ? Android 百度百科 Android 百度百科

Android 能做什么 ? 1.1 Android 相关基础知识

智能手机市场份额分布情况 ? 1.1 Android 相关基础知识

1.5 Cupcake( 纸杯蛋糕 ) --API Donut( 甜甜圈 ) --API Éclair( 闪电泡芙 ) --API Froyo( 冻酸奶 ) --API Gingerbread( 姜饼 ) –API Honeycomb( 蜂巢 ) –API Icecream SandWich( 三明治 ) –API Jelly Bean ( 果冻豆 ) --API Jelly Bean ( 果冻豆 ) --API Jelly Bean ( 果冻豆 ) --API KitKat : ( 奇巧巧克力棒 ) --API Lollipop ( 棒棒糖 )--API Lollipop ( 棒棒糖 ) --API Android 相关基础知识 Android 的各个版本 ? 友盟统计

Android 的开发工作好找吗 ? 1.1 Android 相关基础知识

Android 的开发工作薪水高吗 ? 1.1 Android 相关基础知识

Android 与 IOS 操作系统区别 ? 1.1 Android 相关基础知识 >> No 比较 IOS ( Iphone 手机) Android(Android 手机 ) 1 开发平台 Apple Mac OS 不局限于操作系统 2 开发工具 XcodeEclipse/Android Studio 3 开发语言 Objective – C Java 4 兼容性 封闭操作系统,由 Apple 制定,兼容性高 开源操作系统, Google 规定出 硬件标准,由不同的厂商进行 手机的研发,由于厂商众多, 所以兼容性低 5 UI 交互界面主要依靠触屏完成主要依靠触屏和按键 6 显示风格统一的视觉规范和分辨率 视觉规范由厂商决定,各具特 色, 但也有部分质量不高

1.2 Android 系统架构 整体结构图

1. 首要差别 Dalvik: 基于寄存器,编译和运行都会更快些 JVM: 基于栈, 编译和运行都会慢些 2. 字节码的区别 Dalvik: 执行.dex 格式的字节码,是对.class 文件进行压缩后产生的, 文件变小 JVM: 执行.class 格式的字节码 3. 运行环境的区别 Dalvik : 一个应用启动都运行一个单独的虚拟机运行在一个单独的进程中 JVM: 只能运行一个实例, 也就是所有应用都运行在同一个 JVM 中 区别 DVM 与 JVM 1.2 Android 系统架构 >>

2.1 搭建开发环境 下载地址 : 重要资源说明 : android-sdk-windows android 软件开发包, 作用相当于 JDK =jre+ 工具 eclipse Anroid 应用开发工具 此 Eclipse 已经内置了支持 Android 开发的插件 (ADT) 下载必要的资源

2.1 搭建开发环境 下载各版本 SDK 我们提供的 SDK 包中已经包含了可能用到的几个重要版本 如果想下载其它版本, 可以启动

2.1 搭建开发环境 配置 path 环境变量 path= …\sdk\platform-tools; …\sdk\tools

创建并启动模拟器 2.1 搭建开发环境 AVD Name : 虚拟设备名称 Device : 设备型号 Target : 系统 SDK 的版本 CPU/ABI : 处理器 Keyboard : 是否用硬键盘 ( 不选用软键盘 ) Skin : 不同型号皮肤外形不相同 Memory Otions : 内存选项设置 RAM : 设备的运行内存 VM Heap : 虚拟机堆空间内存 Internal Storage : 设备内部存储空间大小 SD Card : SD 卡内存的大小

创建并启动模拟器 2.1 搭建开发环境

解决模拟器创建或启动的问题 描述 : 在部分电脑上会出现模拟器不能创建或不能启动的问题 原因 : 默认的路径包含中文目录 解决办法 : – 删除.android 文件夹 (C:\Users\Administrator\) – 配置环境变量 : ANDROID_SDK_HOME=D:\android-sdk-windows

解决模拟器运行慢的问题 2.1 搭建开发环境 >> 模拟器如果是用的 Intel 的 CPU, 可以安装加速器来提高运行速度 但有些电脑安装报错, 需要进入 BIOS 设置开启 CPU 虚拟化后即可安装 问题 : – 部分电脑不能设置 – 部分电脑安装后会容易蓝屏 解决 : – 使用 ARM 的 CPU, 不用加速器

2.2 开发第一个应用 HelloAndroid 创建并运行 HelloAndroid

配置 Eclipse 的字体 2.2 开发第一个应用 HelloAndroid

配置 Eclipse 的编码字符集 2.2 开发第一个应用 HelloAndroid >>

编写的 Java 源码代码包 自动生成的 Java 源码代码包 图片资源 布局资源 一些常量资源 ( 尺寸, 字符串, 样式 ) 一些常量资源 ( 尺寸, 字符串, 样式 ) 应用的功能清单配置文件 项目的组成结构 资源文件夹 资产目录 包含编译生成文件 的目录 ( 如 APK) 依赖的 jar 包目录 2.2 开发第一个应用 HelloAndroid

APK 安装文件的组成结构 res: 项目中的资源文件夹 功能清单文件 包含所有 class 文件的供 DVM 执行的文件 2.2 开发第一个应用 HelloAndroid APK 本质上就是一个压缩包

应用编译打包过程 src/.. MainActivity.java gen/.. R.java res/.. main.xml strings.xml AndroidMenifest.xml 将资源和清单文件 进行编译处理 编译生成多个.class 文件 只 JVM 能执行 再次编译压缩生成一个 classes.dex 文件 Dalvik 能执行 打包成一个 apk 文件 xxx.apk 安装运行 2.2 开发第一个应用 HelloAndroid

/ 代表系统的根目录 /data/app/ 存放着第三方的 apk 文件 /system/app/ 其中是系统中的应用安装文件 /data/data/packagename/ 与应用对应的文件, 在应用安装时自动生成, 应用卸载时自动删除 /storage/sdcard / sd 卡的文件夹 Android 系统文件目录结构 2.2 开发第一个应用 HelloAndroid

/docs 文档目录 index.html /platforms 包含这个版本运行所需要的 jar 包 /platform-tools 包含一些开发工具, 如 adb.exe, sqlite3.exe /samples 包含一些 google 提供的样例项目工程, 如 : APIDemos /source 包含系统的部分源码 /tools 包含一些开发工具, 如 : draw9patch.bat, hierarchyviewer.bat SDK 的文件目录结构 2.2 开发第一个应用 HelloAndroid

3.1 ADB adb 是什么 Android 调试桥 (Android Debug Bridge) 是多种用途的调试工具 帮助你管理设备或模拟器的状态 adb 常用命令 adb [help] -show this help message devices -list all connected devices adb shell -run remote shell interactively adb push -copy file/dir to device adb pull [ ] -copy file/dir from device adb install –r apkPath -push this package file to the device install adb uninstall packageName -remove this app package from the device adb start-server -ensure that there is a server running adb kill-server - kill the server if it is running ctrl+c - 退出 shell close cls - 清空屏幕 clears 理解

3.2 DDMS DDMS 是什么 ? 全称是 Dalvik Debug Monitor Service Android 开发环境中的 Dalvik 虚拟机调试监控服务 Eclipse 中提供的 Android 应用开发的调试工具 DDMS 的四个重要的视窗 Logcat : 查看日志输出: File Explorer :查看系统内部文件 Devices :显示关联的 Android 设备 Emulator Control :操作控制关联的 Android 设备 注意 : 在 Eclipse 中打开这四个视窗便于调试 理解

3.2 DDMS Logcat 视窗

3.2 DDMS File Explorer 视窗

3.2 DDMS Devices 视窗

3.2 DDMS Emulator Control 视窗

3.3 Log Log 类方法级别作用颜色 v(tag, message)Verbose 显示全部信息 黑色 d(tag, message)Debug 显示调试信息 蓝色 i(tag, message)Info 显示一般信息 绿色 w(tag, message)Warming 显示警告信息 橙色 e(tag, message)Error 显示错误信息 红色 为了便于开发调试, Android 提供了用于日志打印输出的工具类 : Log 日志工具类 : Log

3.3 Log Log 提供了多个级别的打印输出方法, 在 LogCat 窗口中显示的颜色不同 Log 打印时必须指定 TAG, 在 LogCat 中可以通过添加 TAG 过滤查看 LogCat 中可以通过两种方式过滤 : – TAG 名 : 显示所有此标签名的输出 – 应用包名 : 显示指定包名应用的所有输出 比较 Log 与 System.out

4 应用练习 简单模拟下载 功能描述 : 1). 点击下载按钮显示 " 开始下载 " 的小提示 2). 点击下载按钮后, 按钮的文本改为 : 正在下载中 主要技术点 : 1). 应用的创建与运行 2). 界面布局的定义与加载 3). 点击事件监听 4). Toast 文本小提示

相关 API Activity: 四大应用组件之一 onCreate(): 自动调用的方法, 在其中加载布局显示 setContentView(int layoutId): 加载布局 View findViewById(int id): 根据 id 找到对应的视图对象 R: 应用的资源类 R.drawable: 包含所有图片资源标识的内部类 R.layout: 包含所有布局资源标识的内部类 R.id: 包含所有视图 id 标识的内部类 R.string: 包含所有字符串标识的内部类 View/Button: 视图 / 按钮 setonClickListener(listener): 给视图设置点击监听 View.OnClickListener : 内部接口 void onClick(View v) : 点击事件的回调方法 Toast: 用来显示短时间提示文本的类 static Toast makeText(...) : 创建一个 toast 对象 show(): 显示小提示 4 应用练习

补充 手机的尺寸 : 屏幕对角线的长度, 单位为英寸 (2.54cm) 手机的分辨率 : 屏幕能显示的像素的数量, 一般用在长方向上数量 * 宽方 向上数量来表达 手机的像素密度 : pixels per inch ,也称 PPi ,即每英寸屏幕能显示的像素 数,像素密度越大,显示画面细节就越丰富。 计算 : 像素密度 ={1+√[( 长度像素数 -1)^2+( 宽度像素数 -1)^2]}/ 屏幕尺寸 DPI: Dots Per Inch (每英寸所打印的点数或线数)的缩写,用来表示打印 机打印分辨率, 但有时也会用 dpi 来代指 ppi 手机的密度 : Density, 以 160ppi 为基准, 即像素密度为 160 时 Density 为 1 ldpi 120ppi 0.75 mdpi 160dpi 1.0 hdpi 240dpi 1.5 xhdpi 320dpi 2.0 手机尺寸相关的概念

常见手机的尺寸参数 品牌尺寸像素像素密度 三星 GALAXY S x1080 像素 432ppi 三星 GALAXY Note x1440 像素 515ppi 小米 M x1080 像素 441ppi 魅族 MX4 pro x1536 像素 543ppi Nexus x1440 像素 493ppi 苹果 iphone x750 像素 326ppi 苹果 iphone6 plus x1080 像素 401ppi 补充

px: pixels( 像素 ) 1px 就的长度就对应屏幕一个像素点的大小 dp/dip: device-independent pixels( 设备无关像素 ) 1dp = (dpi / 160) px 1dp = density px 160-  1px 120   2px 1px = 1/density dp sp : scaled pixels( 可缩放像素 ) 与 dp 类似,但是可以根据用户的字体大小首选项进行缩放 注意 : Android 在运行时会自动将 dp/dip/sp 为单位的尺寸转换为像素单位的值 尺寸单位 补充

尺寸单位的比较 补充 dp 与 px 的比较 ? 以 px 为单位的长度, 在差手机上会变大, 在好手机上变小 以 dp 为单位则不会变化 dp 与 sp 的比较 ? 用户可以在系统设置中设置文本的大小 如果字体大小使用 sp 为单位, 设置有效果 如果字体大小使用 dp 为单位, 设置没有效果 在布局文件视图的宽高尽量用 match_parent/wrap_content 如果必须指定特定值, 使用 dp/dip 做单位 文本大小使用 sp 做单位

关于颜色 在 Android 中字体颜色或背景颜色使用 RGB 来表达 R : red 红色 G : green 绿色 B : blue 蓝色 每个色相用一个 2 位的十六进制的数来表达 颜色值的前面为带一个字符 : # 例子 红色 : #ff0000 绿色 : #00ff00 白色 : #ffffff 黑色 : # 具体需要什么颜色可以查颜色表 补充

课堂内容 讲解的知识 应用练习 Android SDK docs API Guides : API 使用向导 Reference : API 文档 Android SDK APIDemos SDK 提供的常用 API 使用的测试应用, 平时多把玩这个应用 Baidu+ 技术 Blog 学习或工作中有疑惑或解决不了的问题, 多百度 平时学习可以看一些 ” 前辈们 ” 写的 blog 开源框架与项目 在网上有很多相当不错的开源框架和项目, 可以拿来使用或学习 站在巨人的肩膀上学习和工作 开源框架集中营 : 如何学习 Android 应用开发 补充