基于J2ME的手机定时系统的设计与实现毕业论文.doc

上传人:laozhun 文档编号:2394144 上传时间:2023-02-17 格式:DOC 页数:20 大小:442KB
返回 下载 相关 举报
基于J2ME的手机定时系统的设计与实现毕业论文.doc_第1页
第1页 / 共20页
基于J2ME的手机定时系统的设计与实现毕业论文.doc_第2页
第2页 / 共20页
基于J2ME的手机定时系统的设计与实现毕业论文.doc_第3页
第3页 / 共20页
基于J2ME的手机定时系统的设计与实现毕业论文.doc_第4页
第4页 / 共20页
基于J2ME的手机定时系统的设计与实现毕业论文.doc_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《基于J2ME的手机定时系统的设计与实现毕业论文.doc》由会员分享,可在线阅读,更多相关《基于J2ME的手机定时系统的设计与实现毕业论文.doc(20页珍藏版)》请在三一办公上搜索。

1、基于J2ME的手机定时系统的设计与实现王盖,电子信息系摘 要:现代社会人们生活节奏逐渐加快,在忙碌的工作、学习中,人们往往忘了生活中的一些小细节,同时手机也成为了人们最为依赖的通信工具。所以手机上功能的齐全和完善是当今用户的需求。手机定时系统的实现与应用可以给人们及时的提醒,好的定时系统可以代替用户完成各种命令。这也是手机智能化的一个重点完善对象。如果定时系统能和完善的语音识别结合的话,将是一个重大突破。本次设计的定时系统主要实现了定时关机,闹铃,提醒备忘和发短信这几个功能。系统操作简单明了,适合学生和上班族使用,可以固定每天起床的时间,定时提醒重要的事情等。关键词:定时系统;J2me;手机;

2、JavaThe Design and Realization of Timing System based on J2ME Wang Gai, Department of Electronic InformationAbstract: In the modern society the pace of life accelerate Gradually.In the busy work and Learning,people often forget some small details in life.At the same time,mobile phone has become the

3、communication tools rely on people.So moblile phones function complete and perfect is the users demand.Implemention and application of mobile phone in the timing system can give people a timely reminder,and a good timing system can replace the user to perform various command.This is the mobile phone

4、 intrlligent a focus on improving the object.If the timing system can improve the speech recognition and the combination of words,will be a major breakthrouth.The design of the timing system mainly realizes timing shutdown,alarm,reminder notes and send text messages to this function.System operation

5、 is simple and clear,suitable fro students and office workers to use.You can each day to get up on time,time to remind the important things.Key words: Timing system;J2me;Mobile Phone;Java目 录第一章 引言11.1 课题研究的目的与意义11.2系统的主要功能1第二章 相关理论和可行性分析22.1 对定时系统开发的理解22.2可行性分析2第三章 系统需求分析33.1 系统的开发背景33.2 需求分析3第四章 系统

6、设计44.1 软硬件环境配置44.1.1 硬件配置44.1.2 软件配置44.2 系统模块设计44.3 操作流程图44.4 模块详细设计64.4.1 开始界面模块设计64.4.2 计时器模块设计64.4.3 定时器模块设计74.4.4 开始计时模块设计84.4.5音频文件处理模块类的设计84.4.6短信收发模块设计9第五章 系统的实现和测试105.1 编码实现105.1.1 ChoiceGroup状态检测实现105.1.2 倒计时功能的实现105.1.3 实现卡通时钟115.2 测试项目125.2.1 开始界面的测试135.2.2 计时器模式的测试135.2.3 定时器模式的测试145.2.4

7、 到时完成的测试145.2.5 取消计时、定时的测试155.2.6 重复计时的测试155.3 测试结果15第六章 结论16参考文献17鸣谢18 第一章 引言1.1 课题研究的目的与意义目的:1.更进一步的加深对eclipse、wtk工具的熟练使用和J2me环境配置及开发过程;2.熟练掌握一门语言,对学习其他语言也有很大的帮助;3.学习程序封装的合理性,了解类与类之间的联系,更好的构造程序结构;4.锻炼遇到问题的解决能力,能够很快的解决问题,发现隐藏的漏洞。意义:本系统是利用J2ME实现定时系统在手机平台上的应用。J2me是运行在嵌入式设备上,为这些消费类电子产品设备提供灵活的环境,如移动电话、

8、游戏终端等。J2me还提供了图形用户界面、安全的模型,支持互联网协议。J2me平台如今已被广泛应用在设备上,未来的发展也是相当看好。其利用的开发工具主要有Eclipse和Net Beans两种,同时也是最常用的两种,由于其适用平台从以前的电视机、PC等转换到如今十分流行的手机中来,使以手机为平台的应用类软件拥有巨大的市场空间,随着3G的开通和应用,使得手机类应用程序迎来新的热潮,使其发展前景十分的可观。基于J2me目前已经出现的不是很多,大多数都是以简单的计时功能予以敷衍,所以如果能设计好定时系统,市场还是很看好的。1.2系统的主要功能本系统主要是用来进行计时和定时,帮助提醒用户一些短暂的比较

9、容易遗忘或者自己无法得到有效提醒的情况,同时考虑到用户使用闹铃的情况,在系统加入了次日提醒功能,可以省去用户每天都要设定时间的繁琐,此外,系统还可以进行定时发短信、关机等功能。随着手机的飞速发展,人们对手机的依赖也日益加深,需要手机又更加全面的功能。第二章 相关理论和可行性分析2.1 对定时系统开发的理解本系统在设计方面做了一些改变,为了更简捷的使用花了大量的心思,首先对市场上已经存在的定时系统做了参考,找出其优点和缺点,然后开发要充分的利用JAVA语言面向对象的特点,把系统内的各个模块设计成一个个相对独立的对象,然后将这些相对独立的对象进行类的封装,把用户的需求转化为软件的需求,把软件的需求

10、转化为软件的设计,用软件代码来实现软件设计,对软件代码进行测试并签署确认它可以投入运行使用的过程,在这个过程中的每一阶段,都包含有相应的文档编制工作。对定时系统软件开发的过程中,遵循一定的流程,主要包括系统分析、系统设计、系统编码、系统测试以及系统的维护等几个阶段。2.2可行性分析1、技术可行性设计定时系统主要是使用J2me语言,以为对J2me中定时器类的了解和运用,其次就是要求对于开发环境和开发工具的熟悉和了解。没有涉及到过于复杂的知识,所以技术上可行。2、经济可行性本次设计不需要花大量资料去购置设备,只需要一台装有Eclipse软件和WTK手机模拟器的电脑就行了。还需要给电脑配置宽带网络,

11、方便收集和浏览网上的资料。最重要的是自己的构思,不需要先进设备的支持。所以经济上可行。3、操作可行性界面和功能需要考虑用户的习惯,简洁好用是最终目的,所以不需要太复杂的功能,只有网络通信方面需要多注意些,可行。第三章 系统需求分析3.1 系统的开发背景现在手机的发展现状已经展现了手机的未来市场无可厚非的市场,手机的的确确给人们带来了巨大的便利,手机的功能越来越强大,已经可以代替用户完成许多任务,也被广泛应用于多数方面,手机之所以如此流行的主要原因有一下几个方面:1、用手机通讯方便快捷、且信息交流相对安全;2、手机可以节省许多资源;3、手机上各种应用丰富了手机的功能,让手机的用处更多更大;4、让

12、手机来代替人完成各种任务,出错少、效率高,等等;根据现在市场定时系统的情况,可以了解到定时系统的发展还有很大的提升空间,如果能够完善功能,将会对手机的使用情况有很大改变。可以称的上是手机功能管家,充分利用手机,让手机的强大功能得到淋漓尽致的发挥。现在市场上使用J2me开发的软件已经不多了,在这里的设计仅仅是一个开始,如果使用J2me语言能够设计出优秀的手机定时系统,那在转移安卓市场后也会是前景一片大好。3.2 需求分析人们又很多不方便的时候,尽管手机上功能很强大,但是如果无法及时使用,也是形同虚设,所以这时候就需要一种系统能够管理这些功能并按照用户的需求在预设好的时间完成或者执行手机的任务,这

13、就是手机定时系统,强大的定时系统会帮助用户能好的更全面的更个性的使用手机上的功能,本系统主要实现的功能有:1、可以计时或者定时,时间到时可以提醒备忘,不填写备忘时就相当于闹铃功能;2、计时或者定时,到时关机;3、计时或者定时发送短信;4、可以在计时时间到的时候设置再次计时、在定时时间到的时候设置次日计时;第四章 系统设计4.1 软硬件环境配置4.1.1 硬件配置1、计算机一台(包括各类硬件部分如主机、显示器、鼠标、键盘等)2、连接互联网的设备,适配器、电缆等3、测试程序用的Java手机、相关数据线等4.1.2 软件配置1、Windows XP操作系统2、eclipse开发软件、eclipseM

14、E和jdk3、wireless Toolkit手机模拟器4.2 系统模块设计手机定时系统主要分为开始界面模块、模式选择模块、定时任务模块和计时启动模块,系统模块的总体结构图如下(图4-1):手机定时系统开始界面模块模式选择模块定时任务模块定时启动模块退出进入定时器发短信计时计时器关机备忘图4-1 总体结构图在总体结构图中详细简单的说明该系统在使用中主要具备的功能,以及各功能模块在系统中的主要应用,从结构图中可以看出,本系统的设计目的是简单便捷,这也是设计是手机等一些小型电子产品所用软件的基本要求,占用内存小,便于操作使用。4.3 操作流程图本系统主要是在对时间进行设定时可能会有些模糊系统的具体

15、功能,在这里绘制出本手机定时系统的操作流程图,同时也相当于一个使用说明书了,具体流程如下图所示(图4-2):开始从开始界面进入定时器定时器模式?定时器模式计时器模式到时是否关机?是否发送短信?是否否开始计时,计时结束关机开始计时,计时结束发送短信开始计时,计时结束闹铃提醒是是否结束图4-2 操作流程图4.4 模块详细设计4.4.1 开始界面模块设计开始界面的主要是一个TimeCanvas类,下面来详细介绍一下。此类的功能是绘制本系统的开始界面。为了系统不至于单调。开始界面主要绘制了一张卡通图片,和卡通日期时间,从开始见面可以进入定时系统,可以退出程序。TimeCanvas类的具体设计如下面两个

16、表(表4.1和表4.2)所示。表4.1 TimeCanvas类成员变量表描述 变量类型 名称手机屏幕或者图片的宽 int w手机屏幕或者图片的高 int h 获取系统年月日 int year卡通图片或者数字 Image swimsuit启动线程显示时间 Thread th进入定时系统 Command cmdOk退出整个程序 Command cmdCan表4.2 TimeCanvas类方法表名称 功能 备注TimeCanvas () 连接图片添加数据 类的构造方法paint(Graphics g) 绘制开始界面 Canvas类自带方法initList() 初始化数据 刷新数据run() 获取时间

17、和数据 线程主要方法commandAction () 按键处理 处理监听到的事件4.4.2 计时器模块设计计时器模块和模式选择的主要是一个MyTime类,下面来详细介绍一下。此类的功能是实现定时系统的计时功能,主要是通过TextField来获取用户设置的时间,然后改变Form里的Item转为设定任务的模块。MyTime类的具体设计如下面两个表(表4.3和表4.4)所示。表4.3 MyTime类成员变量表描述 变量类型 名称显示定时系统的模式 List list计时设置和任务模式 Form form 获取用户设置的时间 TextField tfm设置需要系统完成的任务 ChoiceGroup c

18、g启动线程显示时间 Thread th计时器开始计时 Command cmdStart表4.4 MyTime类方法表名称 功能 备注MyTime() 连接图片添加数据 类的构造方法init() 初始化Form界面 还可以还原Form界面cometolist() 返回模式选择 供其他类调用的接口cometocanvas() 返回开始界面 供其他类调用的接口stoptimer() 停止闹铃 返回开始界面run() 用来启动定时器、闹铃 线程主要方法commandAction () 按键处理 处理监听到的事件MyTask() 创建定时器 内部类构造方法itemStateChanged () 项目状态

19、监听 设定处理方法4.4.3 定时器模块设计定时器模块的主要是一个TimeForm类,下面来详细介绍一下。此类的功能是实现定时系统的计时功能,主要是通过TimeForm来获取用户设置的时间,然后改变Form里的Item转为设定任务的模块。TimeForm类的具体设计如下面两个表(表4.5和表4.6)所示。表4.5 TimeForm类成员变量表描述 变量类型 名称获取用户设置的时间 DateField df定时设置和任务模式 Form form 获取用户编辑的备忘或短信 TextField tf储存long格式的时间 long a启动线程显示时间 Thread th设置是否关机 boolean

20、gj获取系统当前时间 Calendar cal计时器开始计时 Command cmdStart表4.6 TimeForm类方法表名称 功能 备注TimeForm () 连接图片添加数据 类的构造方法init() 初始化Form界面 还可以还原Form界面stoptimer() 停止闹铃 返回开始界面run() 用来启动定时器、闹铃 线程主要方法commandAction () 按键处理 处理监听到的事件MyTask() 创建定时器 内部类构造方法itemStateChanged () 项目状态监听 设定处理方法4.4.4 开始计时模块设计计时界面的主要是一个StartCanvas类,下面来详细

21、介绍一下。此类的功能是绘制本系统的计时界面。如果用户设置计时或者定时成功,系统则会专制本界面进行计时或者定时。如果是计时模式,本界面会进行倒计时,定时模式,界面则显示所定的时间。在此见面可以取消计时或者定时然后重新回到开始界面。StartCanvas类的具体设计如下面两个表(表4.7和表4.8)所示。表4.7 StartCanvas类成员变量表描述 变量类型 名称手机屏幕或者图片的宽 int w手机屏幕或者图片的高 int h 获取系统年月日 int year卡通图片或者数字 Image start启动线程显示时间 Thread th获取系统时间 Calendar cal设定任务模式 bool

22、ean jd取消计时或者定时 Command cmdCan表4.8 StartCanvas类方法表名称 功能 备注StartCanvas () 连接图片添加数据 类的构造方法paint(Graphics g) 绘制开始界面 Canvas类自带方法setmode () 获取模式信息 计时模式或者定时模式settime () 获取计时信息 对外设置的调用接口setdate () 设置定时的时间 对外设置的调用接口setnext () 设置次日的时间 用户点击次日提醒调用run() 获取系统时间 线程主要方法commandAction () 按键处理 处理监听到的事件4.4.5音频文件处理模块类的设

23、计音频处理模块主要是一个Source类,下面来详细介绍一下。此类的功能是连接本地音乐文件并实现播放暂停等功能。Source类的具体设计如下面两个表(表4.9和表4.10)所示。表4.9 Source类成员变量表描述 变量类型 名称建立播放器控制播放 Player p音量控制 VolumeControl volC表4.10 Source类方法表名称 功能 备注Source () 连接图片添加数据 类的构造方法paint(Graphics g) 绘制开始界面 Canvas类自带方法start() 开始播放音乐文件 对外接口stop() 停止播放音乐文件 对外接口4.4.6短信收发模块设计短信收发模

24、块主要是一个Client01类,下面来详细介绍一下。此类的功能是实现短信的接收和发送,不过遗憾的是只有一台电脑没有办法测试是否能成功发送和接收。Client01类的具体设计如下面两个表(表4.11和表4.12)所示。表4.11 Client01类成员变量表描述 变量类型 名称定义套接字 SocketConnection sc定义输入流 DataInputStream dis定义输出流 DataOutputStream dos表4.12 Client01类方法表名称 功能 备注Client01 () 定义输入输出和套接字 类的构造方法sendmsg () 发送短信 显示短信内容run() 接收短

25、信 线程主要方法commandAction () 按键处理 处理监听到的事件第五章 系统的实现和测试5.1 编码实现5.1.1 ChoiceGroup状态检测实现这段程序是本方法利用J2me监听器实现的一个简单的变化,可以随着用户的选择改变Form里面项目的内容。具体代码实现如下:public void itemStateChanged(Item it) / TODO Auto-generated method stubif(it=cg)if(cg.isSelected(0)form.deleteAll();form.append(cg);tf= new TextField(填写备忘, , 1

26、85, TextField.ANY);form.append(tf);else if(cg.isSelected(1)form.delete(1);else form.deleteAll();form.append(cg);tf= new TextField(编辑短信, , 185, TextField.ANY);form.append(tf);5.1.2 倒计时功能的实现主要是通过获取用户所设置的时间,然后模仿时钟的60进制进行倒计时,具体代码实现如下:public void run() / TODO Auto-generated method stubwhile(true)Calendar

27、 c = Calendar.getInstance();year = c.get(Calendar.YEAR);month = c.get(Calendar.MONTH)+1;day = c.get(Calendar.DAY_OF_MONTH);week = c.get(Calendar.DAY_OF_WEEK);hour = c.get(Calendar.HOUR_OF_DAY)+8;if(hour23)hour=hour-24;minute = c.get(Calendar.MINUTE);second =c.get(Calendar.SECOND);/System.out.println

28、(hour+:+minute+:+second);try Thread.sleep(1000); catch (InterruptedException e) / TODO Auto-generated catch blocke.printStackTrace();if(jd)ss-;if(ss0)ss=59;mm-;if(mm0)mm=59;hh-;if(hh0)ss=0;mm=0;hh=0;repaint();5.1.3 实现卡通时钟主要是通过制作卡通的汉字和数字,然后根据每秒获取的系统时间来通过g.drawRegion()这个方法画出图片的局部,实现卡通时钟的显示。具体代码的实现如下(其

29、中ct是数字“12345567890:”组成的图片,cw是“一二三四五六日”):protected void paint(Graphics g) / TODO Auto-generated method stubg.setColor(255, 255, 255);g.fillRect(0, 0, w, h);g.setColor(0, 0, 0);g.setFont(f);g.drawImage(swimsuit, 0, 0, Graphics.LEFT|Graphics.TOP);int num = new int8;int word = new int8;int j=0;num0= hou

30、r/10;num1= hour%10;num2= 10;num3= minute/10;num4= minute%10;num5= 10;num6= second/10;num7= second%10;word0=year/1000;word1=year/100%10;word2=year/10%10;word3=year%10;word4=month/10;word5=month%10;word6=day/10;word7=day%10;for(int i=0;i9;i+)if(i=4|i=6|i=8)g.drawRegion(cw, ww*j, 0, ww, hw, Sprite.TRAN

31、S_NONE, ww*(i+j), 0, Graphics.LEFT|Graphics.TOP);j+;if(i=8)g.drawRegion(cw, ww*j, 0, ww, hw, Sprite.TRANS_NONE, 0, 30, Graphics.LEFT|Graphics.TOP);j+;g.drawRegion(cw, ww*j, 0, ww, hw, Sprite.TRANS_NONE, ww, 30, Graphics.LEFT|Graphics.TOP);j+;g.drawRegion(cww, ww*week, 0, wn, hn, Sprite.TRANS_NONE, w

32、n*2, 30, Graphics.LEFT|Graphics.TOP);break;g.drawRegion(ct, wn*wordi, 0, wn, hn, Sprite.TRANS_NONE, wn*(i+j), 0, Graphics.LEFT|Graphics.TOP);for(int i=0;i8;i+) g.drawRegion(ct, wn*numi, 0, wn, hn, Sprite.TRANS_NONE, wn*i+150, 0, Graphics.LEFT|Graphics.TOP);5.2 测试项目本测试计划主要包括对软件一下各个模块的测试:(1) 开始界面的测试;(

33、2) 计时器模式的测试;(3) 定时器模式的测试;(4) 到时完成任务的测试;(5) 取消计时、定时的测试;(6) 重复计时的测试。5.2.1 开始界面的测试在正确的运行程序后,将进入系统的登录界面如下图(图5-1),在开始界面实现了卡通时钟,可以选择退出或者进入定时系统,具体运行结果请看图: 开始界面 选择界面图5-1 开始界面模块经过测试,显示时间正常,按键的功能均正常,计时器和定时器也可以顺利进入,测试结果正常。5.2.2 计时器模式的测试从开始界面选择计时器模式以后进入如下界面,在此界面用户可以设定具体的计时时间,最大为99:59:59,如果用户在分和秒的输入框里输入大于59的数则自动

34、填入59,在框中数字为00的情况下,用户按下则清空。设置时间如果为0则会弹出错误提示。正确设置以后则进入设置任务界面。具体运行情况如下图所示(图5-2): 设置时间 错误提醒 设置任务图5-2 计时器模式界面在计时模式下,用户设置时间时一些小细节测试正确,错误提示正确弹出,在设置任务界面,选择不同的选项界面会有相应的变化,各按钮功能测试正确。计时模式界面测试正确。5.2.3 定时器模式的测试定时模式与计时模式的界面基本类似,使用一个DateField来获取用户设置的时间,如果用户所设置时间低于当前时间一样会有错误提示。时间设置好以后就不会换成另外一种界面,之间进行任务的设置,任务设置的情况同计

35、时模式一样选择不同的选项界面会有相应的变化,具体运行结果如下图(5-3)所示: 定时器模式界面 设置时间图5-3 定时器模式界面如图所示,定时器界面中,当前时间显示正确,错误提醒功能正常。各个按键的功能正常。定时模式界面测试正确。5.2.4 到时完成的测试前面的比较细致的功能设置与界面测试已经结束了,现在这个测试也是相当重要的,不过相对前面的测试要简单的多了,主要测试计时结束以后有没有完成所设置的任务,以及计时过程中的显示是否正确等,具体运行结果如下图(图5-4)所示: 计时器模式 定时器模式 计时结束图5-4 计时开始经测试,计时结果正确,由于时间和精力的关系,小范围时间的定时测试正确。关机、提示备忘功能实现。发短信由于设备有限没有实际验证有些遗憾。各个按键的功能正常,测试正确。5.2.5 取消计时、定时的测试这项测试比较简单,主要是验证在计时或者定时的过程中,按下取消是否达到预想的功能,可以取消计时返回开始界面。经测试结果正常无误。5.2.6 重复计时的测试这项测试也是比较简单的,主要是检查计时结束以后,用户希望重复一次计时。以及定时结束之后,希望明天此时再次生效的时候,可以按下“再次计时”或者“次日提醒”来实现。经测试该功能正常。5.3 测试结果比较遗憾的是没能在真机上进行测试,不知道什么原因不能识别,又由于所持有的移动设备有限,所以没有实现真机测试。本测试以后,主要发现系

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号