Android笔记---- Android开发简介

来源:互联网 发布:中国网络房产经纪人 编辑:程序博客网 时间:2024/06/01 21:27

什么是Android(安卓)

手机操作系统及比较

Android的特点

Android平台架构及特性()

附录

 

 

 

什么是Android(安卓)

What is Android?

Android is a software stack for mobile devices that includes an operating system, middleware and key applications. The Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language. 

    Android单词的直译机器人的意思,现在是十分热门的一个手机操作系统,是Google2007115日宣布的基于Linux平台开发的开源手机操作系统 ,号称是首个为移动终端打造的真正开放和完整的移动软件。 

Android手机则是搭载Android系统的智能手机。

 

 

手机操作系统及比较

常见的手机操作系统有:

Android、IPhone、Windows Mobile、Symbian、RIM BlackBerry、Palm

 

iOSAndroid比较

比较

iOS(iPhone手机)

Android

开发平台

Apple Mac OS

 不局限于操作系统

开发工具

Xcode

Eclipse

开发语言

Objective-C

Java

兼容性

封闭操作系统,由Apple制定,兼容性高

Google规定硬件标准,由不同的厂商进行手机的研发,厂商众多,所以兼容性低

UI交互界面

主要依靠触屏完成

需要触屏和按键同时操作

显示风格

统一的视觉规范和分辩率

视觉规范由厂商决定,屏幕分辩率繁多

 

 

Android的特点

1开放性

    Google与开放手机联盟合作开发了AndroidGoogle通过与运营商、设备制造商、开发商和其他有关各方结成深层次的合作伙伴,希望通过建立标准化、开放式的移动电话软件平台,在移动产业内形成一个开放式的生态系统。

2平等性

    应用程序在平等的条件下创建的。移动设备上的应用程序可以被替换或扩展,即使是拨号程序或主屏幕这样的核心组件。

3应用无界性

    Android打破了应用之间的界限,比如开发人员可以把Web上的数据与本地的联系人,日历,位置信息结合起来,为用户创造全新的用户体验。

4快速方便的开发应用

    Android平台为开发人员提供了大量的实用库和工具,开发人员可以很快速的创建自己的应用。例如在别的手机平台上要进行基于位置的应用的开发是相当的复杂的,而AndroidGoogle Map集成了进来,开发人员通过简单的几行代码就可以实现一个的一个地图应用

 

 

Android平台架构及特性()

Android系统在底层建立在Linux系统之上,主要由5部分组成,即应用程序、应用程序框架、函数库、Android运行时和Linux内核。如图:


5部分组成分别如下:

1应用程序层

Android的应用程序通常涉及用户界面和用户交互,这类程序是用户实实在在能感觉得到的。Android的应用程序目前以Java程序进行编写。

Android本身提供了桌面 ,联系人,电话,浏览器等众多核心应用。

开发者还可以使用应用程序框架层的API实现自己的程序


2应用程序框架

这一层是编写Google发布核心应用时所使用的API框架,开发人员同样可以使用这些框架来开发自己的应用程序,但必须遵守其框架的开发原则。应用框架主要部分:

    1.ViewsUI组件)

    2.Content Providers

    3.Resource Manager

    4.Notification Manager

    5.Activiy Manager


3函数库

C库:系统最底层的库,C库是用linux的系统来调用

多媒体框架(MediaFrameword):android多媒体核心部分,基于PacketVideoopenCode,从功能上分为2部分:音频和视频的回放(playback)、音频和视频的记录(Recoder

SGL:2D图像引擎 OpenGL:3D的支持

SSL:安全协议

界面管理工具(sm):管理显示子系统

WebKit:网络浏览器核心

SQLite: 通用嵌入式关系型数据库

FreeType:位图和矢量字体


4Android运行时

    Android运行时由两部分组成:Android核心库集和Dalvik虚拟机。

    每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。Dalvik被设计成一个设备可以同时高效地运行多个虚拟系统。 Dalvik虚拟机执行(.dex)Dalvik可执行文件,该格式文件针对小内存使用做了优化。同时虚拟机是基于寄存器的,所有的类都经由JAVA编译器编译,然后通过SDK中 的 “dx” 工具转化成.dex格式由虚拟机执行。

    Dalvik虚拟机依赖于linux内核的一些功能,比如线程机制和底层内存管理机制。


5Linux Kernel

    Android 的核心系统服务是基于 Linux 2.6内核,但不是 Linux

    内核提供系统核心服务,如进程、内存、电源管理,网络连接,驱动与安全等;



附录

1、Android Emulator(Android模拟器)和Android真机比较:

         可模拟电话本、通话等功能

        内置的浏览器和Google Maps都可以联网

        可以使用键盘输入

        可单击模拟器按键输入

        可以使用鼠标单击、拖动屏幕进行操作

但是,

        不支持呼叫和接听实际来电,但可以通过控制台模拟电话呼叫(呼入和呼出)

        不支持USB连接。

        不支持相机/视频捕捉。 

        不支持音频输入(捕捉),但支持输出(重放)。 

        不支持扩展耳机。

        不能确定连接状态。 

        不能确定电池电量水平和交流充电状态。 

        不能确定SD卡的插入/弹出。

        不支持蓝牙。

 

2Android 常用开发术语:

        apk扩展名 :apkAndroid包的扩展名,一个Android包包含了与某个Android应用程序相关的所有文件,apk文件将AndroidManifest.xml文件、应用程序代码(dex文件)、资源文件和其他文件组成一个压缩包,一个项目只能打包压缩成一个apk文件。 

 

        应用程序(APP) :一个或多个Activity、服务、监听和Intent接收器的集合,一个应用程序有一个文件清单,并且打包成一个apk文件。 

 

        ADB( Android Debug Bridge :SDK自带的一个基于命令行的调试程序。它提供了设备浏览工具、设备上的拷贝工具和为调试转寄端口的功能

 

        DDMS:调试监视服务(Dalvik Debug Monitor ServiceDalvik)SDK自带的一个可视的调试工具。它提供了屏幕捕捉、日志存储和进程检测能力。 

 

        URIs  :Android使用URI字符串请求数据(如通信录列表)和动作(如在浏览器中打开网页)URI字符串可以具有不同的格式。所有请求数据的URI必须以“content://”开头。有效的动作URI字符串会被设备上的适当的程序处理,例如,以“ http://”开头的URI字符串会被浏览器处理。

 

        布局资源:一个描述Activity屏幕布局的XML文件

 

        Nine-patch / 9-patch / Ninepatch image:一种可变尺寸的位图资源,可用作设备上的背景或其他图片。

 

        Android.app:提供高层的程序模型和基本的运行环境。

        Android.content:包含各种设备上的数据进行访问和发布。

        Android. database:通过内容提供者浏览和操作数据。

        Android.graphics:底层的图形库。

        Android.location:定位和相关服务的类。

        Android.media:提供一些类管理多种音频、视频的媒体接口。

        Android.net:提供网络访问的类。

        Android.os:提供系统服务、消息传输和IPC机制。

        Android.opengl:提供OpenGL的工具。

        Android.provider:提供访问Android内容提供者的类。

        Android.telephony:提供与拨打电话相关的API交互。

        Android.view:提供基础的用户界面接口框架。

        Android.webkit:默认浏览器接口。

        Android.util:涉及工具性的方法,例如时间日期的操作。

 

 


0 0
原创粉丝点击