基于Android的手机日志薄系统设计与开发_第1页
基于Android的手机日志薄系统设计与开发_第2页
基于Android的手机日志薄系统设计与开发_第3页
基于Android的手机日志薄系统设计与开发_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第 32 卷第 12 期湖 北 科 技 学 院 学 报vol 32,no 122 0 1 2 年 1 2 月 journal of hubei university of science and technology dec 2012 文章编号: 2095 4654( 2012) 12 0048 04*基于的手机日志薄系统设计与开发android汪蓉( 湖北科技学院 计算机科学与技术学院,湖北 咸宁437100)摘 要: 本文基于 android 平台在 eclipses 环境下设计和实现了一个加密手机日志薄功能系统 着重阐述了从用户获取数据存储到数据库,以及从数据库中查看和修改存储的日志数据

2、,在程序中的具体实现过程 向用户展示了 一个完整的手机功能开发的项目 并在文章的最后对 android 操作系统的发展前景做出了展望关键词: 智能手机操作系统; android,linux; 数据库中图分类号: tp311文献标识码: aandroid 一词的英文本义是“机器人”,它是 google 公司于 2007 年 11 月宣布的基于 linux 平台的开源手机操作 系统,该平台由操作系统、中间件、用户界面和应用软件组 成 ,采用了软件堆层的架构,是首个为移动终端打造的真 正开放和完整的移动软件1 这个操作系统虽然是轻量级 的,但是功能很全面 从 android 发展的历史可以看出,这

3、是一门新兴的技术,市场的需求很大,并且处于膨胀阶段 可以预见,随着市场需求和手机功能的不断强大,智能手机 将在不久的将来日益普遍化,手机市场将迎来智能时代 对于还不太完善的智能手机功能的研发,继续创造新的应 用软件和完善已有的应用软件功能,对促进 android 操作 系统的推广应用具有重要的作用 本文基于 android 平台 在 eclipses 环境下开发一款专注于手机的应用软件 虽然很 多手机都有日志薄功能,但我们在原有的基础上进行了改 进和加强,主要完善了以下三个方面的功能: ( 1) 对日志薄 进行加密,能够有效地防止内容被他人翻阅,和在手机遗失 的情况下资料可能泄露的问题; (

4、2 ) 改变了传统日志薄的 文件存储方式,采用轻型数据库 sql 进行存取,使得其功 能更加完善,且便于对大量数据的操作; ( 3) 增加了相册功 能,可以让用户更直观、简捷地对图片资源进行操作 这样 就使这款应用软件变得更强大,也更加受到用户的青睐,易 于推广1 总体设计图 1系统功能 er 图1 2 系统模块设计根据上面的功能,我将系统的设计划分为四个模块来 分别实现 如图 2 所示,它们分别是:( 1) 登陆界面: 实现手机用户进入系统,验证账号信 息;( 2) 索引界面: 系统功能菜单主界面,用户在此选择要 继续的服务功能项;( 3) 日志列表: 这是实现用户翻阅所有日志、写新日系统功

5、能设计本系统主要功能划分成两个部分: 对日志的新建、修 改,对个人相册的操作 首先,当用户输入正确的账号和密 码后,进入索引界面 然后,用户有选择地进入行程日志列 表或者个人相册 在日志列表中,可以读、写里面的资料信 息; 在相册中则可以翻看手机里存的相片 此应用的主要功 能侧重在对日志的新建、查看、编辑和删除等操作上 系统 功能 er 图如图 1 所示:1 1志、编辑已存在的日志、删除已存在的日志等功能的模块,系统需要实现在用户建第一篇日志时新建一个轻型 sqlite数据库,在用户删完所有日志时总动清除日志表,尽量不占* 收稿日期: 2012 11 19个输入框分别是账号和密码 手机登陆界面

6、运行后的效果如图 3 所示:图 2 系统模块设计在这四个模块当中,日志列表块的设计最为复杂,所用到的技术最多 因为传统的手机日志薄是利用文件存储数 据的,但是我们在这里用到 sqlite,对其功能进行了增强改 善2 功能实施2 1 登陆界面根据设计的思想,我们首先需要建立一个验证用户的 登录系统界面,让它验证用户的信息是否正确 以达到防止 个人手机资料被他人翻阅的目的 我们在 layout 布局文件 里做一个 xml 脚本语言文件,设置登陆界面的模式,其代 码如下: ? xml version = 1 0 encoding = utf 8 ? linearlayout xmlns: andro

7、id = http: / / schemas an- droid com / apk / res / androidandroid: orientation = verticalandroid: layout_width = fill_parentandroid: layout_height = fill_parent android: background= drawable / pace 通过 android: orientation = vertical 设置界面布局为垂 直通过 android: layout_width = fill_parent 设置界面宽度 为填充整个屏幕 hei

8、ght 属性同上,填充整个屏幕 android: background = drawable / pace 是设置背景属 性,用 图 片 pace 作为背景,这个资源在 res 中的 dravable 文件夹中我们还需设置一个文本框,显示界面的标题 标题内容 是 res 里 string 文件中的一个名为 hello 的 string 字符串 通过 layout_width 设置此编辑框的宽度,这里设置的是自适应 大小,根据输入的文本内容自动调整 同 样 通 过 layout _图 3 登陆界面这里的账号默认设置为手机号码,密码为手机持有者与通信公司协议设定的手机密码当输入的账号或密码不正确时

9、,会弹出错误提示2 2 索引界面 索引界面的布局与登陆类似,定义一个布局的 xml 文件,其部分代码如下: buttonandroid: text = 行程日志 android: id = + id / diaryandroid: layout_width = wrap_content android: layout_height = wrap_content android: layout_marginleft = 30dp android: width = 150dpandroid: layout_margintop = 35dp / button buttonandroid: text

10、= 个人相册 android: id = + id / photoandroid: layout_width = wrap_content android: layout_height = wrap_content android: layout_marginleft = 30dp android: width = 150dp / button ,50湖北科技学院学报第 32 卷所示 与之对应的布局文件是 diary_edit xml图 4 索引界面2 3 行程日志在索引 java 文件里我们可以看到,当用户点击日志栏 时,会从当前界面跳到 activitymain class 单元 其实在这

11、一 部分功能的实现里,我一共建立了四个逻辑 java 文件,分别 是 activitydiaryeditor java 、activitymain java、diary java 和 diarycontentprovider java,四个文件共同实现了一个可读写 编辑的日志薄 下面将对这四个文件进行一一介绍2 3 1 activitymain程序的主 activity 是 activitymain,它是一个 listactivi- ty,和它关联的布局文件是 diary_list xml 该文件实现的功 能是将已有的日志以特定的排列方式排布出来,前面将显 示所有日志的标题,继而是创建该日志的

12、时间 时间是根据 手机时刻获取的 当用户点击 menu 按键时将会在屏幕下方 显示出三个功能按钮,分别完成创建一篇新日志、编辑当前 选中的日志和删除当前选中的日志的功能 日志薄的界面 如图 5 所示:图 6 编辑日志通过 insertdiary 在数据库中新建一条日志记录,或者 通过 updatediary 复写和编辑一条已存在的日志记录 当程 序运行,用户在输入框中输入内容,单击确定按钮后,写入 的日记数据就会以字符串的形式保存到数据库中 单击“确 定”按钮时系统会执行和按钮绑定的 onclick 方法2 3 3 diary这个 java 文件内容十分简单,主要是为日志做标签整 理,代码如下

13、:public static final class diarycolumns implements basecolumnsprivate diarycolumns( ) public static final uri content _ uri = uri parse ( content: / / + authority + / diaries ) ;public static final string content _ type = vnd an- droid cursor dir / vnd google diary ;public static final string conten

14、t _ item _ type = vnd android cursor item / vnd google diary ;public static final string default_sort_order = created desc ;public static final string title = title ;public static final string body = body ;public static final string created = created ;这里的 authority 要求是唯一,而且和 manifest 当中 provider 标签的

15、 authority 内容一致 这样便于用户通过 识别日志标题来回忆日志里记录的大致内容2 3 4 diarycontentprovider 这个文件主要实现如下的一些功能: ( 1) 插入一条日志图 5 日志簿界面对单击 menu 里边按钮的处理逻辑全部放在 onmeanu- itemselected 函数里,用户单击这个菜单按钮时会在手机屏 幕的下方出现两个功能选项 如果单击添加一篇新日志按 钮,那么会执行 creatediary ( ) 语句 如果单击删除一条记 录,会执行 mdbhelper deletediary( getlistview( ) getselete- ditemid(

16、 ) ) 语句,删除当前被选中的某一项对应的数据库 当中的记录2 3 2 activitydiaryeditor单击“添加新日记”的按钮,程序运行界面将会如图 6首先我们通过语句 surimatcher match ( uri) != dia-ries 对传进来的 uri 进行判断,如果这个 uri 不是 diaries类型的,那么这个 uri 就是一个非法的 uri 14然后 sqlitedatabase db=mopenhellpe getwriteable-database( ) 语句负责得到一个 sqlitedatabase 的实例 dbinsert( diary _ table _

17、name,diarycolumns body,val- ues) ; 语句负责插入一条记录到数据库中 15 需要注意的 是,insert( ) 返回的是一个 uri,而不是一个就的 id,所以我通过覆盖原有的内容实现对日志记录的更新操作:( 4) 获取编辑时间通过一个标准函数来获得编辑时刻 通过这个函数我 们将获得以手机时间为准的日志生成的时间 此时间被显 示在日志列表的末尾 这样,用户在日志列表里标题的后面 就可以看到他写完这篇日志时的时间2 4 相册设计图片资料也是个人资源文件中常用的,所以在此系统 中特别添加了一个个人相册,以储存和查看个人所拍和已 存的图片 点击相册,所有手机里的相片将

18、被调出以列举 被用户选中的图片将以自适应大小的格式填充整个屏幕, 而其他邻近的图片的缩略图将被排列在屏幕的下方,供用 户选择和查看在其布局 xml 文件代码中外层大的 relativelayout 组 件包含了两个控件,分别是 imageswithcer 和 gallyery,imag- eswithcer 是用来图片显示的那块区域的控件,gallery 是来 控制地下那个图标列表索引用的 getview 方法里动态提供至此,整个日志薄系统设计和调试完成结 语本文在基于 android 内核以及其架构的基础上,设计3了一个加密日志系统,着重阐述了从用户获取数据存储到数据库,以及从数据库中查看和修改存储的日志数据,在程 序中的具体实现过程,并配备了大量的图片,显示了操作的 主要界面、用户的使用操作流程和实际运行出来的效果 该 系统具有较强的实用性鉴于 android 智能手机在国内还并未普及,其操作系统 和应用功能体系并不完善 因此对于 android 操作系统的手 机功能开发有助于智能手机性能的提高,并对其发展市场 的拓展有莫大的帮助,这也是我们探索的意义所在 可以预 见,中国的手机市场在不久的将来,会迎来 3g 智能手机的 时代参考文献:1王向辉,张国印,沈洁 android 应用程序开发m 北京:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论