RU2523964C2 - Method for inter-process interaction between different applications in mobile terminal and corresponding device - Google Patents
Method for inter-process interaction between different applications in mobile terminal and corresponding device Download PDFInfo
- Publication number
- RU2523964C2 RU2523964C2 RU2012136195/08A RU2012136195A RU2523964C2 RU 2523964 C2 RU2523964 C2 RU 2523964C2 RU 2012136195/08 A RU2012136195/08 A RU 2012136195/08A RU 2012136195 A RU2012136195 A RU 2012136195A RU 2523964 C2 RU2523964 C2 RU 2523964C2
- Authority
- RU
- Russia
- Prior art keywords
- server
- application process
- data
- protocol
- interaction protocol
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 210
- 230000003993 interaction Effects 0.000 title claims abstract description 83
- 230000008569 process Effects 0.000 claims abstract description 186
- 238000004891 communication Methods 0.000 claims abstract description 45
- 238000005538 encapsulation Methods 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 claims description 4
- 230000000694 effects Effects 0.000 abstract description 2
- 238000013073 enabling process Methods 0.000 abstract 1
- 239000000126 substance Substances 0.000 abstract 1
- 238000011161 development Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W80/00—Wireless network protocols or protocol adaptations to wireless operation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Computer And Data Communications (AREA)
- Telephonic Communication Services (AREA)
Abstract
Description
Область техникиTechnical field
Данное изобретение относится к телекоммуникациям и, в частности, к устройству и способу для обеспечения межпроцессного взаимодействия между разными приложениями в мобильном терминале.This invention relates to telecommunications and, in particular, to a device and method for providing interprocess communication between different applications in a mobile terminal.
Уровень техникиState of the art
Из уровня техники известны различные модели мобильных терминалов, например мобильных телефонов, а также операционные системы для них. Кроме того, существует большое количество приложений для мобильных терминалов. Разные приложения могут разрабатываться с использованием разных языков разработки. Например, в прикладной среде для современной платформы Game Hall разработана программа для Game Hall на языке Symbian, а встроенные в платформу Game Hall игры разработаны на языке J2ME (Java 2 Micro Edition). Язык J2ME, который давно используется в качестве универсального кросс-платформенного решения, был выбран для разработки большого количества прикладных программ благодаря тому, что он облегчает процедуру переноса между платформами и его поддерживает наибольшее число моделей мобильных терминалов.The prior art various models of mobile terminals, such as mobile phones, as well as operating systems for them. In addition, there are a large number of applications for mobile terminals. Different applications can be developed using different development languages. For example, in the application environment for the modern Game Hall platform, a program for Game Hall in the Symbian language was developed, and games built into the Game Hall platform were developed in the J2ME language (Java 2 Micro Edition). The J2ME language, which has long been used as a universal cross-platform solution, was chosen for the development of a large number of application programs due to the fact that it facilitates the transfer procedure between platforms and is supported by the largest number of models of mobile terminals.
Между тем, для мобильных телефонов остается по-прежнему неудобным осуществление межпроцессного взаимодействия между приложениями, разработанными с использованием разных языков. В частности, в уровне техники представлено очень мало эффективных механизмов взаимодействия между приложениями, разработанными с использованием языка J2ME, и приложениями, разработанными с использованием языка Symbian, и для этих приложений вообще не существует каналов межпроцессного взаимодействия, например общей памяти, конвейеров передачи данных, файлов, баз данных, которые имеются в обычном персональном компьютере (ПК).Meanwhile, for mobile phones it remains uncomfortable to implement interprocess communication between applications developed using different languages. In particular, in the prior art, there are very few effective interaction mechanisms between applications developed using the J2ME language and applications developed using the Symbian language, and for these applications there are no interprocess communication channels, for example, shared memory, data transfer pipelines, files , databases that are available on a regular personal computer (PC).
В процессе работы над настоящим изобретением авторами было обнаружено полное отсутствие среди известных технических решений каких-либо методов межпроцессного взаимодействия между приложениями для мобильных терминалов, например мобильных телефонов.In the process of working on the present invention, the authors found a complete absence among known technical solutions of any methods of interprocess communication between applications for mobile terminals, for example mobile phones.
Сущность изобретенияSUMMARY OF THE INVENTION
Соответственно, в настоящем изобретении предложен способ межпроцессного взаимодействия между приложениями в мобильном терминале, обеспечивающий процессам различных приложений в мобильном терминале возможность взаимодействия друг с другом.Accordingly, the present invention provides a method for interprocess communication between applications in a mobile terminal, providing the processes of various applications in the mobile terminal the ability to interact with each other.
Заявляемый сервер для межпроцессного взаимодействия, созданный в мобильном терминале, может содержать:The inventive server for interprocess communication, created in a mobile terminal, may contain:
модуль создания интерфейса, выполненный с возможностью создания интерфейса, функционально соединяющегося с процессом каждого из по меньшей мере двух приложений в мобильном терминале;an interface creation module configured to create an interface functionally connected to the process of each of the at least two applications in the mobile terminal;
модуль задания протокола, выполненный с возможностью задания протоколов взаимодействия между процессами по меньшей мере двух приложений в мобильном терминале, причем указанные протоколы взаимодействия могут включать в себя протокол взаимодействия между процессом приложения-отправителя и сервером и протокол взаимодействия между процессом приложения-получателя и сервером;a protocol setting module, configured to set communication protocols between processes of at least two applications in a mobile terminal, said interaction protocols may include a communication protocol between a sending application process and a server and a communication protocol between a receiving application process and a server;
и модуль обработки обмениваемых данных, выполненный с возможностью приема данных, отправленных процессом приложения-отправителя, с помощью протокола взаимодействия между процессом приложения-отправителя и сервером после того, как сервер соединится с процессом приложения-отправителя через интерфейс, созданный модулем создания интерфейса, и с возможностью отправления данных процессу приложения-получателя с помощью протокола взаимодействия между процессом приложения-получателя и сервером после того, как сервер соединится с процессом приложения-получателя через интерфейс, созданный модулем создания интерфейса.and an exchange data processing module, configured to receive data sent by the sending application process using the interaction protocol between the sending application process and the server after the server connects to the sending application process through the interface created by the interface creation module, and with the ability to send data to the process of the recipient application using the interaction protocol between the process of the recipient application and the server after the server connects to the process the recipient application through the interface created by the interface creation module.
Заявляемый способ межпроцессного взаимодействия в мобильном терминале может включать следующие этапы: создание в мобильном терминале сервера для межпроцессного взаимодействия;The inventive method of interprocess communication in a mobile terminal may include the following steps: creating a server in the mobile terminal for interprocess communication;
соединение сервера с процессом приложения-отправителя через первый интерфейс и прием сервером данных, отправленных процессом приложения-отправителя, через первый протокол взаимодействия между процессом приложения-отправителя и сервером;connecting the server to the sending application process through the first interface and receiving by the server the data sent by the sending application process through the first interaction protocol between the sending application process and the server;
и соединение сервера с процессом приложения-получателя через второй интерфейс и отправка сервером данных процессу приложения-получателя через второй протокол взаимодействия между процессом приложения-получателя и сервером.and connecting the server to the process of the recipient application through the second interface and sending the server data to the process of the recipient application through a second interaction protocol between the process of the recipient application and the server.
Предложенное изобретение при создании сервера для межпроцессного взаимодействия в мобильном терминале обеспечивает возможность взаимодействия друг с другом процессам различных приложений в указанном мобильном терминале.The proposed invention when creating a server for interprocess communication in a mobile terminal provides the ability to interact with each other the processes of various applications in the specified mobile terminal.
Краткое описание чертежейBrief Description of the Drawings
Для более наглядной иллюстрации технических решений, предложенных в настоящем изобретении, в заявке используются чертежи, которые кратко описаны ниже. Следует понимать, что представленные чертежи соответствуют лишь нескольким вариантам изобретения. Однако специалисты данной области техники, основываясь на этих чертежах, могут подготовить другие чертежи настоящего изобретения, не совершая при этом никакой изобретательской деятельности.To more clearly illustrate the technical solutions proposed in the present invention, the application uses the drawings, which are briefly described below. It should be understood that the presented drawings correspond to only a few variants of the invention. However, experts in the art, based on these drawings, can prepare other drawings of the present invention without committing any inventive activity.
Фиг.1 схематически иллюстрирует структуру сервера для межпроцессного взаимодействия, соответствующего первому аспекту изобретения.1 schematically illustrates a server structure for interprocess communication in accordance with a first aspect of the invention.
Фиг.2 дает блок-схему, иллюстрирующую способ межпроцессного взаимодействия в мобильном терминале, соответствующий второму аспекту изобретения.FIG. 2 provides a flowchart illustrating an interprocess communication method in a mobile terminal in accordance with a second aspect of the invention.
Варианты выполнения изобретенияEmbodiments of the invention
Настоящее изобретения проще понять на примере нескольких его вариантов, подробно описанных ниже со ссылкой на приложенные чертежи, которые не следует рассматривать как ограничение объема правовой охраны изобретения.The present invention is easier to understand by the example of several options described in detail below with reference to the attached drawings, which should not be construed as limiting the scope of legal protection of the invention.
Вариант 1Option 1
Согласно данному варианту в мобильном терминале, например мобильном телефоне, создается сервер для осуществления межпроцессного взаимодействия между приложениями. Фиг.1 схематически иллюстрирует структуру сервера для межпроцессного взаимодействия, соответствующего этому варианту изобретения. Сервер может включать следующие модули.According to this embodiment, a server is created in a mobile terminal, for example, a mobile phone, for interprocess communication between applications. 1 schematically illustrates a server structure for interprocess communication in accordance with this embodiment of the invention. The server may include the following modules.
Модуль 11 создания интерфейса выполнен с возможностью создания интерфейса, функционально соединяющегося с процессом приложения в мобильном терминале. Посредством этого интерфейса указанный процесс может соединяться с сервером.The interface creation module 11 is configured to create an interface that is functionally connected to the application process in the mobile terminal. Through this interface, the specified process can connect to the server.
Модуль 12 задания протокола выполнен с возможностью задания протокола взаимодействия для процесса из каждого из по меньшей мере двух приложений в мобильном терминале. Процесс приложения может осуществлять обмен данными с сервером при помощи протокола взаимодействия. Соответствующие протоколы взаимодействия могут включать в себя протокол взаимодействия между процессом приложения-отправителя и сервером и протокол взаимодействия между процессом приложения-получателя и сервером. Протокол взаимодействия может быть предварительно сконфигурирован посредством модуля 12 задания протокола.The protocol setting module 12 is configured to set an interaction protocol for a process from each of at least two applications in a mobile terminal. The application process can exchange data with the server using an interaction protocol. Appropriate interaction protocols may include an interaction protocol between the sending application process and the server and an interaction protocol between the receiving application process and the server. The interaction protocol may be pre-configured by the protocol setting module 12.
Процессы различных приложений могут быть сконфигурированы с одним и тем же протоколом взаимодействия или с разными протоколами взаимодействия. На практике для всех приложений может быть конфигурирован протокол TCP (от англ. Transmission Control Protocol - протокол управления передачей).The processes of various applications can be configured with the same interaction protocol or with different interaction protocols. In practice, for all applications, the TCP protocol can be configured (from the English Transmission Control Protocol - Transmission Control Protocol).
Модуль 13 обработки обмениваемых данных выполнен с возможностью приема первых данных, отправляемых процессом приложения-отправителя, с помощью протокола взаимодействия между процессом приложения-отправителя и сервером после того, как модуль 13 обработки обмениваемых данных соединится с процессом приложения-отправителя через интерфейс, созданный модулем создания интерфейса 11, и с возможностью отправления этих первых данных процессу приложения-получателя с помощью протокола взаимодействия между процессом приложения-получателя и сервером после того, как модуль 13 обработки обмениваемых данных соединится с процессом приложения-получателя через интерфейс, созданный модулем создания интерфейса 11. Модуль 13 обработки обмениваемых данных может быть также выполнен с возможностью приема вторых данных, возвращаемых процессом приложения-получателя, с помощью протокола взаимодействия между процессом приложения-получателя и сервером, и с возможностью возвращения этих вторых данных процессу приложения-отправителя с помощью протокола взаимодействия между процессом приложения-отправителя и сервером.The exchanged data processing module 13 is configured to receive the first data sent by the sending application process using the interaction protocol between the sending application process and the server after the exchanged data processing module 13 is connected to the sending application process through the interface created by the creation module interface 11, and with the possibility of sending this first data to the process of the recipient application using the protocol of interaction between the process of the recipient application and serv rum after the exchange module 13 for exchanging data is connected to the process of the recipient application through the interface created by the module for creating the interface 11. The exchange module 13 for exchanging data can also be configured to receive second data returned by the recipient application using the interaction protocol between the process of the receiving application and the server, and with the possibility of returning this second data to the process of the sending application using the protocol of interaction between the application process I am the sender and the server.
Сервер может дополнительно включать следующие модули.The server may further include the following modules.
Модуль 14 задания межпроцессного протокола выполнен с возможностью задания протокола взаимодействия между двумя процессами. Протокол взаимодействия может быть инкапсулирован в протокол взаимодействия между каждым процессом и сервером и может быть предварительно сконфигурирован этим модулем 14 задания межпроцессного протокола. Если процессу приложения-отправителя требуется взаимодействовать с процессом приложения-получателя, процесс приложения-отправителя использует протокол взаимодействия между процессом приложения-отправителя и процессом приложения-получателя, заданный модулем 14 задания межпроцессного протокола, инкапсулируя передаваемые данные и генерируя запрос данных. Процесс приложения-получателя использует протокол взаимодействия между процессом приложения-получателя и процессом, приложения-отправителя, заданный модулем 14 задания межпроцессного протокола, декапсулируя запрос данных и принимая данные, отправленные процессом приложения-отправителя.The interprocess protocol specification module 14 is configured to set an interaction protocol between two processes. The interaction protocol can be encapsulated in the interaction protocol between each process and the server and can be preconfigured by this module 14 for setting the interprocess protocol. If the sender application process needs to interact with the sender application process, the sender application process uses the interaction protocol between the sender application process and the receiver application process specified by the interprocess protocol task module 14, encapsulating the transmitted data and generating a data request. The process of the receiving application uses the interaction protocol between the process of the receiving application and the process, the sending application specified by the interprocess protocol setting module 14, decapsulating the data request and receiving data sent by the sending application process.
Говоря более подробно, модуль 13 обработки обмениваемых данных может включать следующие компоненты.In more detail, the exchange module 13 may include the following components.
Приемник 131 выполнен с возможностью приема данных, которые были инкапсулированы дважды и отправлены процессом приложения-отправителя с помощью протокола взаимодействия между процессом приложения-отправителя и сервером после того, как приемник соединится с процессом приложения-отправителя через интерфейс, созданный модулем создания интерфейса 11. Указанные две инкапсуляции могут включать в себя: первую инкапсуляцию, выполняемую над передаваемыми данными процессом приложения-отправителя с использованием протокола взаимодействия между процессом приложения-отправителя и процессом приложения-получателя, который задается модулем 14 задания межпроцессного протокола; и вторую инкапсуляцию, выполняемую над данными, прошедшими первую инкапсуляцию, с использованием протокола взаимодействия (например, протокола TCP) между процессом приложения-отправителя и сервером, который задается модулем 12 задания протокола.The receiver 131 is configured to receive data that has been encapsulated twice and sent by the sending application process using the interaction protocol between the sending application process and the server after the receiver connects to the sending application process through the interface created by the interface creation module 11. These two encapsulations may include: the first encapsulation performed on the transmitted data by the process of the sending application using the protocol of interaction between process at the sending application and the receiving application process, which is given the task module 14 interprocess protocol; and a second encapsulation performed on the data that has passed the first encapsulation using an interaction protocol (e.g., TCP) between the sending application process and the server, which is specified by the protocol setting module 12.
Декапсулятор 132 выполнен с возможностью декапсулирования данных, принятых приемником 131, с использованием протокола взаимодействия между процессом приложения-отправителя и сервером, который задается модулем 12 задания протокола.The decapsulator 132 is configured to decapsulate the data received by the receiver 131 using an interaction protocol between the sending application process and the server, which is specified by the protocol setting module 12.
Инкапсулятор 133 выполнен с возможностью инкапсулирования данных, декапсулированных декапсулятором 132, с использованием протокола взаимодействия между процессом приложения-получателя и сервером, который задается модулем 12 задания протокола.Encapsulator 133 is configured to encapsulate data decapsulated by decapsulator 132 using an interaction protocol between a recipient application process and a server, which is specified by protocol definition module 12.
Передатчик 134 выполнен с возможностью отправки данных, инкапсулированных инкапсулятором 133, процессу приложения-получателя с использованием протокола взаимодействия между процессом приложения-получателя и сервером после того, как передатчик соединится с процессом приложения-получателя через интерфейс, созданный модулем 11 создания интерфейса. После приема данных, отправленных сервером, процесс приложения-получателя выполняет первую декапсуляцию над полученным запросом данных с использованием протокола взаимодействия между процессом приложения-получателя и сервером, который задается модулем 12 задания протокола, после чего выполняет вторую декапсуляцию над запросом данных, прошедшим первую декапсуляцию, с использованием протокола взаимодействия между процессами приложения-отправителя и приложения-получателя, который задается модулем 14 задания межпроцессного протокола, и принимает данные, отправленные процессом приложения-отправителя.The transmitter 134 is configured to send the data encapsulated by the encapsulator 133 to the recipient application process using an interaction protocol between the recipient application process and the server after the transmitter connects to the recipient application process through the interface created by the interface creation module 11. After receiving data sent by the server, the process of the recipient application performs the first decapsulation of the received data request using the interaction protocol between the process of the recipient application and the server, which is set by the protocol setting module 12, after which it performs the second decapsulation of the data request that passed the first decapsulation, using the interaction protocol between the processes of the sending application and the receiving application, which is set by the interprocess protocol setting module 14, and receives data sent by the sending application process.
Модуль 13 обработки обмениваемых данных может также принимать данные, отправленные процессом приложения-получателя, с использованием протокола взаимодействия между процессом приложения-получателя и сервером. В этом случае модуль 13 обработки обмениваемых данных может дополнительно включать второй приемник, второй декапсулятор, второй инкапсулятор и второй передатчик, которые в указанном порядке соответствуют приемнику 131, декапсулятору 132, инкапсулятору 133 и передатчику 134, для обработки данных, отправленных процессом приложения-получателя. Процедуры обработки сходны с соответствующими процедурами приемника 131, декапсулятора 132, инкапсулятора 133 и передатчика 134, и отличаются следующим: данные, принимаемые вторым приемником, посылаются процессом приложения-получателя с использования протокола взаимодействия между процессом приложения-получателя и сервером; второй декапсулятор декапсулирует данные с использованием протокола взаимодействия между процессом приложения-получателя и сервером; второй инкапсулятор инкапсулирует декапсулированные данные с использованием протокола взаимодействия между процессом приложения-отправителя и сервером; и второй передатчик отправляет данные, инкапсулированные вторым инкапсулятором, процессу приложения-получателя с использованием протокола взаимодействия между процессом приложения-отправителя и сервером межпроцессного взаимодействия.The exchange module 13 may also receive data sent by the process of the recipient application using the communication protocol between the process of the recipient application and the server. In this case, the exchange module 13 may further include a second receiver, a second decapsulator, a second encapsulator and a second transmitter, which in this order correspond to a receiver 131, decapsulator 132, encapsulator 133 and transmitter 134, for processing data sent by the recipient application process. The processing procedures are similar to those of the receiver 131, decapsulator 132, encapsulator 133 and transmitter 134, and differ in the following: the data received by the second receiver is sent by the recipient application using the communication protocol between the recipient application and the server; the second decapsulator decapsulates the data using the interaction protocol between the process of the recipient application and the server; the second encapsulator encapsulates the decapsulated data using an interaction protocol between the sending application process and the server; and the second transmitter sends the data encapsulated by the second encapsulator to the recipient application process using an interaction protocol between the sending application process and the interprocess communication server.
Вариант 2Option 2
Опираясь на информацию, приведенную в отношении описанного выше сервера для межпроцессного взаимодействия, поясним приведенную на фиг.2 блок-схему способа межпроцессного взаимодействия в мобильном терминале, соответствующего одному из вариантов изобретения. Способ может включать следующие этапы.Based on the information given in relation to the server for interprocess communication described above, we explain the flowchart of FIG. 2, a block diagram of the method of interprocess communication in a mobile terminal in accordance with one embodiment of the invention. The method may include the following steps.
Посредством блока 21 показано, что процесс А приложения-отправителя инкапсулирует передаваемые данные дважды с использованием сконфигурированного протокола взаимодействия.By means of
Когда процессу А требуется выполнить обмен данными с процессом В приложения-получателя, процесс А сначала выполняет первую инкапсуляцию над передаваемыми данными и конструирует запрос данных с использованием протокола взаимодействия между процессом А и процессом В, который задается модулем 14 задания межпроцессного протокола.When process A needs to exchange data with process B of the recipient application, process A first performs the first encapsulation of the transmitted data and constructs a data request using the interaction protocol between process A and process B, which is set by the interprocess protocol task module 14.
На практике процесс В может представлять собой процесс платформы Game Hall, а процесс А может представлять собой процесс игры, внедренной в Game Hall, который должен загружать результаты игры в процесс В.In practice, process B can be a Game Hall platform process, and process A can be a game process embedded in the Game Hall, which should load the game results into process B.
Затем процесс А выполняет вторую инкапсуляцию над запросом данных, прошедшим через первую инкапсуляцию, с использованием протокола взаимодействия (например, протокола TCP) между процессом А и сервером межпроцессного взаимодействия, который задается модулем 12 задания протокола.Then, process A performs a second encapsulation on a data request that has passed through the first encapsulation using an interaction protocol (for example, TCP) between process A and the interprocess communication server, which is set by protocol definition module 12.
Посредством блока 22 показано, что сервер межпроцессного взаимодействия посылает запрос данных процессу В приложения-получателя, декапсулировав и инкапсулировав этот запрос.By means of
Процесс А соединяется с сервером межпроцессного взаимодействия через интерфейс между процессом А и сервером межпроцессного взаимодействия, созданный модулем создания интерфейса 11. Далее процесс А посылает запрос данных, прошедший две инкапсуляции, на сервер межпроцессного взаимодействия с использованием протокола взаимодействия. Сервер межпроцессного взаимодействия декапсулирует запрос данных с использованием протокола взаимодействия между процессом А и сервером межпроцессного взаимодействия, который задается модулем 12 задания протокола.Process A connects to the interprocess communication server through the interface between process A and the interprocess communication server created by the interface creation module 11. Next, process A sends a data request that has passed two encapsulations to the interprocess communication server using the interaction protocol. The interprocess communication server decapsulates the data request using the interaction protocol between process A and the interprocess communication server, which is set by the protocol setting module 12.
Затем сервер межпроцессного взаимодействия инкапсулирует запрос данных, декапсулированный с использованием протокола взаимодействия между процессом В и сервером межпроцессного взаимодействия, который задается модулем 12 задания протокола, и посылает указанный запрос данных процессу В.Then the interprocess communication server encapsulates the data request decapsulated using the interaction protocol between process B and the interprocess communication server, which is set by the protocol setting module 12, and sends the specified data request to process B.
Посредством блока 23 показано, что процесс В декапсулирует полученный запрос данных дважды, принимая данные, отправленные процессом А.Using
После приема запроса данных, отправленного сервером межпроцессного взаимодействия, процесс В выполняет первую декапсуляцию над полученным запросом данных с использованием протокола взаимодействия между процессом В и сервером межпроцессного взаимодействия, который задается модулем 12 задания протокола. Затем процесс В выполняет вторую декапсуляцию над запросом данных, прошедшим первую декапсуляцию, с использованием протокола взаимодействия между процессами А и В, который задается модулем 14 задания межпроцессного протокола, принимая данные, отправленные процессом А.After receiving the data request sent by the interprocess communication server, process B performs the first decapsulation of the received data request using the interaction protocol between process B and the interprocess communication server, which is set by the protocol setting module 12. Then, process B performs a second decapsulation on a data request that has passed the first decapsulation using the interaction protocol between processes A and B, which is set by the interprocess protocol task module 14, receiving data sent by process A.
После обработки данных, отправленных процессом А, процесс В может вернуть результат обработки процессу А через сервер межпроцессного взаимодействия, следуя вышеупомянутым процедурам.After processing the data sent by process A, process B can return the processing result to process A through the interprocess communication server, following the above procedures.
Специалистам данной области техники должно быть ясно, что все или некоторые процедуры в вышеупомянутых способах могут быть выполнены модулями аппаратных средств в соответствии с командами компьютерной программы. Компьютерная программа может храниться на машиночитаемом носителе информации. При своем выполнении компьютерная программа может реализовывать процедуры, входящие в заявленный способ. Носитель информации может представлять собой дискету, компакт-диск, постоянное запоминающее устройство (ПЗУ), оперативное запоминающее устройство (ОЗУ) или иное устройство.It will be apparent to those skilled in the art that all or some of the procedures in the above methods may be performed by hardware modules in accordance with computer program instructions. The computer program may be stored on a computer-readable storage medium. When executed, a computer program may implement the procedures included in the claimed method. The storage medium may be a diskette, compact disk, read-only memory (ROM), random access memory (RAM) or other device.
Таким образом, настоящее изобретение обеспечивает межпроцессное взаимодействие между различными приложениями в мобильном терминале, делая возможным взаимодействие между главной программой и подключаемым программным модулем (сторонней программой), что значительно снижает расходы на разработку программ для мобильных терминалов и повышает эффективность разработки мобильных терминалов.Thus, the present invention provides interprocess communication between various applications in a mobile terminal, making it possible to interact between the main program and the plug-in software module (third-party program), which significantly reduces the cost of developing programs for mobile terminals and increases the efficiency of developing mobile terminals.
Согласно настоящему изобретению выполнять различные функции становится возможным путем распределения по различным приложениям, вместо того, чтобы выполнять их путем вызова динамически подключаемых или статически подключаемых библиотек. Данное обстоятельство облегчает разработку программ. Поскольку протокол интерфейса взаимодействия остается неизменным, отпадает потребность в обновлении динамически подключаемой или статически подключаемой библиотеки, что позволяет сохранять относительную независимость приложений друг от друга, несмотря на то, что они взаимодействуют друг с другом.According to the present invention, it becomes possible to perform various functions by distributing among various applications, instead of performing them by calling dynamically connected or statically connected libraries. This circumstance facilitates the development of programs. Since the interaction interface protocol remains unchanged, there is no need to update a dynamically connected or statically connected library, which allows you to maintain the relative independence of applications from each other, despite the fact that they interact with each other.
Кроме того, в настоящем изобретении предложено решение для разработки подключаемых программных модулей, например, для программных модулей, подключаемых к таким приложениям, как браузеры для мобильных телефонов, что делает возможным их взаимодействие с коммуникационным сервером, а также обеспечивает органичную интеграцию подключаемых модулей и браузера, поскольку существует предварительно заданный интерфейс протокола для взаимодействия между подключаемым модулем и браузером.In addition, the present invention provides a solution for the development of plug-in software modules, for example, for software modules connected to applications such as browsers for mobile phones, which makes it possible to interact with a communication server, and also provides seamless integration of plug-ins and browser, since there is a predefined protocol interface for the interaction between the plug-in and the browser.
Выше приведены лишь некоторые частные примеры настоящего изобретения, не ограничивающие объем его правовой охраны. Любые модификации и эквивалентные замены, выполняемые в рамках настоящего изобретения, должны рассматриваться как подпадающие под объем его правовой охраны. Таким образом, объем правовой охраны настоящего изобретения определяется пунктами приложенной формулы.The above are only some specific examples of the present invention, not limiting the scope of its legal protection. Any modifications and equivalent replacements made within the scope of the present invention should be considered as falling within the scope of its legal protection. Thus, the scope of legal protection of the present invention is determined by the paragraphs of the attached claims.
Claims (10)
модуль создания интерфейса, выполненный с возможностью создания интерфейса для соединения сервера с процессом каждого из по меньшей мере двух приложений в мобильном терминале;
модуль задания протокола, выполненный с возможностью задания протоколов взаимодействия между сервером и процессами по меньшей мере двух приложений в мобильном терминале, причем указанные протоколы взаимодействия включают в себя протокол взаимодействия между процессом приложения-отправителя и сервером и протокол взаимодействия между процессом приложения-получателя и сервером;
и модуль обработки обмениваемых данных, выполненный с возможностью приема данных, отправленных процессом приложения-отправителя, с помощью протокола взаимодействия между процессом приложения-отправителя и сервером после того, как сервер соединится с процессом приложения-отправителя через интерфейс, созданный модулем создания интерфейса, а также с возможностью отправления данных процессу приложения-получателя с помощью протокола взаимодействия между процессом приложения-получателя и сервером после того, как сервер соединится с процессом приложения-получателя через интерфейс, созданный модулем создания интерфейса,
причем данные, принятые модулем обработки обмениваемых данных, были обработаны процессом приложения-отправителя через первую инкапсуляцию и вторую инкапсуляцию, причем первая инкапсуляция выполняется с использованием протокола взаимодействия между процессом приложения-отправителя и процессом приложения-получателя, а вторая инкапсуляция выполняется с использованием протокола взаимодействия между процессом приложения-отправителя и сервером.1. Server for interprocess communication, created in a mobile terminal, containing:
an interface creation module configured to create an interface for connecting the server to the process of each of the at least two applications in the mobile terminal;
a protocol setting module, configured to set interaction protocols between the server and the processes of at least two applications in the mobile terminal, said interaction protocols including a communication protocol between the sending application process and the server and a communication protocol between the receiving application process and the server;
and an exchange data processing module, configured to receive data sent by the sending application process using a communication protocol between the sending application process and the server after the server connects to the sending application process through the interface created by the interface creation module, and with the ability to send data to the process of the recipient application using the interaction protocol between the process of the recipient application and the server after the server connects to the essom receiving application via an interface created by creating an interface module,
moreover, the data received by the exchange processing module was processed by the sender application process through the first encapsulation and the second encapsulation, the first encapsulation being performed using the interaction protocol between the sending application process and the recipient application, and the second encapsulation using the interaction protocol between sender application process and server.
модуль задания межпроцессного протокола, выполненный с возможностью задания протокола взаимодействия между процессами разных приложений.2. The server according to claim 1, additionally containing:
an interprocess protocol job module, configured to set an interaction protocol between processes of different applications.
приемник, выполненный с возможностью приема данных, отправленных процессом приложения-отправителя, с использованием протокола взаимодействия между процессом приложения-отправителя и сервером после того, как приемник соединится с процессом приложения-отправителя через интерфейс, созданный модулем создания интерфейса;
декапсулятор, выполненный с возможностью декапсулирования данных, принятых приемником, с использованием протокола взаимодействия между процессом приложения-отправителя и сервером;
инкапсулятор, выполненный с возможностью инкапсулирования данных, декапсулированных декапсулятором, с использованием протокола взаимодействия между процессом приложения-получателя и сервером;
и передатчик, выполненный с возможностью отправления данных, инкапсулированных инкапсулятором, процессу приложения-получателя с помощью протокола взаимодействия между процессом приложения-получателя и сервером после того, как передатчик соединится с процессом приложения-получателя через интерфейс, созданный модулем создания интерфейса.3. The server according to claim 1 or 2, wherein said exchange data processing module comprises:
a receiver configured to receive data sent by the sending application process using an interaction protocol between the sending application process and the server after the receiver connects to the sending application process through the interface created by the interface creation module;
a decapsulator configured to decapsulate data received by the receiver using an interaction protocol between the sending application process and the server;
an encapsulator configured to encapsulate data decapsulated by a decapsulator using an interaction protocol between a recipient application process and a server;
and a transmitter configured to send the data encapsulated by the encapsulator to the recipient application process using the interaction protocol between the recipient application process and the server after the transmitter connects to the recipient application process through the interface created by the interface creation module.
первый приемник, выполненный с возможностью приема данных, отправленных процессом приложения-отправителя, с помощью протокола взаимодействия между процессом приложения-отправителя и сервером после того, как первый приемник соединится с процессом приложения-отправителя через интерфейс, созданный модулем создания интерфейса;
первый декапсулятор, выполненный с возможностью декапсулирования данных, принятых первым приемником, с использованием протокола взаимодействия между процессом приложения-отправителя и сервером;
первый инкапсулятор, выполненный с возможностью инкапсулирования данных, декапсулированных первым декапсулятором, с использованием протокола взаимодействия между процессом приложения-получателя и сервером;
первый передатчик, выполненный с возможностью отправления данных, инкапсулированных первым инкапсулятором, процессу приложения-получателя с помощью протокола взаимодействия между процессом приложения-получателя и сервером после того, как первый передатчик соединится с процессом приложения-получателя через интерфейс, созданный модулем создания интерфейса;
второй приемник, выполненный с возможностью приема вторых данных, возвращенных процессом приложения-получателя, с помощью протокола взаимодействия между процессом приложения-получателя и сервером после того, как второй приемник соединится с процессом приложения-получателя через интерфейс, созданный модулем создания интерфейса;
второй декапсулятор, выполненный с возможностью декапсулирования вторых данных, принятых вторым приемником, с использованием протокола взаимодействия между процессом приложения-получателя и сервером;
второй инкапсулятор, выполненный с возможностью инкапсулирования вторых данных, декапсулированных вторым декапсулятором, с использованием протокола взаимодействия между процессом приложения-отправителя и сервером;
и второй передатчик, выполненный с возможностью отправления вторых данных, инкапсулированных вторым инкапсулятором, процессу приложения-получателя с использованием протокола взаимодействия между процессом приложения-отправителя и сервером после того, как второй передатчик соединится с процессом приложения-получателя через интерфейс, созданный модулем создания интерфейса.5. The server according to claim 4, in which the specified module for processing exchanged data contains:
a first receiver configured to receive data sent by the sender application process using an interaction protocol between the sender application process and the server after the first receiver connects to the sender application process through the interface created by the interface creation module;
a first decapsulator configured to decapsulate data received by the first receiver using an interaction protocol between the sending application process and the server;
a first encapsulator configured to encapsulate data decapsulated by a first decapsulator using an interaction protocol between a recipient application process and a server;
a first transmitter configured to send the data encapsulated by the first encapsulator to the recipient application process using the interaction protocol between the recipient application process and the server after the first transmitter connects to the recipient application process through the interface created by the interface creation module;
a second receiver configured to receive second data returned by the recipient application process using an interaction protocol between the recipient application process and the server after the second receiver connects to the recipient application process through the interface created by the interface creation module;
a second decapsulator configured to decapsulate the second data received by the second receiver using an interaction protocol between the recipient application process and the server;
a second encapsulator configured to encapsulate the second data decapsulated by the second decapsulator using an interaction protocol between the sending application process and the server;
and a second transmitter configured to send the second data encapsulated by the second encapsulator to the recipient application process using the interaction protocol between the sending application process and the server after the second transmitter is connected to the recipient application process through the interface created by the interface creation module.
установление посредством сервера соединения с процессом приложения-отправителя через интерфейс и прием сервером данных, отправленных процессом приложения-отправителя, с использованием протокола взаимодействия между процессом приложения-отправителя и сервером;
и установление посредством сервера соединения с процессом приложения-получателя через интерфейс и отправка сервером данных процессу приложения-получателя с использованием протокола взаимодействия между процессом приложения-получателя и сервером,
причем указанный этап установления посредством сервера соединения с процессом приложения-отправителя через интерфейс и приема данных, отправленных процессом приложения-отправителя, с использованием протокола взаимодействия между процессом приложения-отправителя и сервером включает:
конструирование запроса данных первым процессом приложения-отправителя путем выполнения первой инкапсуляции над передаваемыми данными с использованием протокола взаимодействия между первым процессом и вторым процессом приложения-получателя, когда первому процессу требуется взаимодействовать со вторым процессом;
выполнение второй инкапсуляции первым процессом над инкапсулированным запросом данных с использованием протокола взаимодействия между первым процессом и сервером;
и установление первым процессом соединения с сервером через интерфейс между первым процессом и сервером и отправку запроса данных, прошедшего две инкапсуляции, на сервер с использованием протокола взаимодействия между первым процессом и сервером.6. A method of interprocess communication in a mobile terminal, according to which a server for interprocess communication is created in the mobile terminal, including the following steps:
establishing through the server a connection to the process of the sending application via the interface and receiving by the server the data sent by the sending application process using the interaction protocol between the sending application process and the server;
and establishing, through the server, a connection to the process of the recipient application through the interface and sending the data by the server to the process of the recipient application using the interaction protocol between the recipient application process and the server,
wherein said step of establishing through the server a connection to the sending application process through the interface and receiving data sent by the sending application process using the interaction protocol between the sending application process and the server includes:
constructing a data request by the first process of the sending application by performing the first encapsulation of the transmitted data using an interaction protocol between the first process and the second process of the receiving application when the first process needs to interact with the second process;
performing a second encapsulation by the first process on an encapsulated data request using an interaction protocol between the first process and the server;
and establishing, by the first process, a connection to the server via an interface between the first process and the server, and sending a data request that has passed two encapsulations to the server using an interaction protocol between the first process and the server.
декапсуляцию сервером запроса данных, полученного с использованием протокола взаимодействия между первым процессом и сервером, инкапсуляцию декапсулированного запроса данных с использованием протокола взаимодействия между вторым процессом и сервером;
и установление посредством сервера соединения со вторым процессом через интерфейс между вторым процессом и сервером, и отправку инкапсулированного запроса данных второму процессу с использованием протокола взаимодействия между вторым процессом и сервером.7. The method according to claim 6, in which the specified step of establishing through the server a connection with the process of the recipient application through the interface and sending data to the process of the recipient application using the interaction protocol between the process of the recipient application and the server includes:
decapsulating by the server a data request obtained using the interaction protocol between the first process and the server; encapsulating the decapsulated data request using the interaction protocol between the second process and the server;
and establishing, through the server, a connection to the second process through an interface between the second process and the server, and sending the encapsulated data request to the second process using an interaction protocol between the second process and the server.
выполнение вторым процессом первой декапсуляции над полученным запросом данных с использованием протокола взаимодействия между вторым процессом и сервером после получения запроса данных, отправленного сервером;
и выполнение вторым процессом второй декапсуляции над запросом данных, прошедшим первую декапсуляцию, с использованием протокола взаимодействия между вторым процессом и первым процессом для приема данных, отправленных первым процессом.9. The method according to claim 7, further comprising:
performing by the second process the first decapsulation on the received data request using the interaction protocol between the second process and the server after receiving the data request sent by the server;
and performing, by the second process, second decapsulation on the data request that has passed the first decapsulation, using the interaction protocol between the second process and the first process to receive data sent by the first process.
прием сервером вторых данных, возвращенных процессом приложения-получателя, с использованием протокола взаимодействия между процессом приложения-получателя и сервером, и отправку этих вторых данных процессу приложения-отправителя с использованием протокола взаимодействия между процессом приложения-отправителя и сервером. 10. The method according to any one of claims 6 to 9, further comprising:
receiving by the server the second data returned by the recipient application process using the interaction protocol between the receiving application process and the server, and sending this second data to the sending application process using the interaction protocol between the sending application process and the server.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010100988.0 | 2010-01-25 | ||
CN2010101009880A CN102137123A (en) | 2010-01-25 | 2010-01-25 | Device and method for realizing process-to-process communication of different application programs on mobile terminal |
PCT/CN2011/070358 WO2011088779A1 (en) | 2010-01-25 | 2011-01-18 | Device and method for implementing communication between processes of different application programs in mobile terminal |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2012136195A RU2012136195A (en) | 2014-03-10 |
RU2523964C2 true RU2523964C2 (en) | 2014-07-27 |
Family
ID=44296778
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2012136195/08A RU2523964C2 (en) | 2010-01-25 | 2011-01-18 | Method for inter-process interaction between different applications in mobile terminal and corresponding device |
Country Status (4)
Country | Link |
---|---|
CN (1) | CN102137123A (en) |
BR (1) | BR112012018527A2 (en) |
RU (1) | RU2523964C2 (en) |
WO (1) | WO2011088779A1 (en) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102662778A (en) * | 2012-04-28 | 2012-09-12 | 杭州格畅科技有限公司 | Callback response method of inter-application communication on online application platform, application and online application platform |
CN103677549B (en) * | 2012-09-11 | 2017-08-11 | 阿里巴巴集团控股有限公司 | A kind of data processing method and device |
CN103853621B (en) * | 2012-12-05 | 2017-10-24 | 腾讯科技(深圳)有限公司 | A kind of striding course exchange method and related terminal device |
CN103034545B (en) * | 2012-12-10 | 2016-08-03 | 上海斐讯数据通信技术有限公司 | Communication means between communications framework based on ACE and method and functional module |
CN103218267A (en) * | 2013-04-16 | 2013-07-24 | 百度在线网络技术(北京)有限公司 | Method and device for system process of terminal to distribute data to application program process |
CN105550049A (en) * | 2015-12-16 | 2016-05-04 | 汉柏科技有限公司 | Communication system and use method thereof |
CN111835864B (en) | 2016-05-11 | 2023-04-25 | 创新先进技术有限公司 | Method and system for starting application |
CN107656817A (en) * | 2016-07-25 | 2018-02-02 | 阿里巴巴集团控股有限公司 | The method and device carried out data transmission between program |
CN106254909B (en) * | 2016-08-04 | 2019-07-23 | 传线网络科技(上海)有限公司 | Distribution, operation method and the device of interaction content |
CN107979631B (en) * | 2016-10-25 | 2021-06-22 | 航天信息软件技术有限公司 | Data synchronization method and device |
CN108287723B (en) * | 2016-12-30 | 2022-07-12 | 华为技术有限公司 | Application interaction method and device, physical machine and system |
CN108664491A (en) * | 2017-03-29 | 2018-10-16 | 北京京东尚科信息技术有限公司 | Data transmission method, device and terminal device |
CN108848127B (en) * | 2018-05-23 | 2022-02-25 | 北京五八信息技术有限公司 | Data transmission method and device, computer equipment and computer readable storage medium |
CN110569069A (en) * | 2018-06-06 | 2019-12-13 | 海能达通信股份有限公司 | Configuration management method, configuration management system and device with storage function |
CN109343970B (en) * | 2018-08-17 | 2022-08-23 | 北京密境和风科技有限公司 | Application program-based operation method and device, electronic equipment and computer medium |
CN114077502A (en) * | 2020-08-14 | 2022-02-22 | 华为技术有限公司 | Method for establishing data transmission channel, terminal system and storage medium |
CN114416383A (en) * | 2021-12-09 | 2022-04-29 | 奇安信科技集团股份有限公司 | A kind of multi-process communication method and device |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5546584A (en) * | 1992-07-01 | 1996-08-13 | Lundin; Kenneth | System and method for establishing communication protocols between application programs |
CN1490724A (en) * | 2002-10-18 | 2004-04-21 | 上海贝尔有限公司 | Virtual machine for embedded systemic software development |
CN1811717A (en) * | 2006-01-10 | 2006-08-02 | 杭州东信灵通电子实业公司 | Universal interprocess communication achieving method |
RU2008116715A (en) * | 2005-10-26 | 2009-10-27 | Майкрософт Корпорейшн (Us) | STATICALLY TESTED ALLOWED INTER-PROCESS EXCHANGE ISOLATED PROCESSES |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080120426A1 (en) * | 2006-11-17 | 2008-05-22 | International Business Machines Corporation | Selective acceleration of transport control protocol (tcp) connections |
-
2010
- 2010-01-25 CN CN2010101009880A patent/CN102137123A/en active Pending
-
2011
- 2011-01-18 WO PCT/CN2011/070358 patent/WO2011088779A1/en active Application Filing
- 2011-01-18 RU RU2012136195/08A patent/RU2523964C2/en active
- 2011-01-18 BR BR112012018527A patent/BR112012018527A2/en not_active Application Discontinuation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5546584A (en) * | 1992-07-01 | 1996-08-13 | Lundin; Kenneth | System and method for establishing communication protocols between application programs |
CN1490724A (en) * | 2002-10-18 | 2004-04-21 | 上海贝尔有限公司 | Virtual machine for embedded systemic software development |
RU2008116715A (en) * | 2005-10-26 | 2009-10-27 | Майкрософт Корпорейшн (Us) | STATICALLY TESTED ALLOWED INTER-PROCESS EXCHANGE ISOLATED PROCESSES |
CN1811717A (en) * | 2006-01-10 | 2006-08-02 | 杭州东信灵通电子实业公司 | Universal interprocess communication achieving method |
Also Published As
Publication number | Publication date |
---|---|
CN102137123A (en) | 2011-07-27 |
RU2012136195A (en) | 2014-03-10 |
BR112012018527A2 (en) | 2017-06-27 |
WO2011088779A1 (en) | 2011-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2523964C2 (en) | Method for inter-process interaction between different applications in mobile terminal and corresponding device | |
US8442509B2 (en) | System and method for managing a wireless device from removable media with processing capability | |
CN103650458B (en) | The transmission method of Media Stream, device and system | |
US10635436B2 (en) | Compatibility method based on hybrid, adapter, operation device, system and computer-readable storage medium | |
KR100772175B1 (en) | Communication method in network robot system and network robot system | |
CN103176834B (en) | A method and device for calling an extended interface | |
CN111259037A (en) | Data query method and device based on rule configuration, storage medium and terminal | |
EP2429150A1 (en) | Apparatus, web service component and method based on web service | |
CN111818158B (en) | Gateway control method, device, electronic equipment and storage medium | |
CN111813724A (en) | HIDL interface adaptation system, method and corresponding equipment, storage medium | |
CN110858838A (en) | Method and apparatus for bridging communication | |
CN112769794A (en) | Data conversion method and device | |
CN106357713B (en) | Method for realizing remote procedure call, client device and server device | |
CN103561082B (en) | Compression request processing method and server | |
CN111800774A (en) | Bluetooth device control method and device and storage medium | |
CN111369237A (en) | Data processing method and device and computer storage medium | |
CN106550026B (en) | Network communication device and method | |
CN107077378A (en) | Communication method, device, electronic equipment and program product | |
CN100391150C (en) | Data transfer device and data transfer method of virtual ether net device | |
CN102932968B (en) | The method of data card and data card networking | |
CN112383617A (en) | Method, device, terminal equipment and medium for long connection | |
KR101266021B1 (en) | Apparatus and method for controlling mobile terminal in data communication system | |
CN111092916B (en) | File uploading method and device, electronic equipment and medium | |
CN114924831A (en) | Terminal simulation method and device | |
CN114500598A (en) | Equipment access method, system and proxy service equipment |