英语原文共 6 页
基于SQLITE引擎的安卓平台的SQL服务器的实现
Kiran Dhokale , Namdeo Bange , Shelke Pradip , Sachin Malave
摘要
Android是由Google公司推出的能够运行多个应用程序的移动设备的操作系统、中间件和关键应用程序的开源软件组合。它是一个基于Linux V2.6内核的完整运行环境。最初,Android的部署目标是移动电话领域,如智能手机和低成本的翻盖手机设备。Android平台旨在让开发人员制作出有革新性的移动应用程序,以充分利用与手机上网相关的所有功能。作为一个完整的移动平台,Android提供了通用的强大的操作系统、综合库集、丰富的多媒体用户界面和电话应用。由于Android平台包含流行的开源SQLite数据库,因此其数据存储的负担得以缓解。SQLite是一个实现SQL引擎的软件库。它已成功用作磁盘文件格式:允许开发人员以简单的方式处理数据,但也保留有数据库的功能(例如撤消,重做等)。
在嵌入式设备环境中,那些并发性低且存在很少或中等大小的数据集的应用,使用SQLite作为其数据库是正确的选择。提议的系统使得创建的数据库不仅可以通过名称访问应用程序中的任何类,还可以访问应用程序之外的任何类。
关键词:嵌入式数据库,android,android平台,SQLite数据库
1.引言
Android是用于移动设备的软件堆栈,包括操作系统,中间件和关键应用程序。Android SDK提供了开发在Android设备上运行的应用程序所需的工具和库。 Android提供对Sql server数据库的完全支持。创建的数据库可以通过名称访问应用程序中的任何类,但不能在应用程序外部访问。因此我们需要Sql server数据库。对于任何系统上的任何软件应用程序,都需要使用数据库来存储数据。
2.现有系统
在当前系统配置中,数据将存储在移动电话的SQ;ite数据库内。如果我们想将数据保存在一个公共位置,即远程服务器,直到现在还没有简单的机制来实现它。将信息存储在远程服务器中的需要是因为即使移动设备丢失或被盗,用户也可以重新获得存储在电话内的所有数据。在远程服务器中存储信息的想法是使用Web服务实现的,Web服务可以将数据保存在远程数据库中,如SQL Server。
2.1现有系统的缺点
- 无完整数据访问权限。
- 无法从外部应用程序访问数据库。
- 记忆问题。
- 不安全。
- 不灵活。
3.问题陈述
目前移动平台数据存储存在着严重的问题,随着移动用户的日益增多,我们需要使用数据库来存储数据。Android手机可用的数据库是SQLite数据库,但是SQLite数据库存在很多问题,如访问数据库、安全问题、内存问题、操作系统支持问题等,这些问题可以解决吗?这个问题的解决方案是SQL数据库服务器,我们将解决SQLite数据库面临的最大问题。我们将最大限度地集中在从应用程序和应用程序外部访问数据库。SQL数据库服务器提供对数据库的完全和安全访问。
4.提议的系统
图1.2 提议的系统架构
我们提出的系统克服了现有系统的缺点。它采有先进的技术,使其对用户更加友好。提议的移动应用程序基于面向服务的体系结构(SOA)完成,拥有像Android手机,iPhone那样的瘦客户端。服务是自包含的,并使用xml等消息进行通信。设计的系统是跨平台的、异步的、可靠的和安全的。SOA是一种架构风格,用于使用松散耦合的服务构建业务应用程序,这些服务的作用类似于黑盒,可以通过链接来协调以实现特定的功能,如图1.2所示。一旦我们在具有集中式数据库的远程服务器中拥有Web服务,那么我们可以为不同的客户端使用相同的Web服务,可以是Android、iPhone、Blackberry、Windows phone、Bada、Java phone、Symbian phone等客户端。不同的客户端可以使用公共Web服务来保存或检索数据。我们还可以从数据库端备份/恢复数据库。
4.1我们的计划及其优势:
- 对于日常生活:Android移动用户直接将数据存储在移动设备中。
- 应用程序外部的数据访问:Android移动用户可以轻松访问应用程序内部以及应用程序外部的数据。
- 最低内存要求:它是一个轻量级事务数据库引擎,占用少量磁盘存储和内存。
- 支持标准关系数据库:提议的系统支持标准的关系数据库功能,如SQL语法,事务和预处理语句。
- 用户友好。
- 无需数据库设置或管理:在Android中使用提议的系统数据库不需要任何数据库设置或管理。
- 支持完整的Android操作系统:建议的系统完全支持Android移动应用程序。
5.系统要求
5.1开发工具
Eclipse和Android SDK Tools是一个集成开发环境(IDE),用于可视化设计、构建、测试和部署Web服务、门户和Java(J2EE)应用程序。
5.1.1 Eclipse
在计算机编程中,Eclipse的多语言集成开发环境(IDE)包含一个基础工作区和一个用于自定义环境的可扩展的插件系统。它主要用Java编写,可用于开发Java应用程序,并通过各种插件使用其他编程语言来开发程序,包括Ada、C、C 、COBOL、Fortran、Haskell、JavaScript、Lasso、Perl、PHP、Python、Ruby、Scala、Clojure、Groovy 、Scheme和Erlang。它还可以用于开发Mathematica软件的软件包。开发环境包括用于Java和Scala的Eclipse Java开发工具(JDT),用于C / C 的Eclipse CDT和用于PHP的Eclipse PDT等。Eclipse的初始代码库源自IBM的 VisualAge。 Eclipse软件开发工具包(SDK)包含Java开发工具,适用于Java开发人员。用户可以通过安装为Eclipse 平台编写的插件(例如用于其他编程语言的开发工具包)来扩展其功能,并且可以编写和贡献自己的插件模块。根据Eclipse公共许可证的发布条款,Eclipse SDK是免费的开源软件(尽管它与GNU通用公共许可证不兼容)。它是最早在GNU Class路径下运行的IDE之一,它在冰茶下运行没有问题。
5.1.2 Android SDK工具
Android软件开发工具包(SDK)包含一整套开发工具。其中包括调试器、库、基于QEMU的手机仿真器、文档、示例代码和教程。目前支持的开发平台包括运行Linux(任何现代桌面Linux发行版)、Mac OS X 10.5.8或更高版本、Windows XP或更高版本的计算机。目前,人们可以通过使用[AIDE-Android IDE - Java,C ]应用程序和[Android java编辑器]应用程序在Android上开发Android软件。官方支持的集成开发环境(IDE)是使用Android开发工具(ADT)插件的Eclipse,虽然IntelliJ IDEA IDE(所有版本)完全支持开箱即用的Android开发,NetBeans IDE也支持通过插件进行Android开发。此外,开发人员可以使用任何文本编辑器编辑Java和XML文件,然后使用命令行工具(需要Java Development Kit和Apache Ant)来创建,构建和调试Android应用程序以及控制附加的Android设备(例如:触发重启、远程安装软件包)。Android SDK的增强功能与整个Android平台开发密切相关。 SDK还支持旧版本的Android平台,以防开发人员希望在旧设备上定位其应用程序。开发工具是可下载的组件,因此在下载最新版本和平台之后,还可以下载较旧的平台和工具以进行兼容性测试。Android应用程序以.apk格式打包并存储在Android OS上的/ data / app文件夹下(出于安全原因,该文件夹仅供root用户访问)。 APK包中包含.dex文件(编译的字节码文件,称为Dalvik可执行文件),资源文件等。
5.2设计工具 - Star UML 软件建模器
StarUML支持UML 2.0中指定的大多数图表类型。 它目前缺少对象、包、时序和交互概述图(尽管前两个可以通过类图编辑器充分建模)。
6.非功能性要求
- 有些要求本质上不起作用。 具体而言,这些是系统必须在其中工作的约束。
- 数据库必须与基于智能手机的Android操作系统兼容。
6.1性能要求
单击任何应用程序,应用程序创建数据花费不到1秒的时间。
能立即访问数据库服务
与数据库相关的任何活动响应时间应不到3秒钟。
6.2数据安全要求
- 管理员应仔细维护数据库,任何错误都可能导致数据混乱。
- 控制对数据库的访问。
- 防止重复数据。
6.3系统安全要求
- 系统应足够安全,以防止拒绝服务攻击。管理员密码必须高度机密。
- 系统应足够安全,以防止未经授权的用户破坏数据。
- 用户登录信息应足够安全,以便除授权人员外,任何人都无法访问数据。
6.4可靠性
- 数据库必须足够可靠,以便在不同用户执行相同任务时,预期结果不会有所不同。
- 数据库必须足够可靠,以便在用户执行正常功能时系统不会出错。
6.5可用性
- 应用程序必须足够容易学习,以便用户在第一次尝试时完全了解如何使用该产品。
- 数据库必须比类似产品更有效。
6.6灵活性
- 数据库必须能够支持Android应用程序。
- 数据库必须能够支持Android操作系统。
- 数据库必须足够灵活,以支持具有不同功能的用户。
7.基本概念
数据库是基本概念,应用程序设计离不开数据库,因为应用所需要的信息都存储在数据库中。因此,数据库是计算机系统的重要组成部分。同样的概念将用于移动或智能手机,应用的速度也取决于数据库,然后我们搜索移动数据库,发现将信息存储在移动设备中是非常困难的,因为内存问题是移动数据库的主要问题。因此,我们调查了所有市面上主流的数据库。我们发现现在最常用于移动端的数据库是SQLite。我们发现这个数据库有许多问题,我们必须解决这些问题。这些问题主要有:不能访问应用程序外的数据库的问题、手机内存问题、数据安全问题。所以我们专注于这些问题上,我们要做的是在较少的内存中同步最大的数据,然后我们就可以解决内存不足的问题了。我们将使用套接字编程,以便我们可以完全访问所有应用程序,最后可以通过向用户提供身份验证来解决安全问题,我们不使用SQLite中的锁定和解锁。
8.文献调查
8.1调查1
1.文章标题:为Android应用程序创建和使用数据库,2012年6月。
8.1.1论文讨论
本文介绍了面向移动和非移动应用软件开发的Android平台概述。 Android平台包括流行的开源SQLite数据库,该数据库作为磁盘文件格式使用非常成功,允许开发人员以简单的方式处理数据,但也使用数据库功能(如撤消,重做等) )。
8.1.2优点
- 数据库存储在SQLite数据库而不是文件夹、其他数据库。
- 内存要求最低。
- 锁定和解锁用于安全目的。
8.1.3缺点:
- 存储在SQLite数据库中的数据库无法在应用程序外部访问。
- 锁定和解锁的使用不是完全安全的。
- 无法同时访问数据库。
8.2调查2
1.文章:从移动应用程序访问外部数据库。
8.2.1论文讨论
在这21世纪10年代的最初几年,我们看到来自不同制造商的智能手机和平板电脑等移动设备数量激增,这些设备由不同的操作系统组成。与此同时,所有平台的移动应用程序数量已超过500,000。其中一些应用程序的特征之一是它们使用数据库(本地或远程)来访问数据。从移动应用程序中的远程数据库访问数据并不简单,无法像在本地数据库上那样在远程数据库上调用数据库查询。在本文中,我们将讨论使用MVC(模型 - 视图 - 控制器)软件设计模式解决此问题的方法。通过使用此方法,我们可以使移动应用程序无缝地与远程数据库通信。本文讨论的解决方案是平台不可知的,即;此解决方案可
资料编号:[5799]
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。