CN114363119B - 一种Android系统下C++socket通讯与蜂窝网络同时使用方法 - Google Patents

一种Android系统下C++socket通讯与蜂窝网络同时使用方法 Download PDF

Info

Publication number
CN114363119B
CN114363119B CN202111674745.2A CN202111674745A CN114363119B CN 114363119 B CN114363119 B CN 114363119B CN 202111674745 A CN202111674745 A CN 202111674745A CN 114363119 B CN114363119 B CN 114363119B
Authority
CN
China
Prior art keywords
layer
communication
socket
java
cellular network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111674745.2A
Other languages
English (en)
Other versions
CN114363119A (zh
Inventor
李德来
詹李嘉
邱浩淼
郭境峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Intelligent Ultrasound Imaging Technology And Equipment Innovation Center Co ltd
Original Assignee
Guangdong Intelligent Ultrasound Imaging Technology And Equipment Innovation Center Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangdong Intelligent Ultrasound Imaging Technology And Equipment Innovation Center Co ltd filed Critical Guangdong Intelligent Ultrasound Imaging Technology And Equipment Innovation Center Co ltd
Priority to CN202111674745.2A priority Critical patent/CN114363119B/zh
Publication of CN114363119A publication Critical patent/CN114363119A/zh
Application granted granted Critical
Publication of CN114363119B publication Critical patent/CN114363119B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

本发明涉及通讯技术领域,具体涉及一种Android系统下C++socket通讯与蜂窝网络同时使用方法。本发明采用如下技术方案:在Java层搜索并连接WiFi网络,并在Java层创建socket连接,并将该socket连接的相关数据传递到C++层,使得C++层可与对应的WiFi网络进行socket通讯,此时Java层还可同时通过蜂窝网络进行通讯。本发明的优点在于:通过将C++层创建socket连接的工作移到Java层来做,通过Java的反射,获取该socket连接的FileDescriptor类的数据,并将该socket连接的相关数据传递到C++层,由C++层根据该socket连接的相关数据进行socket通讯,从而使得C++层在进行socket通讯时,Java层可同时进行蜂窝网络通讯。

Description

一种Android系统下C++socket通讯与蜂窝网络同时使用方法
技术领域
本发明涉及通讯技术领域,具体涉及一种Android系统下C++socket通讯与蜂窝网络同时使用方法。
背景技术
在Android系统中,C++层连接socket通讯需要将该进程绑定到特定的WiFi网络,而绑定后导致只能使用该特定的WiFi网络进行通讯,无法同时使用蜂窝网络和WiFi网络进行通讯。具体的,C++层连接socket时,先在Java层获取符合用户请求的网络并连接,接着将进程绑定到该网络,最后在C++层创建socket连接,进行socket通讯。WiFi网络和蜂窝网络可以同时连接不同的两个网络环境,但是当用户利用C++层进行socket通讯时将进程绑定到特定的WiFi网络,进程中所有的网络请求都通过该网络进行发送,无法对网络请求进行不同的分发处理,导致网络请求无法送达蜂窝网络环境而无法正确获取返回数据,导致WiFi网络和蜂窝网络无法同时使用。
发明内容
本发明的目的在于提供一种Android系统下C++socket通讯与蜂窝网络可同时使用方法。
为达到上述目的,本发明采用如下技术方案:一种Android系统下C++socket通讯与蜂窝网络同时使用方法,包括如下步骤:
S01、在Android系统的Java层搜索WiFi网络,并连接到该WiFi网络。
S02、在Java层通过连接的WiFi网络的管理类创建socket连接。
S03、Java层将创建的socket连接的相关数据传递到C++层。
S04、C++层根据Java层传递过来的socket连接的相关数据进行socket通讯,此时Java层同时可以使用蜂窝网络进行通讯。
具体的,步骤S03中,socket连接的相关数据包括通过FileDescriptor获取的数据、所连接网络的IP地址以及端口信息。
具体的,步骤S03中通过FileDescriptor获取的数据,是通过Java层的SocketImpl类获取FileDescriptor类,再通过获取的FileDescriptor获取响应的数据。
具体的,步骤S03中,Java层的SocketImpl类是Java层通过创建的socket连接进行反射获取的。
本发明的优点在于:通过将C++层创建socket连接的工作移到Java层来做,通过Java的反射,获取该socket连接的FileDescriptor类的数据,并将该socket连接的相关数据传递到C++层,由C++层根据该socket连接的相关数据进行socket通讯,从而使得C++层在进行socket通讯时,Java层可同时进行蜂窝网络通讯。
附图说明
附图1为实施例中Android系统下C++socket通讯与蜂窝网络同时使用方法的通讯流程图。
具体实施方式
实施例,参照图1,一种Android系统下C++socket通讯与蜂窝网络同时使用方法,包括如下步骤:
S01、在Android系统的Java层搜索WiFi网络,并连接到该WiFi网络。
S02、在Java层通过连接的WiFi网络的管理类创建socket连接。
S03、Java层通过Java反射获取所创建socket连接的SocketImpl类,再根据SocketImpl类获取FileDescriptor类,最后根据FileDescriptor类获取响应的数据,并将创建的socket连接的通过FileDescriptor获取的数据、所连接网络的IP地址以及端口信息传递到C++层。
S04、C++层根据Java层传递过来的socket连接的相关数据通过FileDescriptor类、所连接WiFi网络的IP地址及其对应的端口与socket连接进行socket通讯,此时Java层同时可以使用蜂窝网络进行通讯。
在本实施例中,将C++创建socket连接的工作转移到Java层进行,在Java层搜索目标WiFi网络,并创建socket连接,然后通过Java层的反射,获取该socket连接的SocketImpl和FileDescriptor,并将FileDescriptor获取的数据、所连接目标网络的IP地址和端口信息传递到C++层,C++层通过FileDescriptor、IP地址和对应的端口进行socket通讯,此时Java层可同时进行蜂窝网络的通讯。
其中,socket是一种对网络中不同主机上的应用进程之间进行双向通讯的端点上的抽象类,其相当于网络上进程通讯的一端,提供了应用层进程利用网络协议交换数据的机制,从位置上说,socket向上连接应用进程,向下连接网络协议栈,是应用程序通过网络协议进行通讯和交互的接口。FileDescriptor则作为文件描述符类的实例,用于表示打开的文件、打开的套接字或其他字节源或汇,其实际用途是创建一个文件输入流或文件输出流来包含它,实现与网络另一端的双向数据通讯。
当然,以上仅为本发明较佳实施方式,并非以此限定本发明的使用范围,故,凡是在本发明原理上做等效改变均应包含在本发明的保护范围内。

Claims (4)

1.一种Android系统下C++socket通讯与蜂窝网络同时使用方法,其特征在于,包括如下步骤:
S01、在Android系统的Java层搜索WiFi网络,并连接到该WiFi网络;
S02、在Java层通过连接的WiFi网络的管理类创建socket连接;
S03、Java层将创建的socket连接的相关数据传递到C++层;
S04、C++层根据Java层传递过来的socket连接的相关数据进行socket通讯,此时Java层可以同时使用蜂窝网络进行通讯。
2.根据权利要求1所述的一种Android系统下C++socket通讯与蜂窝网络同时使用方法,其特征在于:步骤S03中,socket连接的相关数据包括通过FileDescriptor获取的数据、所连接网络的IP地址以及端口信息。
3.根据权利要求2所述的一种Android系统下C++socket通讯与蜂窝网络同时使用方法,其特征在于:所述步骤S03中通过FileDescriptor获取的数据,是通过Java层的SocketImpl类获取FileDescriptor类,再通过获取的FileDescriptor获取响应的数据。
4.根据权利要求3所述的一种Android系统下C++socket通讯与蜂窝网络同时使用方法,其特征在于:所述步骤S03中,Java层的SocketImpl类是Java层通过创建的socket连接进行反射获取的。
CN202111674745.2A 2021-12-31 2021-12-31 一种Android系统下C++socket通讯与蜂窝网络同时使用方法 Active CN114363119B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111674745.2A CN114363119B (zh) 2021-12-31 2021-12-31 一种Android系统下C++socket通讯与蜂窝网络同时使用方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111674745.2A CN114363119B (zh) 2021-12-31 2021-12-31 一种Android系统下C++socket通讯与蜂窝网络同时使用方法

Publications (2)

Publication Number Publication Date
CN114363119A CN114363119A (zh) 2022-04-15
CN114363119B true CN114363119B (zh) 2024-04-26

Family

ID=81104641

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111674745.2A Active CN114363119B (zh) 2021-12-31 2021-12-31 一种Android系统下C++socket通讯与蜂窝网络同时使用方法

Country Status (1)

Country Link
CN (1) CN114363119B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6182144B1 (en) * 1997-12-12 2001-01-30 Intel Corporation Means and method for switching between a narrow band communication and a wide band communication to establish a continuous connection with mobile computers
US6401109B1 (en) * 1996-11-18 2002-06-04 International Business Machines Corp. Virtual socket for JAVA interprocess communication
CN102413531A (zh) * 2011-11-30 2012-04-11 上海顶竹通讯技术有限公司 多模终端的网络切换装置及方法
IL221667A0 (en) * 2012-08-27 2012-12-31 Univ Ben Gurion Network selection and traffic offloading module
CN107809807A (zh) * 2017-10-20 2018-03-16 广州小鹏汽车科技有限公司 一种Android中控大屏与移动终端的通信方法及装置
CN112733158A (zh) * 2021-04-06 2021-04-30 北京邮电大学 Android系统漏洞检测方法、电子设备及存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6401109B1 (en) * 1996-11-18 2002-06-04 International Business Machines Corp. Virtual socket for JAVA interprocess communication
US6182144B1 (en) * 1997-12-12 2001-01-30 Intel Corporation Means and method for switching between a narrow band communication and a wide band communication to establish a continuous connection with mobile computers
CN102413531A (zh) * 2011-11-30 2012-04-11 上海顶竹通讯技术有限公司 多模终端的网络切换装置及方法
IL221667A0 (en) * 2012-08-27 2012-12-31 Univ Ben Gurion Network selection and traffic offloading module
CN107809807A (zh) * 2017-10-20 2018-03-16 广州小鹏汽车科技有限公司 一种Android中控大屏与移动终端的通信方法及装置
CN112733158A (zh) * 2021-04-06 2021-04-30 北京邮电大学 Android系统漏洞检测方法、电子设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WIFI与GPRS网络在远程医疗中的应用与研究;孙勇;《中国优秀硕士学位论文全文数据库 (信息科技辑)》;20130615;I136-767 *

Also Published As

Publication number Publication date
CN114363119A (zh) 2022-04-15

Similar Documents

Publication Publication Date Title
CN113485823A (zh) 数据传输方法、装置、网络设备、存储介质
US20050209842A1 (en) Remote USB port system and method
CN105491123A (zh) 容器间通信方法及装置
US8839403B2 (en) Local proxy system and method
CN106534178B (zh) RapidIO网络通用套接字的实现系统及方法
CN108287804B (zh) 一种i2c控制器驱动方法及系统
WO2014206321A1 (zh) 蓝牙通信方法及蓝牙通信设备
US20180262560A1 (en) Method and system for transmitting communication data
WO2014183556A1 (zh) 应用程序的处理方法和装置
CN105389120A (zh) 支持通过活动消息的rma api
CN114201317B (zh) 数据传输方法、装置、存储介质及电子设备
CN114363119B (zh) 一种Android系统下C++socket通讯与蜂窝网络同时使用方法
US20130332504A1 (en) Station, target apparatus, initiator apparatus, communication system, and communication method
CN106850554B (zh) 双系统定向连接的方法和装置
CN102025751B (zh) 一种远程访问数据的方法、装置和系统
CN101808105B (zh) 一种访问数据的方法、装置和系统
TWI722514B (zh) Ic韌體更新方法
CN107302522B (zh) 基于USB的SpaceWire网络即插即用基础协议
Shim et al. Compatibility enhancement and performance measurement for socket interface with PCIe interconnections
CN112422485A (zh) 一种传输控制协议的通信方法及装置
CN107277107A (zh) 应用调试方法、装置及系统
WO2016015614A1 (zh) 一种密文发送、传输的方法、移动终端及通信基站
CN101764877A (zh) 一种两部手机互传数据的方法
CN112333069B (zh) 总线虚拟化通信方法
TWI345711B (zh)

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20240223

Address after: Room 513, Building 3, Longjiang Road, Shantou City, Guangdong Province, 515000

Applicant after: Guangdong Intelligent Ultrasound Imaging Technology and Equipment Innovation Center Co.,Ltd.

Country or region after: China

Address before: No.77 Jinsha Road Shantou Guangdong 515000

Applicant before: Shantou Ultrasonic Instrument Research Institute Co.,Ltd.

Country or region before: China

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant