[发明专利]一种在Android上实现Socket通讯服务共享的方法有效
申请号: | 201110389055.2 | 申请日: | 2011-11-30 |
公开(公告)号: | CN102520936B | 公开(公告)日: | 2017-02-08 |
发明(设计)人: | 郑振贵;许宁;吕瑞明;林剑棍;王文欣 | 申请(专利权)人: | 厦门雅迅网络股份有限公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 泉州市诚得知识产权代理事务所(普通合伙)35209 | 代理人: | 方惠春 |
地址: | 361000 福建*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 android 实现 socket 通讯 服务 共享 方法 | ||
1.一种在Android上实现Socket通讯服务共享的方法,其特征在于,包括:
创建Socket管理模块的步骤,将网络层的所有操作封装为接口,包括Socket的建立和连接、中间管道数据流的创建,以及Socket网络数据的接收和发送;
创建独立线程以运行Socket管理模块的步骤,通过Handler进行线程间的消息通信,并且采用线程消息队列管理多个服务的请求;
将Socket管理模块封装为系统的服务组件的步骤,该服务组件提供服务的创建、销毁、绑定和解绑的接口,以管理多个调用者对Socket服务的共享使用;
将Socket服务所具有的对外接口实现为Android的IBinder对象的步骤,同一进程下的本地调用者通过绑定Socket服务来获取IBinder对象本身,进而访问Socket服务的对外接口,实现Socket通讯服务共享;
采用Android接口描述语言AIDL实现IBinder远程代理的步骤,通过进程间的通信和解析,不同进程下的远程调用者在绑定Socket服务后获取IBinder对象代理,进而访问Socket服务的对外接口,实现Socket通讯服务共享。
2.根据权利要求1所述的在Android上实现Socket通讯服务共享的方法,其特征在于:所述将Socket管理模块封装为系统的服务组件的步骤中,是通过重载系统服务类提供的各接口来实现对Socket管理的服务封装。
3.根据权利要求1所述的在Android上实现Socket通讯服务共享的方法,其特征在于:所述创建独立线程以运行Socket管理模块的步骤中,采用线程消息队列管理多个服务的请求,具体是通过消息的识别字段和附带数据字段描述业务接口的类别和传入参数,对循环消息队列的处理又将消息的相关字段转化为对指定业务的调用。
4.根据权利要求1所述的在Android上实现Socket通讯服务共享的方法,其特征在于:将Socket服务所具有的对外接口实现为Android的IBinder对象的步骤中,IBinder对象实现的具体业务接口根据特定规则转化为对应的消息数据,通过Handler进行发送,并由Socket线程进行解析处理。
5.根据权利要求1所述的在Android上实现Socket通讯服务共享的方法,其特征在于:所述采用Android接口描述语言AIDL实现IBinder对象远程代理,来达到不同进程间Socket通讯服务共享,具体是通过AIDL接口定义文件及其代理对象,使得不同进程的客户端能够了解远程服务的接口描述,并且利用代理对象获得远程服务的调用方式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门雅迅网络股份有限公司,未经厦门雅迅网络股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110389055.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:双气流风力发电机
- 下一篇:电控变几何涡轮增压器