基于android平台的美食分享社区的设计与实现本科毕业设计 联系客服

发布时间 : 星期二 文章基于android平台的美食分享社区的设计与实现本科毕业设计更新完毕开始阅读534bd8d332d4b14e852458fb770bf78a65293a95

基于Android平台的美食分享社区的设计与实现

摘 要:随着移动互联网的快速发张,以安卓开放平台为主的移动市场已经形成了一

条完整严密的产业链,并急速膨胀扩张。手机APP做为移动互联网中重要的一部分为人们的生活带来了极大的便利。基于Android平台的美食分享社区就是为方便人们的生活而生,此应用主要为用户提供快速学习美食制作及分享自己的美食成果等功能,丰富了用户的日常生活。

关键字:Android;APP;移动互联网;美食分享

Design and Implementation of Food Sharing Community Based on

Android

Student:Liu Xuancheng

Abstract: As the mobile Internet quickly send a, give priority to in order to open the

android platform of mobile market has been tightly formed a complete industrial chain, and rapid expansion. Mobile phone APP as an important part in the mobile Internet brought great convenience for people's life. Food sharing community based on the Android platform is for the convenience of people's life, the application mainly to provide users with fast learning food production and share the achievements of their own food, and other functions, enrich the user's daily life.

Key words:Android;APP; Mobile Internet;Gourmet share

1

1. 前言

随着科技的不断发展,手机行业已逐渐从功能机时代转向智能手机的方向发展。目前智能手机已经在市场上占有很多比重。总之,智能手机的时代已经到来了。而Android作为智能手机系统开发中的佼佼者,是在Linux基础上开发的。因为源码的开放性,深受广大的开发者的支持。Android系统开发也从最初的只支持手机端的开发发展到各个行业,如pad、KTV房的点歌系统等都能用Android系统开发。Android以其独特的魅力迅速提升。Android能超过塞班就用了一年一个季度。

如今人们的生活节奏越来越快,衣食住行作为人们的最基本的需求,因此此类应用也非常之多。就“食”而言,很多人们对餐厅太过拥挤、食物质量得不到保证、客流高峰期就餐困难、点餐等待等问题非常困扰,而自己却因不会自己动手做出自己喜欢的美食,而不得不被迫困扰于这些问题中,此“美食分享社区”就是为了让人们在最短的时间学习制作出自己喜欢的美食。

2. Android的技术与理论

2.1. 系统架构

Android的系统架构和其操作系统一样,采用了分层的架构。从架构图看,android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和linux核心层。(如图1)

2

图1 Android 系统架构图

Fig 1 Android system architecture

2.1.1. Linux 内核层

Android 的核心系统服务依赖于 Linux 2.8 内核,如安全性,内存管理,进程管理, 网络协议栈和驱动模型。 Linux 内核也同时作为硬件和软件栈之间的抽象层[11]。 2.1.2. 系统运行库

系统运行库主要包括程序库,和Android 运行库。

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

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

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

3

* 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虚拟机实例[14]。Dalvik被设计成一个设备可以同时高效地运行多个虚拟系统。 Dalvik虚拟机执行(.dex)的Dalvik可执行文件,该格式文件针对小内存使用做了优化。同时虚拟机是基于寄存器的,所有的类都经由JAVA编译器编译,然后通过SDK中 的 \工具转化成.dex格式由虚拟机执行。

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

2.1.3. 应用程序框架

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

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

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

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

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

4