- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于J2ME技术短信智能回复系统设计与实现
基于J2ME技术短信智能回复系统设计与实现
摘要:首先介绍了J2ME体系结构,探讨了短信智能回复系统的功能设计和关键技术,系统整体上参照MVC模式设计,使用了J2ME高级界面API、多线程、永久记录存储、短消息分组等多项技术实现;最后给出了系统实例仿真,并对该系统的应用进行了总结。
关键词:J2ME; 多线程; 永久记录存储; 智能回复
中图分类号:TP311文献标志码:A
文章编号:1001-3695(2007)12-0263-03
由于短信业务具有快捷方便及良好的交互性等特点,仍在快速发展,业内人士甚至把它喻为是继报纸、广播、电视及互联网之后的“第五媒体”。为了解决当用户处在不方便使用手机的情况下实现短信的智能回复这一问题,本文在J2ME的技术下,参照MVC 模式,使用J2ME 高级界面API、多线程、永久记录存储(RMS)和短消息分组等多项技术实现了短信智能回复系统。
1J2ME的结构体系
J2ME[1]的体系结构[2]如图1所示。最底层是嵌入式设备的操作系统。支持J2ME的Java虚拟机尺寸很小,一般数量级在千字节左右,所以称为KVM[3](kilobyte virtual machine)。在KVM之上,由CLDC[4](connected limited device configuration)提供了一些底层的API,如I/O接口等。最高层是MIDP[5](mobile information device profile),它为移动设备提供了包含用户界面类、持久存储功能和网络功能的高级API接口,同时它也包括了一个供用户下载到终端设备的标准运行环境。
基于MIDP和CLDC的MID(mobile information device)程序MIDlet可以在不同的MID之间移植。以下的短信智能回复系统就是基于MIDlet程序框架开发的。
2系统设计
所谓短信智能回复系统是指用户预先设定的一条或多条消息,在手机收到短信时,能根据不同人发的信息实现相应信息的自动回复。
2.1设计思想
为了实现给不同的人回复相应的信息,必须先对手机中存储的人员名单进行分组(如“爸爸”“妈妈”同为“家人”组),然后对群组中要回复的人员名单进行短信预设定。用户一旦收到短信,便在所有的组中进行查询。如果查到有要回复的信息,则立即进行回复;否则不做任何动作。具体操作如下:
a)人员名单分组。主要包括群组的添加、更改以及删除。
b)设定自定义短信并分组存储。对不同的回复对象设定相应的短信内容并存储于不同的群组,用于告诉对方该用户的状态信息。
c)识别接收短信号码。当收到新短信时,自动获取发送方的地址(号码)并进行识别。首先判断该号码的长度是否大于5。如果是,系统将在分组中查询有无该号码,若有,则找出相应的预设短信。对于1860、12580等广告信息,因为其特点是位数比普通用户少,所以无须进行号码查询,系统可直接设置对五位数以下的号码不予回复。
d)自动发送自定义短信。对所需回复的短信,发送该号码所在组中相应的预设短信。
系统整体上参照MVC 模式设计,将界面、数据、控制分为不同的模块,分别设计,独立开发。
2.2群组数据管理设计
群组信息和预设信息均需要保留,为此本系统采用RMS来处理数据持久化问题。RMS[6]是一个文本格式的数据库系统,它提供记录存储和记录检索,是一个包含了记录集的文件,等同于数据库中的表,但并不是严格意义上的数据库。
本系统需要存储的主要数据如下:
a)群组以及该群组对应的预设短信。
b)群组中的人员,包括名字和电话号码。
可设置两个实体类来保存上述信息:
a)群组类。Zu包括两个字段。String name表示改群组的名称;String content表示改群组对应的短信内容。
b)人员对应类。People也包括两个字段。String name表示人的名字;String num表示电话号码。
因为RMS的数据持久化实现很轻量级,并未实现对象的序列化,所以添加接口PoInterface:
public interface PoInterface {
byte[] serialize(Object o);
Object deserialize(byte[] data);
}
只要有需要序列化的类实现该接口,就可以实现对象的?┐娲?。
本系统主要是在RMS的io包类的基础上编写的一个FileUse类来实现相关的数据操作。该类中定义一个字符串常量private static final String
原创力文档


文档评论(0)