Android是为移动设备设计的真正开放的综合平台,包含操作系统、用户界面和应用程序。

历史

过去,使用C或C++进行编程开发的人员必须理解硬件特性。

后来,开发出像Symbian之类的平台,为开发人员提供更广泛的目标用户群,而开发人员可以更为高效的利用硬件。这些平台提供一些访问设备硬件的接口,但需要编写复杂的C/C++代码,而且需要依赖一些生涩的专有API,而硬件的可移植性可成为问题。

后来,移动开发引入Java承载的MIDlet。它在Java虚拟机执行,它将底层硬件抽象出来,可以让开发人员在多种硬件上开发,但这些硬件需要支持Java运行时。

通常,第三方应用的硬件访问和执行权限,与手机制造商编写的本机引用程序的权限是不同。

而Andorid提供以Linux内核为基础构建的开放的开发环境,通过一系列API库,所有应用程序可以访问硬件,并且可以在严格受控条件下完全支持应用程序间交互。

在Android中,所有应用程序拥有相同优先级,它们有相同的API编写,在相同的运行时执行。用户可以删除本地应用,并使用第三方应用代替。

误解

Android应用程序使用Java语言编写,但并不是运行在Java ME虚拟机上。

相对于iPhone是Apple的硬件软件平台,Android是OHA生产和支持的开源软件栈。

系统结构

Android由3个组件构成:

  • 针对嵌入式设备的免费开源操作系统

  • 用于创建应用程序的开源开发平台

  • 运行Android操作系统及应用程序的设备

原生应用

Android手机通常会带有预装应用,它们是Android开源项目(Android Open Source Project,AOSP)的一部分,包括:

  • 电子邮件客户端

  • SMS管理应用程序

  • 个人信息管理套件(PIM)

  • 基于WebKit的Web浏览器

  • 音乐播放器

  • 图片查看器

  • 照相机和视频应用

  • 计算器

  • 闹钟

许多Android设备还提供Google移动应用程序:

  • 第三方Android应用程序Google Play Store

  • Google地图应用

  • Gmail邮件客户端

  • Google Talk即时消息客户端

  • YouTube视频播放器

Android SDK

Android的特性包括:

  • 支持电话或数据传输的GSM、EDGE、3G、4G、LTE网络,允许博大电话,收发SMS,允许在移动网络发送或接受数据

  • GPS和基于网络位置的检测

  • 支持地图空间集成到应用程序

  • 访问Wi-Fi硬件和点对点连接

  • 多媒体硬件空间,包括摄像头和麦克风

  • 加速计、罗盘和气压表等传感器硬件

  • 蓝牙技术和NFC硬件进行点对点(P2P)数据传输

  • IPC消息传递

  • 联系人、社交网络、日历和多媒体的共享数据存储

  • 后台服务、应用程序和进程

  • 主屏幕Widget和Live Wallpaper

  • 应用程序搜索结果集成到系统搜索

  • 集成基于WebKit的HTML5浏览器

  • 硬件加速图形,包括基于途径的2D图形库,使用OpenGL ES 2.0的3D图形

  • 动态资源框架本地化

  • 重用应用程序组件和取代本地应用程序的框架

results matching ""

    No results matching ""