CN105260250B - 一种Linux系统与Android系统的双系统通信装置 - Google Patents
一种Linux系统与Android系统的双系统通信装置 Download PDFInfo
- Publication number
- CN105260250B CN105260250B CN201510572464.4A CN201510572464A CN105260250B CN 105260250 B CN105260250 B CN 105260250B CN 201510572464 A CN201510572464 A CN 201510572464A CN 105260250 B CN105260250 B CN 105260250B
- Authority
- CN
- China
- Prior art keywords
- format
- request data
- socket
- unit
- conversion unit
- 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
Links
Landscapes
- Computer And Data Communications (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明公开了一种Linux系统与Android系统的双系统通信装置,第一格式转换单元将Android系统的APP应用程序发送的第一请求数据转化为第一格式再由第一Socket单元以Socket报文形式发送,第二Socket单元读取第一请求数据,经第二格式转换单元转化为第二格式后由Linux系统的进程服务根据进行相应处理得到第二处理结果;第二处理结果经第二格式转换单元转化为第二格式,由第二Socket单元以Socket报文形式将其发送,第一Socket单元读取第二处理结果,再由第一格式转换单元转化为第一格式发给Android系统的APP应用程序进行显示,本发明通信速度快捷,方便移植,扩展性、可靠性好。
Description
技术领域
本发明涉及智能终端通信领域,具体涉及一种Linux系统与Android系统的双系统通信装置。
背景技术
随着智能化、物联网时代的到来,智能家居、智能手机、智能路由等智能终端日益普及,走进千家万户。
Google公司推出的Android(安卓)是一个以Linux为基础的开源移动设备操作系统,其主要通信方式为Binder通信,Binder通信采用同步方式,效率高,Binder通信是通过Linux的Binder Driver来实现的。由于Android免费开放,系统集成性高,被广泛的运用在智能手机、平板电脑等各类多媒体智能终端上。
目前,除了采用Android技术的智能移动终端产品之外,还有很大一部分智能移动终端产品采用的是Android之外的技术,比如Linux系统。Liunx系统通信的方式主要有Socket、命名管道、消息队列、信号量和共享内存方式。而由于通信方式的不同,Android系统和Linux系统间的相互通信就会受到阻碍。
发明内容
本发明所要解决的技术问题是由于通信方式的不同,Android系统和Linux系统间的相互通信受阻的问题。
为了解决上述技术问题,本发明所采用的技术方案是提供一种Linux系统与Android系统的双系统通信装置,包括Android系统的Service服务和Linux系统的Mpa进程服务,所述Service服务接收Android系统的APP应用程序发送的第一请求数据,并设置有第一格式转换单元和第一Socket单元;所述Mpa进程服务接收Linux系统的进程服务发送的第二请求数据,并设置有第二格式转换单元和第二Socket单元;
所述第一格式转换单元将第一请求数据或者对第二请求数据的进行处理的第一处理结果转化为第一格式,所述第一Socket单元将第一格式的第一请求数据或者第一处理结果以Socket报文形式发送给所述第二Socket单元,所述第二Socket单元读取Socket报文的第一请求数据或者第一处理结果,所述第二格式转换单元将读取的第一请求数据或者第一处理结果转换为第二格式,Linux系统的进程服务根据第二格式的第一请求数据进行相应处理得到第二处理结果或者接收第一处理结果并显示;
所述第二格式转换单元将第二处理结果或者第二请求数据转化为第二格式,所述第二Socket单元将第二格式的第二处理结果或者第二请求数据以Socket报文形式发送给所述第一Socket单元,所述第一Socket单元读取Socket报文的第二处理结果或者第二请求数据,第一格式转换单元将读取的第二处理结果或者第二请求数据转化为第一格式,Android系统的APP应用程序接收第二处理结果并显示或者根据第一格式的第二请求数据进行相应处理得到第一处理结果。
在上述一种Linux系统与Android系统的双系统通信装置中,所述第一格式为GSON字符串格式,所述第二格式为JSON字符串格式。
在上述一种Linux系统与Android系统的双系统通信装置中,在所述第一格式转换单元和所述第一Socket单元之间设有第一加密单元和第一解密单元;在所述第二格式转换单元和所述第二Socket单元之间设有分别与第一加密单元和第一解密单元对应的第二解密单元和第二加密单元;
所述第一加密单元对由第一格式转换单元转化为第一格式的第一请求数据或者第一处理结果按照预设格式进行加密;
所述第二解密单元对由第二Socket单元从Socket报文中读取的第一请求数据或者第一处理结果以预设格式进行解密;
所述第二加密单元对由第二格式转换单元转化为第二格式的第二处理结果或者第二请求数据按照预设格式进行加密;
所述第一解密单元对由第一Socket单元从Socket报文中读取的第二处理结果或者第二请求数据以预设格式进行解密。
在上述一种Linux系统与Android系统的双系统通信装置中,所述预设格式为Base64方式。
本发明通过充分利用Android系统自带的Service服务和GSON算法以及Linux系统的Mpa进程服务和开源的JSON算法,并采用C/S模式和Socket通信方式进行数据传输,实现了在多媒体终端Linux与Android双系统间的通信,不仅保证低成本,结构简单,实施性高,而且通信速度快,移植性强,扩展性、可靠性好。
附图说明
图1为本发明提供的一种Linux系统与Android系统的双系统通信装置结构框图;
图2为本发明提供的一种Linux系统与Android系统的双系统通信装置的工作流程图。
具体实施方式
本发明充分利用Android系统中提供的Service服务和Linux系统中提供的Mpa进程服务,并采用C/S(Client/Server)模式,通过Socket通信方式实现Android系统与Linux系统双系统间的通信。其中,当Android系统作为Client端时,Linux系统则作为Server端;当Android系统作为Server端时,则Linux系统作为Client端,两系统可随时根据数据传输的需要进行改变,来实时保证通信的准确性。
下面结合说明书附图和具体实施例对本发明做出详细的说明。
如图1所示,本发明提供了一种Linux系统与Android系统的双系统通信装置,该装置的应用环境为Linux系统与Android系统双系统终端,具体包括Android系统的Service服务10和Linux系统的Mpa进程服务20;
Service服务10设置有第一格式转换单元11和第一Socket单元12,用于为Android系统中的各个应用程序提供与Linux系统终端进行通信的服务,即Service服务10接收Android系统的APP应用程序发送的第一请求数据,并通过Mpa进程服务20或Linux系统其他进程服务对该第一请求数据进行与请求相应的处理,得到第二处理结果;
Mpa进程服务20设置有第二格式转换单元21和第二Socket单元22,用于为Linux系统中各个进程提供与Android系统终端进行通信的服务,即Mpa进程服务20接收Linux系统的进程服务发送的第二请求数据,并通过Android系统的APP应用程序对该第二请求数据进行与请求相应的处理,得到第一处理结果。
第一格式转换单元11将第一请求数据或者对第二请求数据的进行处理的第一处理结果转化为第一格式,第一Socket单元12将第一格式的第一请求数据或者第一处理结果以Socket报文形式发送给第二Socket单元22,第二Socket单元22监听指定端口的Socket报文,并读取Socket报文中的第一请求数据或者第一处理结果,再由第二格式转换单元21将读取的第一请求数据或者第一处理结果转换为第二格式,Linux系统的服务进程(Mpa进程服务20和其他进程服务)根据第二格式的第一请求数据进行相应处理得到第二处理结果或者接收第一处理结果并显示,其中,要将第二处理结果返回Android系统端;
第二格式转换单元21将第二处理结果或者第二请求数据转化为第二格式,第二Socket单元22将第二格式的第二处理结果或者第二请求数据以Socket报文形式发送给第一Socket单元12,第一Socket单元12监听指定端口的Socket报文,并读取Socket报文中的第二处理结果或者第二请求数据,第一格式转换单元11将读取的第二处理结果或者第二请求数据转化为第一格式,Android系统的APP应用程序接收第二处理结果并显示或者根据第一格式的第二请求数据进行相应处理得到第一处理结果,再将第一处理结果返回Linux系统端。
以上便完成了一次Linux系统与Android系统间的通信,其中,第一格式为GSON字符串格式,第二格式为JSON字符串格式。
在本发明中,在第一格式转换单元11和第一Socket单元12之间设有第一加密单元和第一解密单元;在第二格式转换单元21和第二Socket单元22之间设有分别与第一加密单元和第一解密单元对应的第二解密单元和第二加密单元;其中:
第一加密单元对由第一格式转换单元转化11为第一格式的第一请求数据或者第一处理结果按照预设格式进行加密;
第二解密单元对由第二Socket单元22从Socket报文中读取的第一请求数据或者第一处理结果以预设格式进行解密;
第二加密单元对由第二格式转换单元21转化为第二格式的第二处理结果或者第二请求数据按照预设格式进行加密;
第一解密单元对由第一Socket单元12从Socket报文中读取的第二处理结果或者第二请求数据以预设格式进行解密。
例如第一加密单元和第二加密单元别对Android系统和Linux系统发出的数据以Base64方式进行加密;则第一解密单元和第二解密单元分别对Android系统和Linux系统对接收的Socket报文中的数据以Base64方式进行解密处理。
图2为本发明提供的一种Linux系统与Android系统的双系统通信装置的工作流程图,下面以Android系统的APP应用程序向Linux系统进程服务发送请求为例,对其通信过程进行详细说明,具体如下:
步骤S101、Android系统的APP应用程序发起相应的请求,Android系统的应用程序通过AIDL接口注册Service服务,然后向Service服务发送请求数据;
步骤S102、Android系统的Service服务收到APP应用程序发送的请求数据后,会将数据转换成GSON字符串格式;
步骤S103、将GSON字符串格式的请求数据按照Base64方式进行加密;
步骤S104、将加密后的请求数据通过Socket方式进行打包,以Socket报文形式发送到Liunx系统端;
步骤S105、Linux系统端的Mpa进程服务监听到Socket端口的Socket报文,接收并读取到Socket报文的请求数据;
步骤S106、将从Socket报文中读取的请求数据按照Base64方式进行解密处理;
步骤S107、将解密后的请求数据按照JSON字符串格式提取出相应的字段内容;
步骤S108、Mpa进程服务对根据相应的字段内容在自身模块内或者转发给其他进程服务进行相应处理,得到请求处理结果;
步骤S109、Mpa进程服务将请求处理结果转换成JSON字符串格式;
步骤S110、将JSON字符串格式的请求处理结果按照Base64方式进行加密;
步骤S111、将加密后的请求处理结果以Socket方式进行打包,以Socket报文形式发送给Android系统端;
步骤S112、Android端的Service服务监听到Socket端口的Socket报文,接收并读取到Socket报文的请求处理结果;
步骤S113、将读取到Socket报文的请求处理结果按照Base64方式进行解密处理;
步骤S114、将解密后的请求处理结果转换成JSON字符串格式,并提取出所需要的字段内容,并返回给自身系统的APP应用程序,来做对应的处理。
显然本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (4)
1.一种Linux系统与Android系统的双系统通信装置,包括Android系统的Service服务和Linux系统的Mpa进程服务,其特征在于,所述Service服务设置有第一格式转换单元和第一Socket单元,用于接收Android系统的APP应用程序发送的第一请求数据,并通过Mpa进程服务对该第一请求数据进行处理,得到第二处理结果;所述Mpa进程服务设置有第二格式转换单元和第二Socket单元,用于接收Linux系统的进程服务发送的第二请求数据,并通过Android系统的APP应用程序对该第二请求数据进行处理,得到第一处理结果;
所述第一格式转换单元将第一请求数据或者第一处理结果转化为第一格式,所述第一Socket单元将第一格式的第一请求数据或者第一处理结果以Socket报文形式发送给所述第二Socket单元,所述第二Socket单元读取Socket报文的第一请求数据或者第一处理结果,所述第二格式转换单元将读取的第一请求数据或者第一处理结果转换为第二格式,Linux系统的进程服务根据第二格式的第一请求数据进行相应处理得到第二处理结果或者接收第一处理结果并显示;
所述第二格式转换单元将第二处理结果或者第二请求数据转化为第二格式,所述第二Socket单元将第二格式的第二处理结果或者第二请求数据以Socket报文形式发送给所述第一Socket单元,所述第一Socket单元读取Socket报文的第二处理结果或者第二请求数据,第一格式转换单元将读取的第二处理结果或者第二请求数据转化为第一格式,Android系统的APP应用程序接收第二处理结果并显示或者根据第一格式的第二请求数据进行相应处理得到第一处理结果。
2.如权利要求1所述的一种Linux系统与Android系统的双系统通信装置,其特征在于,所述第一格式为GSON字符串格式,所述第二格式为JSON字符串格式。
3.如权利要求1所述的一种Linux系统与Android系统的双系统通信装置,其特征在于,在所述第一格式转换单元和所述第一Socket单元之间设有第一加密单元和第一解密单元;在所述第二格式转换单元和所述第二Socket单元之间设有分别与第一加密单元和第一解密单元对应的第二解密单元和第二加密单元;
所述第一加密单元对由所述第一格式转换单元转化为第一格式的第一请求数据或者第一处理结果按照预设格式进行加密;
所述第二解密单元对由所述第二Socket单元从Socket报文中读取的第一请求数据或者第一处理结果以预设格式进行解密;
所述第二加密单元对由所述第二格式转换单元转化为第二格式的第二处理结果或者第二请求数据按照预设格式进行加密;
所述第一解密单元对由所述第一Socket单元从Socket报文中读取的第二处理结果或者第二请求数据以预设格式进行解密。
4.如权利要求3所述的一种Linux系统与Android系统的双系统通信装置,其特征在于,所述预设格式为Base64方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510572464.4A CN105260250B (zh) | 2015-09-10 | 2015-09-10 | 一种Linux系统与Android系统的双系统通信装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510572464.4A CN105260250B (zh) | 2015-09-10 | 2015-09-10 | 一种Linux系统与Android系统的双系统通信装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105260250A CN105260250A (zh) | 2016-01-20 |
CN105260250B true CN105260250B (zh) | 2018-08-03 |
Family
ID=55099952
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510572464.4A Active CN105260250B (zh) | 2015-09-10 | 2015-09-10 | 一种Linux系统与Android系统的双系统通信装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105260250B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110311966B (zh) * | 2016-03-15 | 2023-02-17 | 广州视睿电子科技有限公司 | 融合PC系统和android系统的双系统通信方法和系统 |
CN106412466B (zh) * | 2016-07-18 | 2018-05-22 | 国家新闻出版广电总局广播科学研究院 | 一种智能电视系统 |
CN106776398A (zh) * | 2016-12-20 | 2017-05-31 | 广州视源电子科技股份有限公司 | 双系统双向控制的方法和装置 |
CN106850554B (zh) * | 2016-12-22 | 2019-12-17 | 广州视源电子科技股份有限公司 | 双系统定向连接的方法和装置 |
CN108712415B (zh) * | 2018-05-17 | 2021-08-20 | 深圳市灵星雨科技开发有限公司 | 一种基于安卓系统的数据传输方法 |
CN109618016B (zh) * | 2018-12-10 | 2022-02-22 | 深圳市网心科技有限公司 | 一种dns请求的发送处理方法、相关方法及相关装置 |
CN112015157B (zh) * | 2019-05-29 | 2022-04-15 | 比亚迪股份有限公司 | 基于Linux的车机交互方法、装置、计算机设备及存储介质 |
CN112069123B (zh) * | 2019-06-10 | 2024-05-28 | 海信视像科技股份有限公司 | 用于保障双系统之间通信稳定的方法及显示设备 |
CN111195919B (zh) * | 2019-12-13 | 2021-06-01 | 上海捷勃特机器人有限公司 | 一种机器人示教平台及其架构方法 |
CN112269604B (zh) * | 2020-11-11 | 2021-06-01 | 北京技德系统技术有限公司 | 在Linux上兼容运行Android应用的窗口交互方法及装置 |
CN112988675B (zh) * | 2021-03-12 | 2023-02-21 | 麒麟软件有限公司 | 一种基于Linux文件管理器的Android文件分类显示方法 |
CN113204307A (zh) * | 2021-05-06 | 2021-08-03 | 技德技术研究所(武汉)有限公司 | 一种在Linux上兼容运行Android系统的文件发送方法及装置 |
CN113656196B (zh) * | 2021-08-16 | 2024-02-27 | 深圳技德应用技术有限公司 | 一种Linux兼容Android的应用间传送文件方法及装置 |
CN113791920A (zh) * | 2021-11-18 | 2021-12-14 | 北京鲸鲮信息系统技术有限公司 | 双系统通信方法、装置、电子设备及计算机可读存储介质 |
CN113821363B (zh) * | 2021-11-25 | 2022-03-01 | 北京鲸鲮信息系统技术有限公司 | 一种进程间通讯方法及系统 |
CN115640154B (zh) * | 2022-12-23 | 2023-03-17 | 北京麟卓信息科技有限公司 | 一种基于轨迹智能预测的跨运行环境交互延迟优化方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104317661A (zh) * | 2014-11-04 | 2015-01-28 | 上海斐讯数据通信技术有限公司 | 嵌入式双系统的系统间通信方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9705729B2 (en) * | 2012-06-01 | 2017-07-11 | Dell Products L.P. | General client engine with load balancing for client-server communication |
-
2015
- 2015-09-10 CN CN201510572464.4A patent/CN105260250B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104317661A (zh) * | 2014-11-04 | 2015-01-28 | 上海斐讯数据通信技术有限公司 | 嵌入式双系统的系统间通信方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105260250A (zh) | 2016-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105260250B (zh) | 一种Linux系统与Android系统的双系统通信装置 | |
CN110022289B (zh) | 数据传输方法、装置及系统 | |
CN103580966A (zh) | 一种无线链路和有线链路并行传输数据的方法及系统 | |
WO2012126423A3 (zh) | 控制业务传输的方法和装置 | |
WO2016097822A1 (en) | Method and apparatus for local data monitoring and actuator control in an internet of things network | |
JP2011222049A5 (zh) | ||
CN107529132B (zh) | 蓝牙设备与应用程序之间传输数据的方法和装置 | |
CN110620762A (zh) | 基于rdma的数据传输方法、网卡、服务器及介质 | |
WO2022033094A1 (zh) | 定位基站数据流处理方法、装置、设备及计算机可读介质 | |
CN104243610A (zh) | 一种分布式文件传输服务方法 | |
CN113254103A (zh) | 应用程序的功能实现方法、装置及存储介质 | |
CN107257369A (zh) | 一种北斗短报文云计算平台系统 | |
MX2016004112A (es) | Metodo, dispositivo y sistema para transmitir informacion. | |
CN101739575A (zh) | 无线射频识别系统中多硬件设备集中管理的数据处理方法 | |
CN104142941A (zh) | 一种海量定位数据存储方法 | |
CN104113564A (zh) | 超文本传输协议连接复用方法、设备、系统及终端 | |
CN110572476B (zh) | 一种远程控制方法、装置及设备 | |
CN106302432A (zh) | 一种基于车联网的通信装置及控制方法 | |
CN104660453A (zh) | 服务端端口号协商方法及系统 | |
CN109819026B (zh) | 用于传输信息的方法及装置 | |
CN114745367B (zh) | 数据传输方法、装置、电子设备和存储介质 | |
CN106130695A (zh) | 一种数据传输方法和系统 | |
CN109327405B (zh) | 报文保序方法及网络设备 | |
CN105072166A (zh) | 一种业务网点与客户之间实时交互通信的方法及装置 | |
CN104796458A (zh) | 安卓系统消息融合方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |