《基于安桌系统的网络小说分享系统设计与实现毕业设计(36页).doc》由会员分享,可在线阅读,更多相关《基于安桌系统的网络小说分享系统设计与实现毕业设计(36页).doc(36页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-基于安桌系统的网络小说分享系统设计与实现毕业设计-第 29 页毕 业 设 计题目:基于安桌系统的网络小说分享系统设计与实现姓 名: 张 然 学 号: 2009080304133 学 院: 信息学院 专 业: 通信工程 指 导 教 师: 许菁菁 协助指导教师: 2013年 4 月 15 日摘 要随着科技的发展,智能手机在人们的生活中被普及,它逐步代替纸质的传播媒介成为主要获取信息的工具。因为手机体积小,便于携带,功能日趋强大等因素,所以它已经普遍被人们使用并且成为了人们日常生活中不可或缺的伙伴。其中手机阅读的功能更是为用户带来了读书的乐趣和便利。本设计是基于安桌系统的网络小说分享系统,不仅支持
2、TXT文件格式的阅读功能,还支持如调节字体大小、夜晚模式、跳转等一些个性化的设置满足读者的不同需要,同时,本设计最大的特点便是可以支持小说作者对于自己的作品进行上传分享,分享的实现是采用网络服务器和数据库进行辅助的服务。关键词:安卓 网络小说 阅读 分享 AbstractWith the popularity of the development of technology, smart phones gradually instead of paper media in peoples lives,it is as the main tool to obtain information no
3、w. The phone volume is small and it easy to carry, the functions are becoming more and more powerful, so it has been generally people use and become an integral part of peoples daily life partner. Phone reader brings the fun and convenience of reading.The design is based on the novel of the network
4、sharing system security desk system, it is not only supports reading the TXT file format, but also supports some personalized settings to meet the different needs of the reader. At the same time, the biggest feature of the design is to support the author of the novel for their works upload and share
5、.Realization of sharing is aided by the network server and database service.Key Words:Android Network novel Read Share目 录摘 要IAbstractII引 言11 概述21.1 课题的背景及意义21.2 Android系统的现状31.3 毕业设计的总体目标32 开发环境及技术42.1 开发环境42.2 Android平台架构42.3 Activity生命周期53 需求分析73.1 功能需求73.2 性能需求73.3 安全需求83.4 系统的功能分析83.5 系统可行性分析93.
6、5.1技术可行性93.5.2 经济可行性93.5.3 操作可行性94 详细设计104.1 功能框架104.2 系统流程104.3 系统功能的实现134.3.1 客户端设计134.3.2 服务器接口设计174.3.3 数据库设计194.3.4 联网相关包介绍214.3.5 HTTP联网实现244.3.6 数据解析功能的实现254.3.7 异步处理的实现275 系统功能的测试285.1 开始界面285.2 文件阅读界面305.3 阅读个性化设置界面315.4 编辑分享界面335.5 文件导入界面335.6 网络小说列表界面35结 论37致 谢38参考文献39引 言随着科技的不断发展和创新,手机已经
7、具有了非常强大的处理能力和可扩展能力,人们获取信息和个性化的需求也在逐渐增大,手机成为了人们日常生活中不可或缺的伙伴。现在人们使用的智能手机不仅仅具备打电话发短信等一些基本功能,还能进行娱乐活动如上网、游戏、听音乐、看电影、阅读等等,增添了用户在生活中的乐趣,这就是我们所说的“移动物联网”的时代。随着“物联网”的发展,以前人们生活中的低端手机已经不能满足人们的需求,越来越多的人追求手机的功能性和智能性,而Android和Iphone无疑是现在智能机的两大主流系统品牌,有一些已经逐渐淡出人们的视野,这两大系统各有千秋,因为android手机形状多样化,价格多样化,尤其是有一些中低端手机之后,越来
8、越受到人们的喜爱,所以Android发展相对来说更加的稳步上升中,而Android手机现在价格的优惠让漂亮的手机不再是一种奢侈品。所以本系统着重于android系统去设计和实现一款软件。阅读这一项功能是非常有意义和有用处的,人们可以省去了携带大量图书的不变,可以随时随地享受阅读带给自己的乐趣,最大的特点就是便携,更有一些个性化功能让人们增强体验的感觉。本设计的题目是基于安卓系统的网络小说分享系统,此款软件是基于android系统手机开发的一款手机网络小说分享系统,包含客户端和服务器端,为用户提供上传和下载数据的服务。本系统便可满足手机用户利用碎片零散时间阅读的需求,而网络小说作者也可以通过散碎
9、的时间,用手机写文章或小说并可以及时上传与网友们进行分享,很大程度上满足了人们对于书籍的热爱。阅读者不用再到处拿着一本或几本厚厚的小说了,只需要一部手机,使用此款软件,便可以把文学小说库搬到自己的手机上,随时随地尽享小说带来的乐趣,为读者提供了便利,此款开发可以实现作者分享作品的需求,更为小说作者带来了不一样的体验。1 概述1.1 课题的背景及意义随着时代的发展,移动互联网和移动物联网已经悄悄地进入了人们的生活中,成为了大家讨论和关注的热点话题,移动互联网包括移动通信和互联网,这两大行业以迅猛的速度发展着,具有很大的前景和市场潜力,它们的增长速度是任何预测专家都未曾预料到的,而在现在,越来越多
10、的人都希望在移动手机或设备中享受高速的互联网带来的如电脑般的体验,完成一切可能完成的事来充实自己的生活,自然而然地,手机成为人们首选的产品。近年来,Android平台的使用和操作系统是越来越得到大家的认可了,Android平台上各种娱乐和实用软件也得到了大家的一致的肯定,软件也是层出不穷,很多软件都非常有趣味性,为人们的生活增添了一丝的乐趣。阅读软件是人们生活中必不可少的一款实用软件,目前市面上的手机阅读软件有很多,用户的选择也非常多,每个阅读器都具备它的优点,但是同时又难以满足人们日益增长的需求,所以手机电子书阅读器的应用研究方向还大有潜力可挖。现有的阅读软件我们只是可以通过软件进行单纯的阅
11、读,少了好友互动分享的过程和乐趣,因此本文就将对阅读器增添这样的一种分享效果。本课题是基于android平台系统,实现了一款基于android系统的网络小说分享系统设计与实现。该软件可以和服务器连接实现网络小说的阅读和下载,并把喜欢的小说上传分享给自己的好友等功能。为喜欢阅读的朋友提供了一款很实用的软件,更增加了趣味性。电子阅读方式是我们处在低碳社会非常提倡的一种读书形式,它能够节能环保,与现在倡导的生活方式是非常之吻合的,手机阅读器已经几乎成为每个人手机中的必备软件,给人们阅读生活增添了一抹亮丽的色彩。虽然现在手机阅读器的功能己经相对完善,但是同时地人们也对它抱有更大的期望和更高的要求,比如
12、现在的用户都比较注重个人的体验效果,希望在阅读的过程中能使人们读起来不感到疲倦而且是充满乐趣的体验,现如今的阅读器多媒体性能还不足以让用户百分百满意,功能也可以继续变得强大,我们可以做的还很多。本毕设题目为“基于安卓系统的网络小说分享系统”,不仅方便了读者,满足用户日常阅读小说的需求,还方便了写小说或作品的作者,灵感闪过的时候可以利用上下班乘坐公交车、闲暇之余随时随地地写小说或短篇与读者进行分享。1.2 Android系统的现状就目前的情况和现实而言,安卓系统的市场正在以迅猛的方式进行逐步的扩大,它的产品也能满足不同人群的需求,不但会生产一些1000左右的低端智能机,能满足一般人群日常生活的需
13、求同时具备娱乐性,还会生产一些价格较贵但质量高的高端智能机,适合商务人士使用。价格低的智能机是普通老百姓完全可以支付得起的,并且现在也越来越受大家欢迎,操作也是大家接受的。相对一些其他品牌的普通机来说,人们更喜欢买那种价格便宜、性能好的智能机,原因是因为它们既能满足一般人使用手机的需求,功能各方面的性能也都让使用者感觉到它是具有比较不错的感受和操作的,又没有像高端机那样昂贵的价格。有很多人都喜欢用手机玩游戏、看视频等等,这些功能相对来说就会对手机的硬件和软件有更高的要求,比如要要求画面流畅、运行速度快、兼容性好等等,针对这些人,也有很多高端的安卓智能机,那些手机完全可以满足人们日常的需要。现在
14、安卓系统的应用会在更多的方面做提升,出现了很多很好的应用或者是体验如车载导航、电视机功能、点歌系统,甚至是平板电脑。现在安卓系统的发展速度是超乎大家的想象的,针对于安卓开发出来的软件也是非常有前景的,这是一个值得开发和拓展的领域,安卓系统也将成为大众使用的主流系统之一。1.3 毕业设计的总体目标通过对现有市面上的软件进行使用了解自己的软件中要具备的功能,通过一些简单的例子对未使用过的软件进行熟悉和操作,全面的了解此款手机软件的客户端和服务器端的具体实现方法。具体期待的实现目标如下:1. 客户端可以实现注册登陆的功能,打开在线书库进行小说的下载功能,下载到本地并可导入到软件中进行浏览阅读。2.
15、可以实现小说列表的选择功能,选择文件后打开阅读(在操作中实现了一些个性化设置,如:翻页效果、书签、字体大小等等)3. 可以实现编辑并上传分享的功能,作者可以将作品分享给读者。2 开发环境及技术2.1 开发环境l EclipseEclipse是一个基于Java可扩展的开发平台,并且是开放源代码的,就Eclipse本身而言,使用者可以通过下载安装插件组件构建开发过程中必备的开发环境,环境搭建好后使用起来是非常方便的。l Jave本系统是以java为编程语言,接口和功能都具备灵活多变的特点,适合多种情况方便人们使用,Java语言是一种简单易用、可移植的面向对象语言,本系统就是在Android平台上使
16、用java语言完成的。l Android SDKSDK:(software development kit)软件开发工具包,SDK可应用于特定的软件框架、软件包、操作系统等情境下,它经常被软件开发工程师用于建立应用软件的开发工具的集合,为了更好的承接更高的版本,此设计选用的是Android SDK2.3,即为Android专属的软件开发工具包。l 数据库选择MySQL数据库的原因是它是非常方便的,任何一个开发者都可以根据个人设计开发的需要对它进行修改并使用,原因是MySQL是开放源代码的,MySQL具有可靠性、速度和适应性等特点,技术开发者们都认为MySQL是在不需要处理具体某个事务的情况下管
17、理内容时最好的选择,对于初学者来说更是如此。l 服务器本设计选用的是Apache服务器,根据统计,使用率排名第一的Web服务器软件就是Apache,它以它的优点跨平台和安全性深受大家熟知,它是一种非常常见且实用的服务器可以在计算机平台上很好地运行。2.2 Android平台架构由下面所显示的Android操作系统的体系结构图,我们可以看出Android操作系统结构分为4层,从上至下依次的顺序是应用程序、应用程序框架、核心类库和Linux内核,在Android运行库里面包括一个核心库,核心库里的功能很多,大多数功能都是由java编程语言所提供的,它在当中充当着核心的作用, Android操作系统
18、体系结构图如图2-1: 图2-1 Android操作系统体系结构2.3 Activity生命周期我们知道,在Activity在运行时时常会受到一些突然发生的事件的影响,从一个很简单的例子来说:假如某人正使用一个Activity这时突然有电话接入,处理突然发生事件的能力是我们研究这些应用应该具备的,但这并不是一件简单的事,这时就需要用到Activity的生命周期,这就是它的作用,生命周期也就意味着一个完成生命的过程,以下这张图最能够清楚地显示和描述Activity的生命周期,它会分为以下7个状态,它们都可以根据字面很好地进行理解,接下来会简要概括一下各个状态的情况:1. onCreate() 用
19、于首次创建时被调用,如同字面的意思,是开始创建的标志 2. onStart() 对于用户是可见的情况下将会被调用3. onResume() 用户在操作或与该Acitivity进行相互联系时会被调用4. onPause() 当应用程序启动了另外一个Acitivity时它会被调用,一般情况下是来保存当前Acitivity中的数据5. onStop() 它将会在Acitivity不可见时被调用6. onRestart() 在已经停止了的Acitivity重新启动时会被调用7. onDestroy() 调用Acitivity的finish()方法或Android系统出现资源不足时会被调用图2-7 Ac
20、tivity生命周期3 需求分析3.1 功能需求基于android系统的网络小说分享系统设计实现了注册、登录、下载等功能。同时还可以查看下载的小说,并导入到软件中进行浏览阅读,上传小说和分享作品给好友,这是一个融合了电子书和好友分享互动过程的一种全新的模式,不仅方便了读者随时随地阅读的需求,还满足了作者的写作欲望想和大家分享的心情。(1)服务器的编写和搭建:因为服务器端的编写和搭建还需要对上传下载等做一些其他的处理,确定服务器的编写,本设计是使用PHP进行编写和搭建,把服务器搭建到自己的电脑上,同时,因为在同一个网络中,即使安装在手机上也可以进行和服务器的交互。(2)登录注册等功能:为了有分享
21、功能的实现,增加了登录注册等功能,让每个用户都拥有自己的个人账户,这样才可以一对一的去确定自己的分享和上传,方便自己个人账户的维护,下载等记录的信息,拥有属于自己个人的阅读天地。(3)上传和下载的实现:用户可以查看网络上的小说列表,选择自己喜欢和想要下载的文件到本地,下载完成后可以本地进行查看,文件都会存放在download的文件夹中,同时还可以把本地自己喜欢的小说或者是自己的作品上传到服务器,分享给别人下载,这样加大了和好友间的互动过程,好的作品和大家一起分享。3.2 性能需求手机应用程序需要提供良好的用户体验,用户的使用感受很重要。通常情况下我们会看到在软件排行上下载量大的通常都是那些具有
22、新意,使用流畅并且能给用户带来良好的用户体验的软件。良好的用户体验体现在以下几点:(1) 界面要求界面简单、大方,但是更不会显得很单薄,画面简洁当中不失华丽,在本设计中比如翻页的效果,和一些个性化设置的界面,更加增添了界面的细腻度,不会显得很粗糙。(2) 操作要求操作简单、易学,容易上手,按键的操作都非常简单易懂,并且功能键都是在按下Menu键后很直观的显示在屏幕上,方便用户的选择。(3) 快速响应要求能迅速处理客户的需求,操作很灵便,这点在测试的过程中已经很好地展现出来了,软件的流畅度同时也和手机内存等其他外在因素相关联,所以在这个过程中,是尽可能表现软件自己的内在优势。(4) 兼容性好能很
23、好的适应各个版本的手机,由于系统更新换代很快,此款软件是可以用在较高版本上的,并能很好的运行。(5) 流畅切换可以让用户体验选择不同应用程序过程中带来的流畅切换的感觉,当用户正在使用这个软件的时候,有电话接通或者其他操作干扰时不会软件系统闪退或导致手机崩盘。3.3 安全需求Android在安全需求中的一个非常重要的标准就是在软件默认设置操作的情况下应用程序没有权限执行对操作系统、其他应用程序或用户进行有害操作,其中,有害操作就包括读/写用户的隐私数据,比如用户联系方式、短信、密码等等来侵犯用户的个人隐私,软件的进程不能干扰到其他应用程序的正常运行,除非给权限要求它执行相应的操作,否则是不符合安
24、全需求的,本软件是可以做到这点的。3.4 系统的功能分析本文研究的基于安卓系统的网络小说分享系统是满足人们在线和非在线阅读书籍而实现的一个系统软件。本系统可以很好的满足人们阅读方式,并可以满足人们和好友分享沟通的功能。在现在快速迭代的科技发展的时代,人们需要通过不断地去学习更多的知识来满足社会发展的需求,然而在这个过程中携带很多的纸质书籍变得不是很方便,这种随时随地的阅读方式就显得非常适应人们的需求。本系统就可以解决这个问题,让你在公交或者地铁中都可以满足自己阅读的乐趣,而且手机是日常生活的必需品,所以很方便。本系统的主要功能如下:客户端功能:android客户端用Eclipse的开发环境完成
25、,完成后可以实现个人信息的注册,登录,阅读,分享,下载,个性化设置等功能服务器功能:服务器使用PHP语言完成,提供注册,登录,查看,分享,下载等接口功能3.5 系统可行性分析3.5.1技术可行性Java 应用编程接口可提供标准接口,现在的Java平台已经几乎嵌入了所有的操作系统,我们在硬件或操作系统平台上安装Java之后,便可运行 Java 应用程序,这样的Java程序只需编译一次就可以在各种系统中运行了,使用起来非常方便和便捷,本软件使用的是Java开发语言,将其配置在Eclipse集成开发环境下,调试起来相对容易,当前的计算机硬件配置或现有安卓手机的硬件配置也完全能满足开发的需求,因此在技
26、术上是绝对可行的。3.5.2 经济可行性在调研过程中了解到该系统的开发所需软件系统、硬件平台等都是易于获得的,使用的软件和开发环境都能在网上进行下载和安装,用自带的模拟器运行即可开发研究且不需要Android平台机器,本系统开发成本低,只需人力技术进行开发研究即可,容易实现,从经济角度来看,该系统可行且非常具有经济可行性,符合作为毕设进行开发。3.5.3 操作可行性不管是基于安卓系统平台的手机还是计算机,其成本的下降致使计算机安卓手机购买成本的降低。这套系统是利用自己的计算机,且使用Eclipse中安卓模拟器,在本地上安装JDK、Android跟Eclipse作为软件的开发平台,使开发出来的系
27、统界面简洁大方、操作简单,容易上手,简单当中又让人不觉得单调枯燥,还有一些个性化设置来提高用户的使用感受,因此在操作上是可行的。4 详细设计4.1 功能框架本系统共分为三大主要模块,分别为注册登陆模块、阅读模块和原创作品上传模块。本系统打开时是一个程序简洁的主界面,主界面分为登录、注册、打开、退出四个部分。点击相应的按钮便可以进入到相应的的界面进行选择。注册登录模块:注册界面要求用户输入根据提示的信息输入自己的用户名密码等,注册了的用户才可以进行登录的操作进入到自己的个人界面进行网络书库书籍的下载浏览,并且应该记住自己的个人信息以免造成不必要的麻烦,登录界面如果输入正确的用户名和密码方可进行登
28、录。点击在线书库按钮可以进入到网络书城列表页面,点击网络书库的书籍项目便可以进行书籍的下载,下载完成的书籍可以显示在本地书库下载的列表中,在这个列表中我们就可以点击想要阅读的文章进行查看并阅读。阅读模块:打开页面进入则显示出已经加载数据的本地文件列表,用户可以选择想要阅读的本地文件进行浏览阅读。原创作品分享模块:用户可以将自己原创编辑的作品或想要推荐分享的作品进行上传分享。点击退出页面便可退出系统回到手机的程序选择界面。图4-1 总体功能模块图4.2 系统流程本系统打开会显示一个有注册、登录、打开和退出四个部分的选择界面。点击注册按钮进入注册页面信息的填写,输入符合规定的相关信息便可进行注册,
29、登陆页面如果输入正确的用户名和密码方可进行登录,进入到本地书库的页面中,可以进行相应的操作。这个过程有联网解析过程,如果登录成功就会返回成功,失败就会弹出失败提示。注册页面也是同样的流程。联网解析过程会在4.3.4和4.3.5节详细介绍,详细的分析过程请见以上两节。未注册的用户要先点击注册按钮,按照提示输入符合规定的用户名和密码提示注册成功后方可进行登陆的操作,点击登陆按钮后进行登陆的操作,输入用户名和密码之后系统会进行用户信息的验证判断是否通过验证,若通过则会进入到主界面,若未通过验证则要重复刚才的步骤进行重新的登陆。注册登录模块的流程图如图4-2。图4-2 注册登陆模块流程图打开页面可以进
30、入到本地文件列表界面,点击项目可以进入到相应的小说具体的阅读浏览页面,阅读小说浏览页面还可实现ireader翻页的效果,简洁当中透出不一般的视觉效果,让读者体验像真正翻书的感觉。点击Menu键便会弹出到个性化设置的页面,操作简单而且方便,可以点击自己想要的相应的设置来实现不同的阅读效果与体验,个性化设置分为字体、亮度、书签、跳转和编辑五个功能,选择点击相应的按钮,根据提示来完成设置功能,满足不同的需求,并且在亮度的选项中还可实现夜晚模式的调整,有助于对眼睛的保护。下图即是点击打开本地文件的流程图。图4-3 打开阅读模块流程图如果注册成功便可点击网络书库按钮可以进入到个人的网络书城的页面。这个过
31、程也是从服务器请求数据进行处理才显示出来。对网络书库我们可以下载、可以分享上传的功能,即可以根据自己SD卡中的文件作品进行编辑上传,实现分享的功能,一键搞定,没有复杂的操作便可体验分享文章的乐趣。如果对编辑的不满意不想分享可点击取消按钮即可。图4-4 原创或分享模块流程图4.3 系统功能的实现4.3.1 客户端设计手机客户端:本系统是在Java JRE编译环境下研发的,首先要下载安装此运行环境。下载安装Eclipse,设置Java JRE和Android SDK的安装路径并进行相应配置,而后方可编写相应文件,Android开发环境的搭建是基于Eclipse的,因此需要下载和配置Android
32、SDK,本系统服务的目标也是主流的Android2.3以上的版本,选用Android SDK2.3配置好后测试过程通过简单的HelloWorld来测试。借看相关书籍来协助自己更快地熟悉和操作起来,对于配置好的Eclipse,选取相对简单的代码进行运行,比如HelloWorld,顺利运行后再研究毕设题目相关的代码进行分析理解并进行项目的开发工作。Eclipse中的程序列表如下图4-4:图4-5 客户端程序列表1. 开始页面设置,开始界面主要分为4个按钮的设置,分别为登陆按钮、注册按钮、打开按钮和退出按钮,页面简洁易操作,点击相应的按钮便可跳转到界面中进行相应的操作。开始页面的布局如下图4-5。图
33、4-6 开始界面的按钮布局2. 注册与登录注册信息时对于用户名和密码都有相应的要求,注册的指令会提出输入用户名和密码的字段数,也要根据post提交完成,登陆请求时同样根据post提交完成。具体的post提交的相关介绍详见4.3.2节服务器接口设计,此处不做详细介绍,相关请求指令的代码如下:注册:指令提出输入用户名和密码的字段数,根据post提交完成,login当中的URL地址,如果成功便会响应到服务器中HttpPost httpPost = new HttpPost(LOGIN_URL);登陆:和注册提交方式相同,用户登录时要验证注册的id号码和密码,若用户名和密码都正确方可登陆成功,如果不成
34、功则会弹出提示,要输入正确的信息才可以。而当用户填写用户名、密码等个人用户信息要进行注册的时候,它会判断此时的服务器是否处于连通,网络是否处于打开的状态,要获取系统服务器的状态。网络不可用的情况,提示如下 .getSystemService(Context.CONNECTIVITY_SERVICE).getActiveNetworkInfo() = null ? false网络可用的情况,提示如下.getSystemService(Context.CONNECTIVITY_SERVICE).getActiveNetworkInfo().isAvailable();3. 阅读界面:点击打开界面将
35、会跳转到本地文件列表页面,选择本地想要阅读的题目便可进入阅读界面进行文章的阅读。页面显示的相关分析如下面介绍,每次读取文章后,记录结束点的位置,该位置是段落的结束位置,下次打开文章阅读是自动载入上次阅读到的地方。while (lines.size() mLineCount & m_mbBufEnd 0) int nSize = mPaint.breakText(strParagraph, true, mVisibleWidth,null);根据编码格式判断文字的换行protected byte readParagraphForward(int nFromPos) int nStart = nF
36、romPos;int i = nStart;byte b0, b1;得到剩余的文字后超出最大行数则不再画,字数转到下一页来显示lines.add(strParagraph.substring(0, nSize);strParagraph = strParagraph.substring(nSize);如果该页最后一段只显示了一部分,则从新定位结束点位置if (lines.size() = mLineCount) break;4. 导入文件:点击menu键便可弹出提示,可以将本地文件导入到软件中进行阅读,其中要记录点击准备导入的文件mPopupWindow = new PopupWindow(p
37、opunwindwow, LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT);记录导入书籍地址、状态和路径,在相应的位置上进行勾选,选中后点击导入便可轻松将文件导入到软件中了public BookVo(String owen, int local) super();this.owen = owen;this.local = local; 刷新文件,当刷新时会提示请稍后的字样 showProgressDialog(请稍后.); InThread.start(); 显示文件,当刷新后会更新 showProgressDialog(请稍后.);upd
38、ateThread.start();5. 添加书签功能,添加书签要存在SQlite中,所以会有相关的存储在本地数据库的语句 SQLiteDatabase db = markhelper.getWritableDatabase();图4-7 书签的按钮布局在书籍中添加书签会出现以下三种情况,都会有相应的提示来告诉用户。添加成功便会添加到SQL中Toast.makeText(Read.this, 书签添加成功, Toast.LENGTH_SHORT).show(); catch (SQLException e) 如果检测到已经存在在本地数据库中则会提示书签已存在Toast.makeText(Rea
39、d.this, 该书签已存在, Toast.LENGTH_SHORT).show(); catch (Exception e)添加书签失败的情况如下所示: Toast.makeText(Read.this, 添加书签失败Toast.LENGTH_SHORT).show();4.3.2 服务器接口设计手机服务器端:之前经过大量的调研,也对一些服务器端编写的软件进行了测试和使用,最后决定使用WampServer进行编写,它被大家称之为“傻瓜包”,Wamp就是Windows Apache Mysql PHP的集成安装环境,就是在windows系统下的集Apache、PHP和Mysql三者结合的服务器
40、软件,其中的PHP扩展模块和Apache模块利用鼠标点击开启/关闭服务就可以进行操作,不用使用者手动去修改配置文件了,可以省去繁琐的步骤和时间来进行代码和文件的研究,Wamp自己就会非常贴心地帮助开发者去做,同时,使用者再也不用到处询问php的安装问题了,Wamp一切都搞定了。由于其容易上手,安装和操作都相对简单,对于本人这种初学者非常的适合,不会导致装软件的过程中出现很多问题导致接下来的研究无法继续,因此最后选择了它。不过安装过程中还是出现了点小问题,服务器老是处在断开的状态下,好在最后找到了原因并解决了,它便可以轻松顺利地运行了。可以通过右键-语言来改变原有的英文提示,变成熟悉的中文操作,
41、启动后要选择启动所有服务,这样就可以使服务器处在在线的状态下。图4-8 WampServer运行选择界面服务器端口信息如下,以下的登陆、注册和网络分享书籍接口,全部都是post提交完成的。post可进行加密传送,它可以传递大量的信息,用于改变服务器上的资源的请求,所有的信息均可在地址栏中是不可见的,通过post提交来获取URL地址中的内容。主要用于以下三方面:登陆接口、注册接口和获取网络分享书籍列表接口。1. 登录接口URL http:/192.168.1.100/User/login参数 username 用户名 Password 密码返回的数据如下1/ 此为用户的ID号test/ 此为用户
42、名e10adc3949ba59abbe56e057f20f883e/用户密码(md5加密的)/用户邮箱若用户名或者密码不对,提示信息是“用户或密码错误!”代码格式如下:1用户名或密码错误!2. 注册接口URL: http:/192.168.1.100/User/reg参数: username 用户名(必填) password 密码(md5加密后的)(必填) email 邮箱(选填) 如果成功会提示“注册成功”,返回的数据格式是9注册成功 参数错误,或者不符合格式,提示信息如下:用户名已存在的情况:3注册用户名已存在填写的邮箱错误的情况:2邮箱地址错误用户名仅支持4到25个字符,用户名太短或者太
43、长的情况:3用户名仅支持4到25个字符3. 获取网络分享书籍列表接口(此接口按照时间进行排序)按照书籍列表名称、编号、日期依次排列。URL: http:/192.168.1.100/Book/booklist参数: page 页数 pagecount 每页信息量返回的格式是245622013-01-30 15:37:274.3.3 数据库设计数据库的设计采用的是MySQL,WampServer软件包中包括了MySQL,所以省去了单独安装MySQL的麻烦,更加便于和服务器端直接相联系,无需进行麻烦和繁琐的操作,MySQL的很多优点使之被软件开发者选择成为编写数据库的一个重要伙伴,他们都认为MySQL是管理数据最好的选择,在不需要数据和事件事务化处理的这种情况下它是非常具有竞争力和实用性的。本系统设计过程中,用户注册的个人信息和文件分享文件的信息都会存在数据库中。其中,share数据库表中包含的内容有id,uid,datetime,bookname,bookurl,downum。Users数据库表中包含的内容有id,username,password,emai