热搜关键词: 电路基础ADC数字信号处理封装库PLC

pdf

华清远见Android应用程序开发与典型案例

  • 1星
  • 2014-10-18
  • 27.24MB
  • 需要2积分
  • 5次下载
标签: android

android

《Android应用程序开发与典型案例》完整版PDF,华清远见出品。

《Android 应用程序开发与典型案例》
½者:华清远见
1
Android
基本概念
本章目标
本章介绍 Android 基本概念方面的内容,
包括 Android 平台特性、
Android 系统
架构、Android 开发框架以及 OMS 介绍。
1.1
Android
简介
专业始于专注 卓识源于远见
Android
一词的本义指
“机器人” 它是由
Google
公司于
2007
11
月推出的基于
Linux
平台的开源手
机操½系统,依靠
Google
的强大开发和媒½资源,Android 成为众多手机厂商竞相½逐的对象,逐渐发展
成为目前最流行的手机开发平台。图
1-1
所示为
Android
系统的
Logo。
1-1
Android
系统的
Logo
Android
是一个包括操½系统、
中间件、
用户界面和关键应用½件的移动设备½件堆。
换句话说,
Android
是基于
Java
并运行在
Linux
内核上的½量级操½系统,功½全面,包括一系列
Google
公司在其内½的应
用½件,如电话、短信等基本应用功½。图
1-2
所示为
Android
的模拟器,从中可以大概了解
Android
运行界面。
1-2
问:模拟器和真机有什么区别呢?
答:
Android
模拟器
模拟器不支持呼叫和接听实际来电,½可以通过控制台模拟电话呼叫(呼入和呼出)
模拟器不支持USB连接。
模拟器不支持相机/视频捕捉。
模拟器不支持音频输入(捕捉)
,½支持输出(重放)
模拟器不支持扩展耳机。
模拟器不½确定连接状态。
模拟器不½确定电池电量水平和充电状态。
模拟器不½确定SD卡的插入/弹出。
模拟器不支持蓝牙。
1.2
Android
平台特性
‐ 2 ‐
专业始于专注 卓识源于远见
随着科技的发展,移动电话(Mobile
Phone)正向着智½化的方向迈步,并逐步成为多种工具的功½
½½½,而
Android
就是这样一个智½手机的平台,一个多种工具的功½½½½。
1.通信工具
移动电话的最基本功½即为通信,因此,½用运营商提供的通信½络进行语音通话也是
Android
平台
的最基本功½。除了传统的语音通话功½外,Android 平台还具有短消息功½,以及通常移动电话½具有
的个人信息系统管理方面的功½(如电话本等)
2.½络工具
随着数字业务½用的普遍化,移动电话通常½为½络工具½用,这样移动电话可以完成电脑的部分功
½。由此,Android 平台在½络方面的功½主要包括浏览器、IM(即时信息)
、邮件等,基本包含了½络方
面的大部分功½。
3.媒½播放器
随着多媒½技术的应用,在移动电话上进行音频和视频播放已经成为经常½用的功½。由此,Android
平台具有支持更多的音频/视频格式,支持更高分辨率的视频、更流畅地播放,以及和½络结合的流媒½方
面等功½。
4.媒½获取设备
随着移动电话与媒½获取设备的集成日益增强,
Android
平台提供了照相机、
½音机、
摄像机等功½。
5.多类型的连接设备
Android
平台提供了多种连接方式,如
USB、GPS、红外、蓝牙、无线局域½等。
6.具有友½和绚½的用户界面
Android
平台具有友½的用户界面,½用户容易学习和操½,同时具有绚½的用户界面,具有良½的
视觉效果。
7.可以个性化定制的平台
Android
平台对于用户的个性化需求,提供了全面自定义手机的功½。
除了以上介绍
Android
平台的功½以外,其在技术上还具有以下几个方面的特性。
全开放智½移动电话平台。
支持多硬件平台。
½用众多的标准化技术。
核心技术完整、统一。
完善的SDK和文档。
完善的辅助开发工具。
1.3
Android
系统架构
如图
1-3
所示,Android 系统从下至上分为四层:Linux 内核、Android 核心库及
Android
运行时环境
(Android
Runtime)
、应用程序框架以及应用程序等。
‐ 3 ‐
专业始于专注 卓识源于远见
1-3
Android
系统框架
1.3.1
Linux
内核(Linux
Kernel)
Android
的核心系统服务依赖于
Linux 2.6,例如,安全、内存管理、进程管理、½络堆栈、驱动模型。
Linux Kernel
也½为硬件和½件之间的½象层,它隐藏具½硬件细节而为上层提供统一的服务。
除了标准的
Linux
内核以外,Android 系统还增加了内核的驱动程序,例如,显示驱动、蓝牙驱动、
相机驱动、闪存卡驱动、Binder
IPC
驱动、输入设备驱动、USB 驱动、WiFi 驱动、音频系统驱动、电源管
理等,为
Android
系统的运行提供基础性支持。
这样分层的½处就是½用下层提供的服务而为上层提供统一的服务,屏½本层及以下层的差异,½本
层及以下层发生了变化时,
不会½响到上层。
也就是说,
各层各½其职,
各层提供固定的
SAP
(Service
Access
Point)
,即高内聚、½耦合。
1.3.2
Android
核心库(Libraries)
Android
包含一个
C/C++库的集合,以供 Android
系统的各个组件½用。这些功½通过
Android
的应用
程序框架(Application
Framework)展现给开发者。下面列出一些核心库:
系统
C
库——由
BSD
继承衍生的标准
C
系统½数库(libc)
,调整为基于嵌入式
Linux
设备的库。
媒½库——基于
PacketVideo
OpenCORE。这些库支持播放和½制多种流行的音频和视频格式,
以及多种媒½格式的编码/解码格式,包括
MPEG4、 H.264、 MP3、AAC、AMR、JPG、PNG。
界面管理——显示子系统的管理器,管理访问显示子系统和无缝组合多个应用程序的二维和三维
图½层。
LibWebCore——新式的 Web
浏览器引擎,驱动
Android
浏览器和可嵌入的
Web
视图。
SGL——Skia
图½库,基本的
2D
图½引擎。
3D libraries——基于 OpenGL ES APIs
的实现。该库½用硬件
3D
加速或½用高度优化的
3D
½加
速。
FreeType ——½图(Bitmap)和矢量(Vector)字½渲染。
SQLite ——所有应用程序½可以½用的强大而½量级的关系数据库引擎。
1.3.3
Android
运行时环境(Android
Runtime)
Linux
内核层上还有一个
Android
运行时层,该层包括
Dalvik
虚拟机及
Java
核心库,提供了
Java
编程语言核心库的大多数功½。
‐ 4 ‐
专业始于专注 卓识源于远见
Dalvik
虚拟机是
Android
½用的
Java
虚拟机。每一个
Android
应用程序是
Dalvik
虚拟机中的实例,运
行在它们自己的进程中。Dalvik 虚拟机设计成在一个设备上可以高效地运行多个虚拟机。Dalvik 虚拟机可
执行的文件格式是.dex, 格式是专为
Dalvik
设计的一种压缩格式,
.dex
适合内存和处理器速度有限的系统。
大多数虚拟机(包括
JVM)½是基于栈的,而 Dalvik
虚拟机则是基于寄存器的。两种架构各有优劣,
一般而言,基于栈的机器需要更多的指令,而基于寄存器的机器指令更大。DX 是一套工具,可以将
Java .class
½换成
.dex
格式。一个.dex 文件通常会有多个.class。由于.dex 有时必须进行最½化,会½文
件大小增加
1~4
倍,以
ODEX
结尾。
Dalvik
虚拟机依赖于
Linux
内核提供基本功½,如线程和底层内存管理。
1.3.4
Android
应用程序框架(Application
Framework)
½于
Android
程序库和运行时上面的是应用程序框架层。通过提供开放的开发平台,Android ½开发
者½够访问核心应用程序所½用的
API
框架,这样½得组件的重用得以简化,任½应用程序½½发布它的
功½且任½其他应用程序可以½用这些功½(需要服从框架执行的安全限制)
。从而½开发者可以编制极
其丰富和新颖的应用程序,自由地利用设备硬件优势、访问½½信息、运行后台服务、设½闹钟、向状态
栏添加通知等。
每个应用程序其实是一组服务和系统,包括:
视图(View)——丰富的、可扩展的视图集合,用来构建应用程序。包括列表(ListView)
、½格
(Grid) 文本框
(EditText/TextView) 按钮
、 (Button) 甚至是可嵌入的½页浏览器
等,
(WebView)
内容提供器(Content
Providers)——½应用程序可以访问其他应用程序(如通讯½)的数据,或
共享自己的数据。
资源管理器(Resource
Manager)——提供对于非代码资源的访问,如本地化字符串、图½和布局
文件。
通知管理器(Notification
Manager)——½应用程序½够在状态栏显示自定义的提示信息。
活动管理器(Activity
Manager)——管理应用程序生½周期,并提供常用的导航回退功½。
1.3.5
Android
应用程序
Android
装配一个核心应用程序集合,连同系统一起发布,这些应用程序包括电子邮件客户端、SMS
程序、日历、地图、浏览器、联系人和其他设½等。而所有应用程序½是用
Java
语言编写的,由用户开发
Android
应用程序和
Android
核心应用程序是同一层次的。
1.4
Android
开发框架
Android
系统½为一个开放的系统,它½积庞大,对于不同的开发者来说,在开发过程中并不需要掌
握整个
Android
系统,只需要进行其中某一部分的开发。由此,从功½上将
Android
开发分为移植开发移
动电话系统、Android 应用程序开发,以及
Android
系统开发三种。
从商业模式的角度来讲,移植开发移动电话系统和
Android
应用程序开发是
Android
开发的主流。移
植开发移动电话系统主要是由移动电话的制造者来进行开发,其产品主要是
Android
手机;而公司、个人
和团½一般进行
Android
应用程序的开发,产生各种各样的
Android
应用程序。
对于
Android
移植开发,其主要工½集中于
Linux
内核中的相关设备驱动程序及
Android
本地框架中
的硬件½象层接口的开发;对于
Android
应用程序开发,其开发的应用程序与
Android
系统的第四个层次
的应用程序是一个层次的内容;对于
Android
系统的开发,涉及
Android
系统的各个层次,一般情况下是
从底层到上层的整½开发。
Android
开发框架包括基本的应用功½开发、数据存储、½络访问三大块。
‐ 5 ‐
展开预览

猜您喜欢

评论

登录/注册

意见反馈

求资源

回顶部

推荐内容

热门活动

热门器件

随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
×