- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
仅供专利申请使用
第 PAGE 1 页 共 NUMPAGES 8 页 confidential
专利申请技术交底书
一、 基本信息
发明名称:高效网络通信框架方案
二、 技术信息
1. 所属技术领域
在移动开发中应用程序通常都会使用网络,通过网络和服务器进行信息交流。通常使用HTTP协议来和服务器进行通信,整个通信过程实现繁杂且由于通信接口的不断增加会导致代码臃肿难以维护。并且通过Java层的方法进行网络通信效率会比较底下。
基于上述分析,本方案提出来一套优化的通信框架,使用该通信框架后使得通信接口简洁易于维护。同时通信核心模块使用C语言实现,大大提高了通信执行的效率,使得通信过程变得更加高效快速。该通信框架中通过合理的设计了异常处理模块,使得通信过程中的异常信息能够得到实时有效的反馈和上报。
同时由于C语言的跨平台型使得本方案能够应用于Android和IOS等移动平台上。快平台型使得本方案一次开发能够多次使用的目的。大大提高了本方案的实用性。
2. 名词解释
JNI:JNI是Java Native Interface的缩写,它提供了若干的API实现了Java和其他语言的通信(主要是CC++)。从Java1.1开始,JNI标准成为java平台的一部分,它允许Java代码和其他语言写的代码进行交互。
JVM:JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。
IP地址:IP地址是指互联网协议地址(英语:Internet Protocol Address,又译为网际协议地址),是IP Address的缩写。IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。目前还有些ip代理软件,但大部分都收费。
端口:端口是英文port的意译,可以认为是设备与外界通讯交流的出口。端口可分为虚拟端口和物理端口,其中虚拟端口指计算机内部或交换机路由器内的端口,不可见。
Json:JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、C#、Java、JavaScript、Perl、Python等)。
3. 本发明技术方案详细描述,必要时应结合附图进行说明
本方案主要分为4个模块。其一是移动端的数据组装模块;其二是通信核心层,是通过C语言代码编写的;其三是通信异常模块,该模块主要功能是监听通信过程是否产生异常,如果产生异常行为将会通知移动端或服务器端程序。其四是服务器端的处理模块。
本方案的核心通信模块是通过C语言进行开发的。C语言开发出来的通信模块效率会明显比JAVA层的高。虽然一定程度上增加了开发的难度,但是却带来了速度的提升。
本方案的具体实施框架如下图所示:
下面将会详细描述相关的实现步骤和具体的实现方法。
移动端的数据封装,然后将封装好的数据传递给C语言的核心通信模块。不同语言和C语言的通信方式会有一定的差异。本方案中主要列举常见的2种移动端平台Android和IOS平台。根据不同的平台其数据传递到C核心通信模块的方式是有一定的差异性的。下面详细描述2个平台是如何将数据传递到C核心通信模块的。
本步骤中的移动端数据的封装其实就是将数据封装成相应的类,核心目的是为了方便后面将数据传递到C语言层进行处理。也就是将关联性很大的数据组装成一个类,然后后面使用的时候直接把这个类传递给C语言层进行处理。
所组装的数据主要是移动端需要传递给服务端的数据结构,将需要传递给服务端的数据通过适当的方式传递给核心通信模块,核心通信模块会将传递过来的数据重新打包后传递给服务器端。
为了方便理解,传递数据结构举个列子类说明一下:
例如为了描述人的几个属性,我们可以把这些属性全部封装到一个类中如下:
Class Person{
String name;
Int age;
}
上述代码意思就是申明一个Person类,其中有2个属性,一个是name名字属性,一个是age年龄属性。通过这种类封装后,后面直接将Person类传递给C语言层就能够获取到name和age属性了。这样就能够大大降低传递给C语言层的参数数量。
Android:
在Android平台上提供了JNI技术来实现Java和C语言通信。此处JAVA层的数据结构传递到C语言层,由于C的数据结构和JAVA的数据结构是有一定的差异性的
您可能关注的文档
- 复件 新农业事业部员工日常管理制度.docx
- 岗位说明书(总经理).doc
- 高成创投培训-《私募基金操作实务》 .pdf
- 高等学校教师职业道德规范1.pdf
- 高家堡四期风电机组技术协议0827.doc
- 高家堡四期风电机组商务合同0827.doc
- 高家沟UP1500-97机组DO卡件供电改造方案.pdf
- 各类开瓶器使用方法大全.doc
- 工程车辆租赁和使用管理办法.pdf
- 工程项目管理培训(1).ppt
- 浙江省温州市浙南名校联盟2025-2026学年高一上学期期中联考数学试题含解析.docx
- 26高考数学提分秘诀重难点34圆锥曲线中的定点、定值、定直线问题(举一反三专项训练)(全国通用)(含解析).docx
- 26高考数学提分秘诀重难点35概率与统计的综合问题(举一反三专项训练)(全国通用)(含解析).docx
- 26高考数学提分秘诀重难点31圆锥曲线中的切线与切点弦问题(举一反三专项训练)(全国通用)(含解析).docx
- 26高考数学提分秘诀重难点30圆锥曲线中的弦长问题与长度和、差、商、积问题(举一反三专项训练)(全国通用)(含解析).docx
- 26高考数学提分秘诀重难点29巧解圆锥曲线的离心率问题(举一反三专项训练)(全国通用)(含解析).docx
- 26高考数学提分秘诀重难点28直线与圆的综合(举一反三专项训练)(全国通用)(含解析).docx
- 寡核苷酸药物重复给药毒性研究技术指南.docx
- 重组溶瘤腺病毒生产质量管理标准.docx
- 26高考数学提分秘诀重难点27直线与圆中常考的最值与范围问题(举一反三专项训练)(全国通用)(含解析).docx
最近下载
- 电气工程和自动化专业大学生生涯发展展示(电气工程工程师).pptx VIP
- 小儿腹股沟疝PPT课件.pptx VIP
- 锡球焊接供球结构及锡球焊接装置.pdf VIP
- 自考制单结汇与报关实务复习资料.doc VIP
- 半导体设备行业深度:AI芯片快速发展,看好国产算力带动后道测试%26先进封装设备需求-250921.pdf VIP
- 中信建投-医药生物行业-寻找新增量及整合机会-241211-136页.pdf VIP
- 高校网球运动的发展现状与对策.docx VIP
- power up 1 小学英语单词表.pdf VIP
- 石油产品运动粘度测量不确定度的评估实例.pdf VIP
- “三高”共管规范化诊疗中国专家共识(2024版)解读.pptx VIP
原创力文档


文档评论(0)