基于android手机的酒店点菜系统的设计与实现精要内容摘要:
于 Linux Kernel )。 Froyo 之后的版本的 Android 将会命名为 Gingerbread(姜饼 ,基于 Linux Kernel )。 版本 /发布时间 m5rc14/2020 年 2 月 13 日 m5rc15/2020 年 3 月 3 日 , Release 1/2020 年 8 月 18 日 , Release 1/2020 年 9 月 23 日 , Release 2 , Release 1/2020 年 4 月 13 日 , Release 2 , Release 3 , Release 1/2020 年 9 月 15 日 武汉工程大学 毕业论文 6 , Release 2/2020 年 12 月 3 日 , Release 1/2020 年 10 月 26 日 , Release 1/2020 年 1213 日 , Release 1/2020 年 1 月 5 日 应用程序 以 Java 为编程语言,使 Android 从接口到功能,都有层出不穷的变化,其中 Activity等同于 J2ME 的 MIDlet,一个 Activity 类 (class)负责建立视窗 (window),一个活动中的Activity 就是在 foreground(前景 )模式,背景运行的程序叫做 Service,两者之间通过由ServiceConnection 和 AIDL 链接,达到复数程序同时运行的效果 [9]。 如果运行中的 Activity 全部画面被其他 Activity 取代时,该 Activity 便被停止 (stopped),甚至被系统清除 (kill)。 Bionic 是 Android 改良 libc 的版本。 Android 里包含了 Webkit,所谓的 Webkit 就是 Apple Safari 浏览器背后的引擎。 Surface flinger 是就 2D 或 3D的内容显示到屏幕上。 Google 自制的 Bionic Libc 是 Android 使用工具链 (Toolchain)。 Android 采用 OpenCORE 作为基础多媒体框架。 OpenCORE 可分 7 大块: PVPlayer、PVAuthor 、 Codec 、 PacketVideo Multimedia Framework(PVMF) 、 Operating System Compatibility Library(OSCL)、 Common、 OpenMAX[10]。 Android 的多媒体数据库采用 SQLite3 数据库系统。 数据库又分为共用数据库及私用数据库。 用户可通过 ContentResolver 类 (Column)取得共用数据库。 Android 的中间层多以 Java 实现,并且采用特殊的 Dalvik 虚拟机 (Dalvik Virtual Machine)。 Dalvik 虚拟机是一种“寄存器型态” (Register Based)的 Java 虚拟机,变量皆存放于寄存器中,虚拟机的指令相对减少 [11]。 Android 平台架构 Android 其本质就是在标准的 Linux 系统上增加了 Java 虚拟机 Dalvik,并在 Dalvik虚拟机上搭建了一个 JAVA 的 application framework,所有的应用程序都是基于 JAVA 的application framework 之上 [12]。 Android 主要应用于 ARM 平台,但不仅限于 ARM,通过编译控制,在 X8 MAC等体系结构的机器上同样可以运行。 武汉工程大学 毕业论文 7 图 Android 结构 Android 分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和 linux 核心层 [13]。 蓝色的代表 java 程序,黄色的代码为运行 JAVA 程序而实现的虚拟机,绿色部分为C/C++语言编写的程序库,红色的代码内核 (linux 内核 +driver)。 在 Application Framework之下,由 C/C++的程序库组成,通过 JNI 完成从 JAVA 到 C 的调用。 数据存储是每一个应用所必须一种方式,通过数据存储可以使用户和互联网,程序与数据库进行交互。 还可以在不同应用程序之间进行数据交换以及共享。 安卓应用程序框架中提供了很多的方式进行存储,其中 SharedPreferences 可以实现不同应用程序之间数据的共享,主要的工作机制在将用户自己定义的 XML 文件保存到手机存储中,需要的时候进行调用。 嵌入式关系型数据库 SQLite,它主要用于存放本地的数据,不能进行网络的通信并且存储的数据量很小。 相对在网 络通信中使用的就是网络存储方式,通过网络存储方式的选择则可进行服务器与客户端或者是浏览器与客户端的数据交互。 其他的数据存储方式还有内容提供者和文件等其他方式。 1) 应用程序框架 应用程序的架构设计简化了组件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。 帮助程序员快速的开发程序,并且该应用程序重用机制也使用户可以方便的替换程序组件 [14]。 武汉工程大学 毕业论文 8 隐藏在每个应用后面的是一系列的服务和系统 , 其中包括; ( Views),可以用来构建应用程序, 它包括列表( lists),网格( grids),文本框( text boxes),按钮( buttons), 甚至可嵌入的 web 浏览器。 ( Content Providers)使得应用程序可以访问另一个应用程序的数据(如联系人数据库), 或者共享它们自己的数据 [15]。 ( Resource Manager)提供非代码资源的访问,如本地字符串,图形,和布局文件( layout files)。 ( Notification Manager)使得应用程 序可以在状态栏中显示自定义的提示信息 [16]。 ( Activity Manager)用来管理应用程序生命周期并提供常用的导航回退功能。 2) 系统运行库 a)程序库 Android 包含一些 C/C++库,这些库能被 Android 系统中不同的组件使用。 它们通过 Android 应用程序框架为开发者提供服务 [17]。 以下是一些核心库: 系统 C 库。 ,基于 PacketVideo OpenCORE。 Manager 顾名思义,用于管理 Surface。 ,LibWebCore 浏览器,基于 Webkit 引擎。 底层的 2D 图形引擎 libraries 基于 OpenGL ES APIs 实现 位图( bitmap)和矢量( vector)字体显示。 一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎 [18]。 另外这里还有一个硬件抽象层。 其实 Android 并非所有的设备驱动都放在 linux 内核里面,有一部分实现在用户空间, 这么做的主要原因是可以避开 Linux 所遵循的 GPL 协 议,一般情况下如果要将Android 移植到其他硬件去运行, 只需要实现这部分代码即可。 包括:显示器驱动,声音,相机, GPS, GSM 等等。 3) Linux 内核 Android 的核心系统服务依赖于 Linux 内核 ,如安全性,内存管理,进程管理, 网络协议栈和驱动模型 [19]。 Linux 内核也同时作为硬件和软件栈之间的抽象层。 其外还对其做了部分修改,主要涉及两部分修改: a)Binder (IPC):提供有效的进程间通信,虽然 linux 内核本身已经提供了这些功能,但 Android系 统很多服务都需要用到该功能,为了某种原因其实现了自己的一套。 武汉工程大学 毕业论文 9 b)电源管理:为手持设备节省能耗。 最后在谈谈 Android 所采用的语言,其应用开发采用 java 语言,我们所说的 java一般包含三个部分: a) java 语言:即其语法,其写代码的程式 b) java 虚拟机:为了实现一次编译到处可以运行的原则, java 在编译连接以后并没有产生目标机器语言,而是采用了 Java bytecode[20]。 这种 Java 共用指令,这时就需要一个虚拟机来执行改指令。 c) 库:跟我们常用的 C 语言一样提供一些常用的 库 后两者结合就是 Java Runtime Environment。 Java 简介 追求简单性是 Java 设计者的设计目标之一, Java 语言简单的特点是建立在 C++基础之上的。 虽说 Java 与 C++在许多地方都非常相似,但终究它们是两种不同的语言,它们各有自己独特的优势。 Java 摒弃了 C++中的指针运算、操作符重载、虚基类以及自动的强制类型转换等机制。 与 C++相比, Java 语言最显著的变化莫过于不再使用指针,而是以一种更容易理解和操作的方式 “引用 ”来实现。 另外, Java 提供的自动的废料收集机制, 有了这个机制程序员就不再需要为内存管理而担忧了。 相较于其它编程语言而言, Java 更适用于网络 /分布式系统,除了上面所介绍的原因之外,还有一个重要的原因就是网络环境中使用 Java 开发更安全。 Java 创建了一种安全机制,这种安全机制能够专门用来防止恶意代码的攻击。 除此之外, Java 还专门针对网络下载的类设置了一种安全防范机制。 例如 Java 会通过分配不同的名字空间用来 防止本地的同名类被替换,并且 Java 会对字节代码进行检查。 除此之外, Java 还提供安全管理机制,有了安全管理机制程序员就能让为每个 Java 应用 设置自己的安全卫士。 Java 的目标是要协助开发人员建立各方面可靠的程序, Java 语言提供的强类型机制、异常处理和废料的自动收集机制,通过这些机制开发人员能在设计初期既可以提前检测出可能存在的问题。 另外, Java 的安全检查机制也使它更具健壮性。 在 Java 平台上, Java 程序会被编译为体系结构中立的字节码格式,编译后的字节码格式代码就可以成功运行在实现这个 Java 平台的任何系统中。 显然,这种途径非常适合于软件的分发和异构的网络环境。 同那些解释型的高级脚本语言相比较, Java 的性能还是较优的。 多线程可以带来 更好的交互响应和实时交互。 Java 语言一般有两种方法来创建线程:一是通过扩展 Thread 类来创建多线程;二是通过实现 Runnable 接口来创建多线程。 MySQL 简介 MySQL 是一个关系型数据库,类似于 SQL server。 它是开源的,这也就意味着许多中小型企业可以根据 MySQL 来设计自己的数据库。 其最早的开发商为瑞典的 MySQL 武汉工程大学 毕业论文 10 AB 公司。 他有许多优良的特点,例如体积较小、速度较快、成本花费较低。 这些特点都受到许多公司企业的青睐。 MySQL 使用标准化的 SQL 语句来查询数据库信息。 由于数据 库的数据是保存在不同的表单中,这样查询起来就显得非常方便和灵活。 当然,自从 Oracle 公司收购 MySQL之后,商业版的 MySQL 就要开始付费了,社区版不收费,仍然可以免费的使用。 武汉工程大学 毕业论文 11 第二章 系统分析 可行性分析 技术可行性 Android 开发是基于 Java 语言的开发, Java 语言作为现在一种非常流行的语言,有其强大的库和开发工具作为支持,能够很好地实行系统的功能。 Android 操作系统为我们提供了开发平台的支持,给了我们很好地发挥的自由空间,它有着丰富的控件,能够为 我们提供各式各样的开发样式。 Android 应用程序的开发灵活,比较容易上手,这就使对 Android 有一定基础的人开发起来比较便捷。 同时,对于一个小型的 Android 应用程序的开发来说,开发周期较短,能够节省不少时间。 市场可行性 中国的餐饮行业的发展异常迅速的同时,网络的发展也极为迅速,现在网络基本已经覆盖到了大部分的乡镇,而在城市了,网络更是遍布每个角落。 网络的迅速发展为餐饮行业带了了新机遇,现在餐饮行业竞争激烈,人们的生活节奏越来越快,各种节假日里甚至是周末,许多的酒店、餐厅里是满。 如果没有 无线点餐系统来作为支持,还是采用传统的方式进行手工记账、点菜,那么餐饮行业的发展将会受到极大的阻碍。 有很多的酒店、餐厅已经有类似的系统,但还有许多餐厅并没有这样的管理模式,还是选择的是比较传统的方式经营。 中国的餐饮行业正在面临转型,向信息化、规范化、统一化转型。 有了无线点餐系统,这样的要求便可以实现,不仅为顾客带来了良好的体验,也使得酒店、餐厅的管理方便、高效。 经济可行性 Android 点餐系统的开发是在 Android 手机进行的,由于这几年智能手机的普及,使得 Android 智能手机很便宜,大部 分人都拥有自己的智能手机,我自己用的手机也是Android 操作系统的,除了 Android 手机,开发的硬件还需一台普通的计算机。 总的来说,开发成本低,开发可行。基于android手机的酒店点菜系统的设计与实现精要
相关推荐
时产生报警,即驱动蜂鸣器鸣叫、 8 个发光二 极管发光 主程序流程图: 开始 显示实时温度 温度设定、报警 查询记录温度值 定时器初始化、启动 图 12 主程序流程图 读温度值模块 读温度值模块需要调用 4 个子程序,分别为: DS18B20 初始化子程序:让单片机知道 DS18B20 在总线上且已准备好操作 DS18B20 写字节子程序:对 DS18B20 发出命令 DS18B20
的反转且该端与 相连。 电控水龙 头共两个,一个为进水水龙头且受 的控制,另一个为排水水龙头而受 的控制,当电控水龙头的控制端为“ 0”时水龙头打开,当电控水龙头的控制端为“ 1” 时水龙头关闭。 显示器共有两只 P0 控制高位显示器 , P2 控制低位显示器。 蜂鸣器有由 控制,当 输出为“ 1”时蜂鸣器发声。 本系统采用 12M 的晶体振荡器定时器 0 和定时器 1 的 设置为每隔
a16 成为一个功能强大的单片机,为许多嵌入式控制应用提供了灵活而低成本的解决方案。 方案二:选用其他单片机。 无论从单片机的资源,还是执行速度进行比较, 51 单片机都要比其他单片机性价比高。 而且 51 单片机的价格比其他单片机便宜。 根据以上的两种方案的比较,所以在本电路设计时采用的是 AT89S52 芯片。 天津工程师范学院 2020 届本科生毕业设计 4 选用电机驱动模块 L298N
3 分 记录内容不规范,扣 1~ 2 分 3 15 室内试验 试验方法不符合规范要求,扣 4 分 试验成果不满足规范要求,扣 4 分 试验过程质量控制有瑕疵,扣 2~ 3 分 4 16 外业安全 勘探过程中发生伤及作业人员或地下管线、周边建筑物等事故,扣 4 分 勘探孔未进行回填封孔,扣 4 分 封孔质量不符合要求,扣 2~ 3 分 4 17 勘查成果 岩土层划分 岩土层划分依据不合理,扣 3
网站地图 在线支付 礼券支付 货到付款方式 商城首 页 企业会员入口 商品增加 订单管理 销售报表 企业注册。 6 (网站栏目说明: XXXX 网站栏目结构如上图所示。 栏目规 划充分考虑到 XXXX 展示企业形象、扩大知名度、在线营销的需要。 网站采用了多个动态模块,企业能够自主、独立的完成 网站中大多数内容的更新,同时,网站整合的“客户服务”,“商品分类 ”模块,增加了网站同客户之间的交互性
产成本”科目用以核算生产产品的基本生产车间发生的费用,“辅助生产成本”科目用以核算动力、修理、运输等为生产服务的辅助生产车间发生的费用。 “基本生产成本”明细科目应按照基本生产车间和成本核算对象(例如:产品的品种、类别、定单、批别、生产阶段等)设立为三级明细,并按规定的成本项目 (直接人工、直接材料、制造费用)在各三级明细中设立专栏核算:“辅助生产成本”明细科目应按辅助生产提供的劳务和产品(例如