移动互联网应用服务平台的设计与实现外文翻译资料

 2022-11-25 14:55:39

What is Android?

Writer: Herbert George Wells,2005

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.

Features

Application framework :enabling reuse and replacement of components

Dalvik virtual machine :optimized for mobile devices

Integrated browser :based on the open source WebKit engine

Optimized graphics :powered by a custom 2D graphics library; 3D graphics based on the OpenGL ES 1.0 specification (hardware acceleration optional)

SQLite :for structured data storage

Media support :for common audio, video, and still image formats (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)

GSM Telephony (hardware dependent)

Bluetooth, EDGE, 3G, and WiFi (hardware dependent)

Camera, GPS, compass, and accelerometer (hardware dependent)

Rich development environment including a device emulator, tools for debugging, memory and performance profiling, and a plugin for the Eclipse IDE

Applications

Android will ship with a set of core applications including an email client, SMS program, calendar, maps, browser, contacts, and others. All applications are written using the Java programming language.

Application Framework

By providing an open development platform, Android offers developers the ability to build extremely rich and innovative applications

Developers are free to take advantage of the device hardware, access location information, run background services, set alarms, add notifications to the status bar, and much, much more.

Developers have full access to the same framework APIs used by the core applications. The application architecture is designed to simplify the reuse of components; any application can publish its capabilities and any other application may then make use of those capabilities (subject to security constraints enforced by the framework). This same mechanism allows components to be replaced by the user.

Underlying all applications is a set of services and systems, including:A rich and extensible set of Views that can be used to build an application, including lists, grids, text boxes, buttons, and even an embeddable web browser

Content Providers that enable applications to access data from other applications (such as Contacts), or to share their own data

A Resource Manager, providing access to non-code resources such as localized strings, graphics, and layout files

A Notification Manager that enables all applications to display custom alerts in the status bar

An Activity Manager that manages the lifecycle of applications and provides a common navigation backstack

Libraries

Android includes a set of C/C libraries used by various components of the Android system. These capabilities are exposed to developers through the Android application framework. Some of the core libraries are listed below:

System C library - a BSD-derived implementation of the standard C system library (libc), tuned for embedded Linux-based devices

Media Libraries - based on PacketVideos OpenCORE; the libraries support playback and recording of many popular audio and video formats, as well as static image files, including MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG

Surface Manager - manages access to the display subsystem and seamlessly composites 2D and 3D graphic layers from multiple applications

LibWebCore - a modern web browser engine which powers both the Android browser and an embeddable web view

SGL - the underlying 2D graphics engine

3D libraries - an implementation based on OpenGL ES 1.0 APIs; the libraries use either hardware 3D acceleration (where available) or the included, highly optimized 3D software rasterizer

FreeType - bitmap and vector font rendering

SQLite - a powerful and lightweight relational database engine available to all applications

Android Runtime

Android includes a set of core libraries that provides most of the functionality available in the core libraries of the Java programming language.

Every Android application runs in its own process, with its own instance of the Dalvik virtual machine. Dalvik has been written so that a device can run multiple VMs efficiently. The Dalvik VM executes files in the Dalvik Executable (.dex) format which is optimized for minimal memory footprint. The VM is register-based, and runs classes compiled by a Java language compiler that have been transformed into the .dex format by the included 'dx' tool.

The Dalvik VM relies on the Linux kernel for underlying functionality such as threading and low-level memory management.

Linux Kernel

Android relies on Linux version 2.6 for core system services such as security, memory management, process management, network stack, and driver model. The kernel also acts as an abstraction layer between the hardware and the rest of the software stack.

Activities

An Activity is an application component that provides a screen with which users can interact in order to do something, such as dial the phone, take a photo, send an email, or view a map. Each activity is given a window in which to draw its user interface. The window typically fills the screen, but may be smaller than the screen and float on top of other windows.

An application usually consists of multiple activities that are loosely bound to each other. Typically, one activity in an application is specified as the 'main' activity, which is presented to the user when launching the application for the first time. Each activity can then start another activity in order to perf

剩余内容已隐藏,支付完成后下载完整资料


什么是 Android?

作者:Herbert George Wells

Android 是一个专门针对移动设备的软件集,它包括一个操作系统,中间件和一些重要的应用程序。Beta版的 Android SDK 提供了在Android平台上使用JaVa语言进行Android应用开发必须的工具和API接口。

特性

应用程序框架 支持组件的重用与替换

 Dalvik 虚拟机 专为移动设备优化

 集成的浏览器 基于开源的WebKit 引擎

 优化的图形库 包括定制的2D图形库,3D图形库基于OpenGL ES 1.0 (硬件加速可选)

 SQLite 用作结构化的数据存储

 多媒体支持 包括常见的音频、视频和静态图像格式 (如 MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)

 GSM 电话技术 (依赖于硬件)

 蓝牙Bluetooth, EDGE, 3G, 和 WiFi (依赖于硬件)

 照相机,GPS,指南针,和加速度计(accelerometer) (依赖于硬件)

 丰富的开发环境 包括设备模拟器,调试工具,内存及性能分析图表,和Eclipse集成开发环境插件

应用程序

Android会同一系列核心应用程序包一起发布,该应用程序包包括email客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA语言编写的。

应用程序框架

开发人员也可以完全访问核心应用程序所使用的API框架。该应用程序的架构设计简化了组件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。同样,该应用程序重用机制也使用户可以方便的替换程序组件。

隐藏在每个应用后面的是一系列的服务和系统, 其中包括;

 丰富而又可扩展的视图(Views),可以用来构建应用程序, 它包括列表(lists),网格(grids),文本框(text boxes),按钮(buttons), 甚至可嵌入的web浏览器。

 内容提供器(Content Providers)使得应用程序可以访问另一个应用程序的数据(如联系人数据库), 或者共享它们自己的数据

资源管理器(Resource Manager)提供 非代码资源的访问,如本地字符串,图形,和布局文件( layout files )。

 通知管理器 (Notification Manager) 使得应用程序可以在状态栏中显示自定义的提示信息。

 活动管理器( Activity Manager) 用来管理应用程序生命周期并提供常用的导航回退功能。

程序库

Android 包含一些C/C 库,这些库能被Android系统中不同的组件使用。它们通过 Android 应用程序框架为开发者提供服务。以下是一些核心库:

 系统 C 库 - 一个从 BSD 继承来的标准 C 系统函数库( libc ), 它是专门为基于 embedded linux 的设备定制的。

 媒体库 - 基于 PacketVideo OpenCORE;该库支持多种常用的音频、视频格式回放和录制,同时支持静态图像文件。编码格式包括MPEG4, H.264, MP3, AAC, AMR, JPG, PNG 。

 Surface Manager - 对显示子系统的管理,并且为多个应用程序提 供了2D和3D图层的无缝融合。

 LibWebCore - 一个最新的web浏览器引擎用,支持Android浏览器和一个可嵌入的web视图。

 SGL - 底层的2D图形引擎

 3D libraries - 基于OpenGL ES 1.0 APIs实现;该库可以使用硬件 3D加速(如果可用)或者使用高度优化的3D软加速。

 FreeType -位图(bitmap)和矢量(vector)字体显示。

 SQLite - 一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎。

Android 运行库

Android 包括了一个核心库,该核心库提供了JAVA编程语言核心库的大多数功能。

每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟 机实例。Dalvik被设计成一个设备可以同时高效地运行多个虚拟系统。

Dalvik虚拟机执行(.dex)的Dalvik可执行文件,该格式文件针对小内存使用做了 优化。同时虚拟机是基于寄存器的,所有的类都经由JAVA编译器编译,然后通过SDK中 的 'dx' 工具转化成.dex格式由虚拟机执行。

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

活动

一个活动是提供了一个屏幕,用户可以使用交互为了做一些事情,如拨打电话,拍照,发送电子邮件,或查看地图,应用程序组件。每项活动的一个窗口,在其中绘制它的用户界面。通常的窗口填满整个屏幕,但可能比其它窗口上方的屏幕上和浮动较小。

应用程序通常由多个松散地绑定于对方的活动。通常,一个应用程序中的活动被指定为“主”活动,开展首次应用时,它呈现给用户。每个活动可以开始另一个活动,以执行不同的动作。每次开始一个新的活动,以前的活动已停止,但系统保留在堆栈的活动(“回栈”)。一个新的活动启动时,它推到后面的栈和用户关注的焦点。返回堆栈遵守基本的“最后,出第一个”堆栈的机制,这样,当用户当前活动,并按下“后退”按钮,则弹出堆栈(和销毁)和恢复以前的活动。 (后面堆栈中讨论更多的任务和返回堆栈文件。)

当一个活动被停止,因为一个新的活动开始,它被通知这种状态的变化,通过活动的生命周期回调方法。有几个回调方法,一个活动可能会接受,因为趋势改变其状态的系统是否已创建阻止它,恢复它,或摧毁它,和每个回调提供您执行的具体工作,这适当的机会这种状态的变化。例如,停止时,你的活动应该释放任何大的物体,如网络或数据库连接。恢复活动时,你可以重新获得必要的资源和恢复被中断的行动。这些状态转换是所有的活动周期的一部分。

服务

服务是一个应用程序组件,它可以在后台执行长时间运行的操作,不提供用户界面。另一个应用程序组件可以启动服务,并会继续在后台运行,即使用户切换到另一个应用程序。此外,一个组件可以绑定到服务与它交互,甚至执行的进程间通信(IPC)。例如,服务可能会处理网络交易,播放音乐,执行文件I / O或互动,从背景,内容提供商。
基本上是一个服务可以采取两种形式:
开始
“开始”的服务时,应用程序组件(如活动)开始调用的StartService()。一旦开始,一个服务可以在后台运行,无限期,即使启动它的成分被破坏。通常情况下,启动服务执行一个操作,并不会返回一个结果给调用者。例如,它可以下载或上传在网络上的一个文件。当操作完成后,服务应该停止。

“约束”的服务时,应用程序组件结合,它通过调用bindService()。绑定服务提供了客户端 - 服务器的接口,允许元件与服务交互,发送请求,得到的结果,甚至跨进程间通信(IPC)。只要另一个应用程序组件绑定到它的绑定服务运行。多个组件可以绑定到服务一次,但是当他们全部解除,被销毁的服务。
尽管本文档讨论了这两类业务分开,你的服务工作两种方式,它可以启动(运行下去),也​​允许绑定。这是根本的问题:你是否实行一对夫妇的回调方法的onStartCommand()允许组件开始onBind()允许绑定。
不管是否启动您的应用程序,约束,或同时,任何应用程序组件可以使用的服务(甚至从一个单独的应用程序),以同样的方式,任何组件都可以使用,由活动开始一个Intent。然而,你可以声明为私有的服务,在manifest文件,并阻止来自其他应用程序的访问。

内容提供商

内容提供商管理结构化的数据集的访问。他们封装的数据,并提供用于定义数据安全的机制。内容提供商的标准接口连接在一个进程中的数据与另一个进程中运行的代码。

当你要访问的内容提供商的数据,您在您的应用程序的上下文中使用ContentResolver对象,为客户提供沟通。 ContentResolver对象进行通信的供应对象,实现ContentProvider的一类的一个实例。提供对象接收来自客户端的数据请求,执行请求的动作,并返回结果。

你不需要发展自己的供应商,如果你不打算与其他应用程序共享数据。然而,你需要自己在自己的应用程序供应商提供定制的搜索建议。你还需要自己的供应商,如果你想复制并粘贴从您的应用程序到其他应用程序的复杂的数据或文件。

Android本身所包含的内容提供商,管理数据,如音频,视频,图像,和个人联系信息。你可以看到他们中的一些参考文档为android.provider包中列出。有一些限制,这些供应商有任何Android应用程序的访问。

意图

三个激活应用程序的核心组件 - 活动,服务和广播接收机 - 通过消息,拨打电话活动称为意图。消息意图是后期运行时组件之间的结合,在相同或不同的应用运行。本身的意图,一个Intent对象,是一个被动的数据结构要执行的操作的抽象描述 - 或者,经常在广播节目的情况下,事情已经发生和正在公布的说明。有独立机制,为每个组件类型提供意向:
一个Intent对象被传递给Context.startActivity()或Activity.startActivityForResult()发起一项活动,或获得现有的活动,做一些新的东西。(也可以通过为Activity.setResult()返回的信息的活动,称为startActivityForResult())。
bull;一个Intent对象传递给Context.startService()启动服务,或正在进行的服务提供新的指令。同样,一个意图可以传递给Context.bindService()调用组件和目标服务之间建立一个连接。如果它尚未运行,它可以选择启动服务。
bull;意向对象传递给任何广播方法(如Context.sendBroadcast(),Context.sendOrderedBroadcast(),或Context.sendStickyBroadcast的())交付给所有感兴趣的广播接收机。许多种类的广播起源于系统代码。
在每一种情况下,Android系统找到适当的活动,服务,或一套广播接收机的意图作出回应,如果有必要实例化他们。在这些邮件系统有没有重叠:广播意图提供广播接收机,从不活动或服务。的意图传递给startActivity()只被传递到一个活动,从来没有一个服务或广播接收机,依此类推。

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[29939],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。