银行项目android端架构设计文档

银行项目android端架构设计文档

ID:33142852

大小:134.30 KB

页数:9页

时间:2019-02-21

银行项目android端架构设计文档_第1页
银行项目android端架构设计文档_第2页
银行项目android端架构设计文档_第3页
银行项目android端架构设计文档_第4页
银行项目android端架构设计文档_第5页
资源描述:

《银行项目android端架构设计文档》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、银行项目Android端架构设计文档一、通信图柜外清即是我们的Android机器,它和PC通过串口及USB连接;PC端动态库也类似于HttpRequest/Response的方式通讯,即PC端动态库作为Client端,柜外清作为Server端;二、PC端动态库与柜外清间的通讯约定1、多字节采用小端约定;2、所有字符串统一用UTF-8编码;三、架构设计图逻辑上采用分层架构的设计,协议处理和数据通讯层,不需要修改和维护,只需要关心“请求处理层”及以上的就可以了。请求处理层:处理数据包的数据细节,调用“控制层”的接口,并生成返回包;控制层:此层不会涉及数据包且都是单例,向外提

2、供接口调用;不存在跨层的调用,每层只和相邻的层有联系;对象交互图如下:其中RawHandler是对特殊包的处理,主要是为了兼容比较短小的非协议包;时序图如下:一、目录管理在内置SD卡的根目录新建”Nantian”文件夹,所有文件都以它为主目录,其下的目录有如下:"Picture"、"Video"、"Audio"、"Package"、"Sign"、"Web"、"Download"分别存放相应的文件。二、源码示例程序的包结构图如下:每个模块都有自己相应的包,我们主要关注的是com.nantian.home.handler包及其它模块包;publicclassFileHand

3、lerimplementsPacketHandler{privateFileManagermanager=FileManager.instance();publicFileHandler(){}@Overridepublicvoidregister(){ProtocolManagermanager=ProtocolManager.instance();manager.register(0x4601,this);manager.register(0x4602,this);manager.register(0x4603,this);manager.register(0x46

4、05,this);manager.register(0x4606,this);}@Overridepublicvoidhandle(PacketRequestreq,PacketResponseresp){byte[]data=req.getData();byte[]send=null;switch(req.getId()){case0x4601:send=getFileList(data[0]);break;case0x4602:if(!writeFileData(req)){resp.setErrno((short)0xFF00);}break;case0x4603

5、:deleteFile(req);break;case0x4605:send=getFileInfo(req);if(null==send){resp.setErrno((short)0xFFFF);}break;case0x4606:send=readFileData(req);if(null==send){resp.setErrno((short)0xFFFF);}break;default:break;}resp.write(send);}privatebyte[]getFileList(inttype){String[]list=manager.getFileL

6、ist(FolderType.values()[type]);byte[]data=null;if(null!=list&&list.length>0){StringBuildersb=newStringBuilder();for(inti=0;i

7、yte[]data=req.getData();Stringname=req.getString(2,data[1]);if(0xFF==(req.getByte(0))){if("*.*".equals(name)){manager.deleteAllFile();}else{manager.deleteFile(name);}}else{FolderTypetype=FolderType.values()[data[0]];if("*.*".equals(name)){manager.deleteAllFile(type);}else

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。