记账本的设计

上传人:沈*** 文档编号:45986132 上传时间:2021-12-09 格式:DOC 页数:34 大小:3.12MB
返回 下载 相关 举报
记账本的设计_第1页
第1页 / 共34页
记账本的设计_第2页
第2页 / 共34页
记账本的设计_第3页
第3页 / 共34页
点击查看更多>>
资源描述
课题名称基于Android记账本的设计院 系计算机与软件学院专 业移动互联网技术(Android技术)班 级学 号学生姓名指导教师: 2016 年 05 月 日计算机与软件学院毕业设计(论文)诚信承诺 我谨在此承诺:本人所写的毕业论文基于Android的Time记账本的设计,系本人独立完成,没有抄袭行为,凡涉及其他作者的观点和材料,均作了注释与说明,若有不实,后果由本人承担。承诺人(签名): 2016年 05 月 18 日摘 要在后PC时代的今天,手机已经普及到人手一台以上,智能手机成为最重要的移动终端,其两大主流是Google Android系统及其IOS系统。特别是Android平台,其具有开放的、配置优、性价比高等特点,显然越来越多的软件使用Android技术开发。然而在基于Android技术开发的软件中,却没有一款能够满足用户对收支图形化显示的记账软件。为了解决用户需求的问题,本毕业设计基于Android技术设计并实现了Time记账本管理软件的开发。该记账软件以Android Studio作为开发平台,使用AChartEngine制作图表,调用本地SQLite数据库保存本地信息,同时利用LeanCloud云端数据来管理用户账户,实现了对账本(Bill)数据的增删改查和用户资产的增删改查。 本记账软件包括以下几个模块:用户密码登陆,收支数据的录入、个人明细及汇总统计,数据云端备份。本设计着重实现记账功能和资产管理功能。关键词:记账软件;Android Studio;数据库;AbstractIn the PC era today, mobile phones have spread to more than a hand, smart phones become the most important mobile terminal, its two big mainstream is Google Android and IOS system. The Android platform, in particular, it has open, configuration and high cost performance characteristics, more and more obviously using Android software technology development. In the development of software based on Android technology, however, have no a graphical display can satisfy the users payments billing software. In order to solve the problem of user demand, this graduation design is based on the Android technology is designed and implemented the Time for the development of the management software of charge to an account.The accounting software for Android Studio as a development platform, using AChartEngine charts, call a local SQLite database to store the local information, at the same time using LeanCloud cloud data to manage user accounts, realized with books to add and delete (Bill) data and user assets to add and delete.The accounting software includes the following several modules: user password login, balance of payments data entry, personal details and summary statistics, data cloud backup. This design focuses on accounting and asset management functions.Key words:accounting software;Android Studio;Database; 目 录1 绪论11.1 选题背景11.2 记账本的发展趋势12 软件需求分析22.1 需求分析22.2 可行性分析32.2.1 可行性研究前提32.2.2 技术可行性研究32.2.3 社会可行性研究32.2.4 时间可行性研究32.2.5 结论33 软件详细设计43.1 软件功能结构图43.2 软件业务流程43.2.1 登录注册模块43.2.2 资产模块53.2.3 支出、收入相关业务流程63.2.4 用户数据的显示图表模块73.2.5 服务模块73.3 软件命名规范83.3.1 数据库命名规范83.3.2 程序代码命名规范93.4 数据库与数据库表设计103.4.1 软件数据库设计103.4.2 LeanCloud云端 账户表103.4.3 LncomeAndExpenditure(收入/支出表)103.4.4 Assets(资产管理表)113.4.5 Category(支出/收入表)114 软件的实现与结果124.1 项目结构MVC设计模式124.2 软件公共类设计134.2.1 界面设计语言Material Design134.3 数据库设计144.3.1 数据库的创建144.3.2 数据库的增删改查144.3.3 本地数据库的初始化154.4 主窗体设计实现164.5 收入支出版块设计实现174.6 支出收入数据显示版块设计实现174.7 资产管理模块的设计184.8 数据统计版块设计实现194.8.1 分类收入、支出统计194.9 软件设置版块设置204.9.1 软件设置主界面204.9.2 服务软件子模块204.10 账户管理版块设计实现214.10.1 用户登录/注册214.10.2 修改用户信息225 软件测试过程与结果235.1 测试目的235.2 测试平台简介235.3 测试方法236 开发中遇到问题与解决方法256.1 Fragment之间的通信256.2 fragnment 与activity通信探究25总 结27谢 辞28参考文献291 绪论1.1 选题背景一个有经济头脑的人,在日常生活和投资中,都会对自己的收入和开销做到心里有数,以便于制定出自己的一套理财计划,达到合理的经济统筹,有记账习惯的人可以从以往的统计中看到自己主要消费方向,看出自己的消费是否合理。之所谓巧妇难为无米之炊,如果自己想要理财,先决条件得要有“财”才行。如何才能有财呢?开源节流呀!有计划的用钱,再将节流下来的钱去用于理财,这样不就行了吗?那又怎么样来“开源”呢?记账是个好办法,它有针对性地罗列、统计计算资源信息。从查阅资料来看,一些比较发达国家的人生活中对理财有着很严格的计划,因此国外的理财系统总体来说比较普遍,做的也比较完善。国内的理财系统主要偏重于办公财务软件,而个人理财和家庭理财方面的比较少,因此需要开发相关的系统软件,从而达到引导理性消费,合理安排收支。1.2 记账本的发展趋势记账从过去的纸质记账到网络记账,再到现在流行的手机记账,让记账成为了很好的传统习惯,也变成了现代生活的一种时尚。随着年龄的增长,消费项目逐渐多起来,有时一天下来收入、支出的小项目达到几十项,攒到晚上一块儿记很容易就会落下。而且晚上经常加班到很晚,回到家打开电脑再完成记账这项任务也有些力不从心。记账从过去的纸质记账到网络记账,再到现在流行的手机记账,让记账成为了很好的传统习惯,也变成了现代生活的一种时尚。如果进行账目的整理,每天手动统计的话,用于统计的账本和记录会越来越多,不利于保管,容易造成丢失;其次,随着纪录的增多,如果要查找以前的记录,会变得越来越困难。电脑记账的话,不方便携带,要先在纸上记录然后再录入到电脑上,麻烦且浪费时间,记账又是一种需要持之以恒的耐力才能实现的良好习惯,但是工作以后时间就没那么固定。因此,需要一个功能比较完善的手机记账系统来代替传统的手工和电脑统计。在手机上装上记账软件以后,等公交车或坐车的时候、甚至吃午饭、晚饭等待的时间都可以成为记账的时间。本软件详细记录用户的每次收入、支出行为,并且可以做出统计,用户可以对自己的收支情况做各种综合的查询,可以管理账目,方便对数据的管理。2 软件需求分析2.1 需求分析记账管理是一个家庭和个人不可缺少的部分,但现在人使用的小型财务系统却还是凤毛麟角。记账是很小的一个部分,但大到企业,小到家庭以及个人都有十分重要的意义。本记账系统的系统设计是基于Android语言,使用Android Studio作为开发平台,实现记账系统的系统构建。而后台的数据库则使用了Sqlite+LeanCloud云端数据库管理整个记账系统的后台数据。包括以下几个模块:用户密码登陆,收支数据的录入、个人明细及汇总统计,数据云端备份等,从而对家庭、个人收入与支出进行有效、系统的管理,并使之更全面和灵活。随着支付手段及购物场景的日趋多样化,人们对于自己的开支消费未能有着很好的整体把握,而单纯的采用记事本记账,条目繁多而杂乱。用户对于收支记账有着较大的需求。而专业的记账软件,通过良好的归类和便捷的记账功能,让用户方便的记下自己的每一笔开支,并且通过图表形式,清晰的了解自己的收支情况和变化趋势。随着人们生活水平的不断提高,越来越多的人开始注意到理财的重要性,在计算机网络技术高速发展的今天,原始的记账方式已经不能满足人们的需要,手机记账不仅方便快捷,而且可以实现数据的长期保存,同时还可以实现账本信息共享,并与更多的朋友分享自己的理财心得。论文首先对家庭及个人记账本系统的研究背景进行了介绍,对系统需要解决的问题进行了详细概述,讨论了课题的重要性和研究意义,并且阐述了系统的开发流程和开发过程中使用的相关技术;论文提出了系统的项目要求和项目目标,并对系统进行详细的需求调研和需求分析,主要包括系统的业务需求分析、功能需求分析、数据需求分析和非功能性需求分析,并且给出了系统主要功能的业务流程图、数据流图和功能分析图,并对数据库进行描述。其次在系统设计过程中,主要对系统进行总体设计和模块设计,总体设计主要包括对系统的架构设计和功能结构设计,同时给出了系统的架构模型和总体功能结构图,主要包括会员管理、账本管理、收支分类管理、日常收支记录管理、查询和统计分析等六大功能模块,并且分别描述每个模块设计的功能结构图和处理流程图,详细阐述了系统的设计内容。论文最后对研究的课题进行了总结,阐述了本人的主要工作,指出了论文存在的不足,并对进一步的工作进行了展望。2.2 可行性分析 2.2.1 可行性研究前提1) 要求主要功能满足用户实际需求可便利地进行收入支出的增删改操作对用户数据进行正确的统计系统操作人性化、简单易用保证软件的安全性2) 目标方便地进行收入、支出等数据进行管理整合能够多个用户一起使用,确保数据的安全性2.2.2 技术可行性研究记账本软件在目前主流的智能Android手机上运行,在Android Studio IDE开发,使用LeanCloud云端数据库+调用本地Sqlite的方式进行数据存储。2.2.3 社会可行性研究随着支付手段及购物场景的日趋多样化,人们对于自己的开支消费未能有着很好的整体把握,而单纯的采用记事本记账,条目繁多而杂乱。用户对于收支记账有着较大的需求。而专业的记账软件,通过良好的归类和便捷的记账功能,让用户方便的记下自己的每一笔开支,并且通过图表形式,清晰的了解自己的收支情况和变化趋势。2.2.4 时间可行性研究现在的时间流逝的飞快,人们肯定不会为了那些让人头疼的小账目而浪费时间清理。手机记账软件是非常契合现在人的便捷记账需要。在手机上装上记账软件以后,等公交车或坐车的时候,等电梯的工夫,甚至吃午饭、晚饭等时间都成为记账的时间。让你对花销有一个完整的概念。2.2.5 结论根据以上分析,软件开发在技术上,时间成本上都在可以接受的范围,该系统具有很高的开发可行性,可以进行对该项目的开发。3 软件详细设计3.1 软件功能结构图软件主要实现记账功能和资产管理功能,辅助添加大小写计算,汇率换算,快递,彩票等功能,使用图表展示数据。为了数据保存,软件实现了云端数据库备份功能,使用户在更换Android手机时保障数据的不丢失。当用在同一部手机登录不同的账号时,记账本软件会将上一次用户的数据完全清楚,以保障用户信息的安全,当用户在登录账户时会从LeanCloud云端数据库下载数据并完成初始化。具体软件功能结构图如下图3.1所示:图3.1 记账本软件功能结构图3.2 软件业务流程3.2.1 登录注册模块记账本软件在云端保存用户的信息,用户在同一部手机首次登陆记账本软件时是需要登陆,用户输入登陆信息,记账本软件将数据发送到LeanCloud云端数据库,LeanCloud云端数据库返回验证结果;当用户首次注册时,记账本软件会将注册数据发送到LeanCloud云端数据库,LeanCloud云端数据库在接受到数据后将数据保存,并返回注册结果信息,记账本软件在接收到数据后,会将数据以缓存的形式保存在本地,使用户在下一次登录时不需要再次输入登录信息。具体的用户登录流程如下图3.2所示:图3.2 登陆模块业务流程3.2.2 资产模块资产(银行卡,支付宝)管理是记账本软件首要功能之一,用户在首次安装记账本软件的时候,记账本软件,即在后台新建“支付宝”“现金”两个默认的资产账户。当用户输入资产信息(银行卡账户)是记账本软件 讲数据上传至网络并验证用户资产信息的合法性,当用户输入的资产合法是将返回资产信息(所属银行),若用户的输入不和法是则返回错误信息,1、资产(银行卡号格式错误)2、不存在的银行卡账户等。资产支持注销功能,但是用户使用资产时所产生的账单信息则不会同时被删除。用户删除资产后,资产内用户数据会被清空。操作具体流程如图3.3所示:图3.3资产管理流程图3.2.3 支出、收入相关业务流程 支出,收入是记账本软件 的核心功能之一,主要用于记录用户的资产增加,减少项目的记录。用户在新增支出、收入时,会同时关联一个资产账户,会将资产账户中的资产数数值进行增加和减少。用户在新增支出,收入的时候要设置支出,收入类别,支出收入类别可以在界面菜单中增加删除。操作具体流程如图3.4所示:图3.4 收入、支出业务流程图3.2.4 用户数据的显示图表模块本系统中对输入数据的统计是特色模块。数据统计模块的主要功能就是把输入的收入、支出信息经过相关计算使其以饼图的形式展现给用户,让用户能够一目了然的知道各个支出或收入的百分比具体的数据统计。操作流程如图3.5所示:图3.5 用户数据统计业务流程图3.2.5 服务模块服务模块主要有房贷计算,大小写转换,彩票,快递,汇率换算等,服务模块各个子模块数据并没有保存在数据库,也不会上传只是实现一些功能。服务模块各个子模块主要是调用相关API实现。例如大小写转换,用户输入阿拉伯数字,单击转换按钮,记账本软件即将数据加上API拼接成字符串发送至网络,再从网络接受数据处理。服务模块典型实现方案如图3.6所示: 如图3.6 服务模块典型实现方案图3.3 软件命名规范3.3.1 数据库命名规范数据库以相关的英文单词缩写命名,如表3.1所示。表3.1 数据库命名数据库名称描述Jizhangben.db记账本软件数据库表命名以相应意思的英语单词,如表3.2所示。表3.2 数据库表命名数据库表名称描述tb_account账户表字段命名除用户id以_id下划线开头,其他均为相应英语单词,如表3.3所示。表3.3 数据库字段命名字段名称描述_id用户idtime时间3.3.2 程序代码命名规范数据类型命名规则。在系统中定义变量、常量时,以数据类型简写开头加上对应的英语简写,如表3.4所示。表3.4 数据类型命名规则数据类型简写整型int字符串str布尔型bl单精度浮点型flt双精度浮点型dbl组件命名规则。在为组件申明id时以组件类型缩写加对应的作用英语,如表3.5所示。表3.5 组件命名规则组件简写EditTexttxtBottonbtnTextViewtvSpinnerspListViewlv3.4 数据库与数据库表设计3.4.1 软件数据库设计数据库的设计思路:1) 确保数据库中的每个数据表都有明确的数据关系。2) 统一数据库中的命名规则,使得有良好的交互性,使程序能够良好的运行。3) 减少程序中的重复,尽可能多的通过表与表之间的关系进行联查。3.4.2 LeanCloud云端 账户表LeanCloud云端 账户表(_User)用来保存用户信息。objectld为用户的唯一标识,为表的主键,也为其他表的objectld相对应。email和password分别代表着用户名和密码,是用户后期可以修改的,如表3.6所示。表3.6 用户账户表字段名数据类型是否主键(Y/N)是否外键(Y/N)描述objectldStringYN用户idemailsStringNN用户名/邮箱passwordStringNN密码3.4.3 LncomeAndExpenditure(收入/支出表)LncomeAndExpenditure收入/支出表。iae为收入/支出代码1:收入,2支出, assets为资产id,如表3.7所示。表3.7 收入/支出信息表字段名数据类型是否主键(Y/N)是否外键(Y/N)描述_idIntegerNY用户idiaeIntegerYN支出/支出代码amountOfMoneyStringNN金额remarksStringNN备注categoryStringNN类别assetsStringNN资产idtimetimeNN时间3.4.4 Assets(资产管理表) 资产管理表保存资产信息,如表3.8所示。表3.8 支出信息表字段名数据类型是否主键(Y/N)是否外键(Y/N)描述_idIntegerYN用户idassetsNameStringNN资产名assetsDetailedStringNN资产详细assetsAmountOfMoneyStringNN金额3.4.5 Category(支出/收入表)Category为支出类型表。本系统在数据库中已写入部分类型,由于每个用户都有不同的支出原因,在添加支出信息时,选择支出类型也大有不同。在此设计支出类型表,可以为用户提供修改支出类型的服务,根据自己的需要修改支出类型。这里的_id和账户表的_id是对应着的,如表3.9所示。表3.9 支出类型表字段名数据类型是否主键(Y/N)可否为空(Y/N)描述_idIntegerNN用户idcategoryStringNN类型名称laeStringNN收入/支出4 软件的实现与结果4.1 项目结构MVC设计模式在编写系统之前,定制好系统的系统文件夹组织结构有利于规范系统整体结构,如图4.1所示。图4.1 文件夹组织结构MVC全名是Model View Controller,是模型(model)视图(view)控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式:1 Model(模型)表示应用程序核心(比如数据库记录列表)。View(视图)显示数据(数据库记录)。Controller(控制器)处理输入(写入数据库记录)。MVC 模式同时提供了对 HTML、CSS 和 JavaScript 的完全控制。Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。 通常模型对象负责在数据库中存取数据。View(视图)是应用程序中处理数据显示的部分。 通常视图是依据模型数据创建的。Controller(控制器)是应用程序中处理用户交互的部分。 通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。4.2 软件公共类设计软件公共类的设计是为了使程序更加的结构化,使代码的重复降低。本软件中设计了数据模型公共类和对数据库进行增删改查的API接口和继承制API接口的lmpi公共类。每一个数据模型类都封装成一个接口供API接口和继承制API接口的lmpi公共类中的数据存放和取出数据来实现API接口和继承制API接口的lmpi公共类中对数据库信息的操作。其中包括资产管理、收入/支出管理等,以下是以资产管理为例的类图如图4.2所示。4.2资产管理的类图4.2.1 界面设计语言Material Design设计风格采用谷歌全新推出的设计语言Material Design,Material Design 和苹果以前的拟物设计并不尽相同。拟物设计是尽力利用美工和交互在设计上模拟实物。而 Material Design 则更为抽象,它不关心实物是什么,只关心它的质感,层次,深度,和其他物体的叠放逻辑。从某种程度上来说,Material Design 更像是把交互界面变成了一张张的纸。因此,Material Design 更像是拟物设计和扁平设计的结合。4.3 数据库设计4.3.1 数据库的创建记账本软件使用LeanCloud云端数据库和litepal开源工具操作本地数据库。1、 使用语句创建记账管理系统数据库。2、 使用语句创建数据表4.3.2 数据库的增删改查此基于Android系统的Time记账管理软件对数据库的操作主要是:对数据库中的财务信息进行添加、删除、修改、和查询,在进行任何一个操作的时候都必须对数据库对象进行初始化,才能对想查看的相应的数据库的表进行数据操作。以下是各种操作的主要方法:(1) 添加资产代码如下:(2)删除资产代码如下:(2) 修改资产代码如下:(3) 查询资产代码如下:4.3.3 本地数据库的初始化 4.4 主窗体设计实现 图4.3 主窗体运行界面主界面使用侧滑菜单作为导航栏。主界面标题栏有个Menu用于分享软件,一个账单按钮跳转到账单界面。下部显示日期和收入支出总数,在下面使用三个Tab显示不同内容三者页面标签均在下方,切换方便,结构清晰,如图4.3所示。1) 明细:当前月份显示所有收入支出明细。2) 类别报表:当前月份所有类型支出的统计表(饼状图)。3) 服务:服务模块主要有房贷计算、大小写转换、彩票、快递、汇率换算等。4) 侧滑菜单:用户信息查看、修改、数据同步、资产管理、日志、设置、指南、反馈、联系我们。4.5 收入支出版块设计实现 图4.4 收入支出模块部分运行界面1)页面布局“我的收入”主面板页面布局整体采用相对布局,显示类型、金额、日期、收入增删改查界面,采用的是线性布局内嵌套相对布局的方式实现。中间的金额、顶部的时间和资产等为相对关系。收入支出显示为Spinner动态获取。2)数据存储当新增一个账单的是为两种类型,一种是收入,一种是支出,但选择收入是实在资产中增加数据,当选择支出是则在资产中减少数据,如图4.4所示。4.6 支出收入数据显示版块设计实现图4.5 支出收入显示模块运行界面 支出收入显示模块运行界面非常简单就是一个图片展示和数据内容数据部分组件将内容动态显示。根据Intent中传输的用户id,在数据库中提取相应的记录,如图4.5所示。4.7 资产管理模块的设计 图4.6 资产管理模块运行界面1) 页面布局资产管理模块的页面布局,简单大方清秀最上方的账户资产开关,可以关闭后隐藏用户账户金额的显示。2)功能的实现账户资产的管理,使用网络验证功能,记账本软件将用户输入的数据与API链接组成新的字符串上传至网络,在从网络获取验证信息,如图4.6所示。4.8 数据统计版块设计实现4.8.1 分类收入、支出统计 图4.7 分类收入统计表界面1) 明细界面明细界面是一个Listview 用于展示数据显示当前月份的账单明细,更具设置的时间从数据库中获取。在金额显示部分,如果属于支出则金额前面显示“-”,如果属于收入则金额前面显示“+”。2) 图表界面图标界面直接从数据库中获取相关数据经过计算后转换对象添加到图表当中去,如图4.7所示。4.9 软件设置版块设置4.9.1 软件设置主界面 图4.9 软件设置界面4.9.2 服务软件子模块 图4.10 关于系统模块运行界面1) 界面布局服务模块与服务子模块主要是由Fragment实现,加载在同一个Activity中去。使用Activity对众多的Fragment进行管理。2) 功能实现功能的实现方式主要有两种,一种本地计算例如房贷计算,是按照一定的公式将结果计算出来并显示在界面上,另一种是通过网络获取的方式来获取结果,比如说大小写转换,是将用户输入的数据与API字符拼接后才用GET方式上传至网络,在从网络端获取数据,并在界面上显示。4.10 账户管理版块设计实现4.10.1 用户登录/注册 图4.11 用户注册软件运行图1)页面布局登陆/注册界面才用ScrollView布局,内部嵌入LinearLayout。在代码对用户名密码进行前端验证防止用户输入错误到至注册失败。2)数据验证及传输 由于后台数据对用户名密码要求较高,所以在前端对用户输入的数据进行前端验证,用户输入的用户名必须是邮箱,密码必须超过六位。4.10.2 修改用户信息 图4.12 修改用户名、密码界面在修改用户名、密码模块中,要先做的控制自然是先验证当前用户是否是这个账号的真正使用者。若验证通过,则允许修改。修改后自动以修改后的账户登录到主界面,。5 软件测试过程与结果5.1 测试目的软件测试就是在受控制的条件下对系统或应用程序进行操作并评价操作结果的过程,所谓控制条件应包括正常条件与非正常条件。软件测试过程中应该故意地去促使错误的发生,也就是事情在不该出现的时候出现或者在应该出现的时候没有出现。从本质上说,软件测试是“探测”,在“探测”中发现软件的Bug。软件测试贯穿于软件定义与开发的整个周期,软件的需求规格说明书,结构设计及程序编码,都属于软件测试的对象。软件测试包含白盒测试与黑盒测试,白盒测试是针对程序代码进行正确性检验的测试工作,黑盒测试独立于程序代码,从用户的角度,通过一定的测试步骤与测试案例,验证软件功能、性能等指标能否满足实际应用需求的测试工作。5.2 测试平台简介本次软件设计的测试平台构建于Microsoft Windows 8 操作系统之上,测试过程中需要使用Android Studio 运行整个程序,测试的数据库系统采用的是SQLite轻量级数据库。5.3 测试方法黑盒测试,英文是Black Box Testing。又称功能测试或者数据驱动测试。黑盒测试是根据软件的规格对软件进行的测试,这类测试不考虑软件内部的运作原理,因此软件对用户来说就像一个黑盒子。软件测试人员以用户的角度,通过各种输入和观察软件的各种输出结果来发现软件存在的缺陷(Bug),而不关心程序是具体如何实现的一种软件测试方法。白盒测试,英文是White Box Testing。又称结构测试或者逻辑驱动测试。白盒测试是把测试对象看作一个打开的盒子。利用白盒测试法进行动态测试时,需要测试软件产品的内部结构和处理过程,不需测试软件产品的功能。白盒测试法的覆盖标准有逻辑覆盖、循环覆盖和基本路径测试。其中逻辑覆盖包括语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖。白盒测试是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能,白盒测试的主要方法有逻辑驱动、基路测试等,主要用于软件验证。以用户登录界面为例,结果证明运行正确。部分测试运行结果如表5.1所示。表5.1 添加收入界面测试结果IDusernamepassword运行结果160457313/密码不能为空2/12351233账号不能为空3/请填写用户名6 开发中遇到问题与解决方法6.1 Fragment之间的通信为了重用Fragment UI 组件,在设计中应该通过定义每一个Fragemnt自己的layout和行为,让Fragment的自包含和模块化。定义了这些可重用的Fragment,可以通过Activity将它们关联起来并通过程序的逻辑代码将他们连接起来以实现整体组合的UI。一个Fragment与另一个Fragment通信,例如基于用户事件改变Fragment中的内容。所有Fragment质检单额通信都是通过Activity关联起来的。两个Fragment之间不应该直接进行通信。为了允许Fragment和它的Activity通信,应该在Fragment类中定义一个接口并在Activity中实现它。Fragment在onAttach()回调函数中获取接口的具体实现的对象。后面,Fragment就可以调用接口中的方法实现与Activity的通信。将消息传递给FragmentActivity可以通过调用findFragmentById()方法获取Fragment实例,然后直接调用Fragment的公有方法,将消息传递给Fragment。例如,想象一下,Activity可能包含有其他的Fragment,而这些Fragment通过上面的回调函数返回的接口动态地显示一些内容。这种情况下,Activity可以将回调函数中接收到信息传递给需要的Fragment。综上总结Fragment之间的通信步骤如下:1) 定义接口2) 实现接口 3) 将消息传递给fragment6.2 Fragnment 与Activity通信探究Fragment 与activity相互传递数据,可按如下方式进行:1、Activity 向Fragment传递数据:在Activity中创建Bundle数据包并调用Fragment的setArguments(Bundle bundle)方法即可实现将Bundle数据包传给Fragment,这个很容易实现。2、但是如果反过来呢,当我们点击触发Fragment的事件时,希望将数据返回Activity,Activity获得数据进行之后的操作,也就是Fragment主动向Activity传递数据,利用接口回调实现Fragment与Activity的通信。总 结通过本此的毕业设计,让我更熟练地掌握了Android编程和Android Studio知识,熟悉了一个管理系统的运用和操作,熟悉如何采用Android Studio作为IDE环境使程序成功的编译和运行,能够运用Android语言创建基本表和编辑信息、增加信息、删除信息、修改信息、查找信息和浏览信息等。通过对基本表格、编辑、增加、删除、修改、查找、浏览模块的链接,生成能操作运行的记账系统。本软件设计的主要目的就是帮助朋友们实现智能手机端的自主记账,使大家实现有计划的消费,合理的消费。同时软件设计美观,使用简单,结合了现在流行的Android系统,安装在用户随身携带的手机上,可以实现随时随地记账。经过几个月的不断努力,系统基本实现了需求分析给出的各项功能。在这次毕业设计中由于对知识掌握的不够熟悉,专业技术水平的有限,其中遇到很多问题,从程序的设计,编码,测试到模块分工到模块之间的关系。特别是程序运行的时候,程序出现了一个错误,使整个程序运行不了,我更是在怎样运行程序上思想发生了冲突。总之,Android Studio程序设计为我提供了一个相互学习的平台,为更好地学习这门课程提供了坏境和基础,因为课程设计我更加全身心的投入了该科的学习,更能学以致用,这对我来说意义是非凡的。谢 辞走的最快的总是时间,回忆起求学期间的点点滴滴,来不及感叹,时光之易逝!大学生活已近尾声,三年多的努力与付出,随着本次论文的完成,也要在我大学生涯下划下完美的句号。在这短暂的过程中,感谢师长、同学和朋友给了我莫大的帮助和支持,谢谢大家!本论文设计过程中,在吕莲老师的悉心指导和严格要求下业已完成,从课题选择和构思到具体的写作过程,从论文初稿与定稿都给予细心指导与教导无不凝聚着吕老师的心血和汗水,在我的毕业设计期间,吕老师为我提供了种种专业知识上的指导和一些富于创造性的建议,吕老师一丝不苟的作风,严谨的治学态度、丰富渊博的知识、敏锐的学术思维、精益求精的工作态度使我深受感动,没有这样的帮助和关怀和熏陶,我不会这么顺利的完成毕业设计。在此向吕老师表示深深的感谢和崇高的敬意!在临近毕业之际,我还要借此机会向在这三年中给予我诸多教诲和帮助的各位老师表示由衷的谢意,感谢他们三年来的辛勤栽培。不积跬步何以至千里,各位任课老师认真负责,在他们的悉心帮助和支持下,我能够很好的掌握和运用专业知识,并在设计中得以体现,顺利完成毕业论文。同时,在论文写作过程中,我还要特别地感谢我们班的班主任张以利老师,在写毕业设计过程中给了我许多宝贵的意见和建议,在这里请接受我诚挚的谢意!我还要感谢同组的各位同学,在毕业设计的这段时间里,你们给了我很多的启发,提出了很多宝贵的意见,对于你们帮助和支持,在此我表示深深地感谢!参考文献1邓昌友,肖遥,马小月,夏利,曾俊. 基于Android智能手机数据安全的研究. 福建电脑,2015,12.2勾通.基于Android平台的远程视频监控系统设计. 电脑编程技巧与维护,2015,24.3石翠.PS制作Android智能手机界面技巧解析. 电脑编程技巧与维护,2015,24.4傅伟.基于Android的校园通系统设计-以江苏财经职业技术学院为例. 廊坊师范学院学报(自然科学版),2015,06.5吴新华,万强.基于Android平台的手机游戏开发. 萍乡学院学报,2015,06.6杨平. 基于Android的移动外勤系统设计与开发. 信息通信,2015,12.7赵亮,张维.基于Android技术的界面设计与研究.徐州:徐州建筑职业技术学院, 2015.06.8黄晓先. 基于Android的掌上校园交流系统设计与实现. 开封教育学院学报,2016,03.9丘增富,秦裕德,陆科宏,马柏林,陆家卓.基于Android平台的互联网+云超市软件. 电脑编程技巧与维护,2016,07.10徐强,周倩,成敏,宋占伟. 基于Android平台的物流信息采集系统. 吉林大学学报(信息科学版),2016,02.11柳淑婷,傅梓怡,范亚芹. 基于Android的僵尸网络设计与实现. 吉林大学学报(信息科学版),2016,02.12王庆磊.Android移动数据安全探析. 福建电脑,2016,03.
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!