基于android平台“每日一句”应用的设计与实现 - 图文(3)

2025-08-05

兰州大学本科生毕业论文 基于android平台“每日一句”应用的设计与实现

3.2.1应用程序(APPLICATIONS)

Android平台默认包含了一系列核心应用程序,包括电子邮件、短信、日历、地图、浏览器、联系人管理程序等,这些程序都以java 程序语言编写,你也可以用自己便携的应用程序来替换Android提供的应用程序,这个替换的机制实际是由应用程序框架来保证的。如图3.2所示。

图3.2 应用层

3.2.2应用程序框架(APPLICATION FRAMEWORK)

应用程序框架是我们进行Android开发的基础应用程序框架层包含了视图系统,内容提供器,窗口管理器,活动管理器,通知管理器,位置管理器,资源管理器,电话管理器和包管理器9大部分。如图3.3所示。

图3.3 中间件层

3.2.3Android 运行时(RUNTIME)

Android 虽然采取Java程序语言来编写应用程序,但不使用J2ME执行Java程序,而是用Android自有的Android运行时(RunTime).Android 运行时包括核心库和Dalvik虚拟机两部分。如图3.4所示。

图3.4 核心库,虚拟机

3.2.4系统库(LIBRARIES)

应用程序框架是贴近于应用程序的软件组件服务,而更底层则是Android的函数库,这一部分是应用程序框架的支撑,其架构如图3.5所示。

5

兰州大学本科生毕业论文 基于android平台“每日一句”应用的设计与实现

图3.5系统库

3.2.5 Linux

Android平台是开放,采用Linux内核则是Android平台开放性的基础。Android平台中的操作系统采用了Linux2.6版的内核,它包括了显示驱动、摄像头驱动、Flash内存驱动、Binder(IPC)驱动、键盘驱动、wifi驱动、Audio驱动以及电源管理部分。

Linux内核层为我们在软件层和硬件层建立了一个抽象层,使得应用程序开发人员无需关心硬件细节。对于手机的开发商而言,如果想要Android平台运行到自己的硬件平台上就必须通过对Linux层进行修改,通常要做的工作就是为自己的硬件便携驱动程序。 3.2.6SQLite简介

Android数据库使用的是SQLiteDatabase。

SQLite是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款世界著名开源的数据库管理系统来讲,它的处理速度比他们都快。

6

兰州大学本科生毕业论文 基于android平台“每日一句”应用的设计与实现

第四章 客户端详细设计

4.1客户端描述

“每日一句”客户端的功能是对数据库里面的数据进行相关的操作,创建桌面插件等功能,所以以下主要介绍客户端数据库的设计和客户端相关界面的设计。

4.2客户端数据库的实现

该软件数据库的建立是完全在Android平台上执行Java代码,通过DVM编译来建立的,没有什么辅助工具,由于整个SQLite数据库是非可视化操作,所有对数据库的操作都是通过执行Java代码实现,在完成其查询功能的时候没有使用数据库高级编程,较为麻烦的关节是在如何有机的将客户端数据库整体结构实现出来,实现过程是无可视界面,也没有数据库辅助工具情况下,整个过程很抽象。所以表的设计应尽量简单,不要有错综复杂的关系,因为每张表都是独立的,不存在任何约束,所以数据库也是独立数据库,不采用Android特有的可共享数据库。

4.2.1数据库设计

客户端数据库E-R关系图如3.1所示:

图3.1 客户端数据库E-R关系图

7

ID 名人名言的注名人名言 添加的时间 兰州大学本科生毕业论文 基于android平台“每日一句”应用的设计与实现

根据上面的E-R图,本软件客户端定义的note数据库中包含以下1张表:内容表:note,本软件客户端数据库表的描述如表3.6:

表3.6本软件客户端数据库表的描述

字段名 noteId noteName noteTime noteContent

category

数据类型 Integer varchar varchar varchar Integer

长度

主键/外键

默认值

描述 ID,自动赋值

名人名言 修改,添加时间 注释 标识状态符

Pk

20 20 400

1

4.2.2客户端数据库操作

SqliteDBConnect类是创建数据库的类,onCreate()方法是创建note表的方法,SQLManage类是数据库的管理类,Insert()方法是添加数据的方法,saveNote()是修改数据的方法,returnTime()是获取系统当前时间的方法,blruSearch()是模糊查询的方法。

SqliteDBConnect类代码如下:

public class SqliteDBConnect extends SQLiteOpenHelper { public SqliteDBConnect(Context context) { super(context, \ }

@Override

public void onCreate(SQLiteDatabase db) { db.execSQL(\table note(noteId Integer primary key,noteName varchar(20),noteTime varchar(20),noteContent varchar(400),category Integer)\

}

@Override

public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { } }

SQLManage类实现了对数据库进行插入、查询、更新和获取系统当前时间等功能。具体的代码如下:

8

兰州大学本科生毕业论文 基于android平台“每日一句”应用的设计与实现

public class SQLManage extends Activity{

/*

* 数据管理类 * */

//执行插入数据的操作

public void Insert(SQLiteDatabase sqlDB,String name,String content,String time,int category)

{ ContentValues cv=new ContentValues(); cv.put(\ cv.put(\ cv.put(\ cv.put(\ sqlDB.insert(\ sqlDB.close(); }

//执行数据修改更新的操作

public void saveNote(SQLiteDatabase sdb,String name,String content,String noteId,String time,int category){

ContentValues cv=new ContentValues(); cv.put(\ cv.put(\ cv.put(\ cv.put(\ sdb.update(\ sdb.close(); }

//返回当前系统时间

public String returnTime(){ TimeZone.setDefault(TimeZone.getTimeZone(\修改默认时区

Date d=new Date(System.currentTimeMillis()); SimpleDateFormat sdf=new SimpleDateFormat(\HH:mm:ss\

String time=sdf.format(d); return time; }

9


基于android平台“每日一句”应用的设计与实现 - 图文(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:高三地理原因分析及影响因素类(教师版) - 图文

相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219