Application program running method and device.
Abstract
The present description relates to a method and an apparatus for executing an application program, corresponding to a field of an operating system. The method includes: receiving an activation signal configured to instruct the execution of a second application program in a first application program in execution; uploading and analyzing, through the first application program, an installation package of the second application program to obtain a program component of the second application program; executing the program component of the second application program in a runtime environment provided by the first application program. The present description solves the problem that an application program can only be used if a corresponding installation package is installed,

Term
8.3 yearsleft in the term
Expires 22 January 2035.
- Priority
- Filed
- Granted
- Today
- Expires
18 claims: 4 independent, 14 dependent
- 1REIVINDICACIONES ...... 1. Un método para ejecutar un programa de aplicación en una terminal móvil, el cual comprende:recibir una señal de activación instruyendo la ejecución de un segundo programa de aplicación en un primer programa de aplicación en operación;cargar y analizar un paquete de instalación del segundo programa de aplicación para obtener un componente de programa del segundo programa de aplicación a través del primer programa de aplicación;ejecutar el componente de programa del segundo programa de aplicación en un entorno de tiempo de ejecución provisto por el primer programa de aplicación sin instalar el segundo programa de aplicación.
- 2El método según la reivindicación 1, en donde ejecutar el componente de programa del segundo programa de aplicación en un entorno de tiempo de ejecución provisto por el primer programa de aplicación comprende:determinar mediante el primer programa de aplicación el componente de programa del segundo programa de aplicación a ejecutar;iniciar mediante el primer programa de aplicación un componente de programa de entorno aislado correspondiente al componente de programa;ejecutar el componente de programa en un contexto IMPI por de tiempo de ejecución provisto programa de entorno aislado en aplicación. el componente de el primer programa de
- 3El método según la reivindicación 2, en donde ejecutar el componente de programa en un contexto provisto por el componente de programa de entorno aislado en el primer programa de aplicación comprende:llamar al componente de programa mediante el componente de programa de entorno aislado en el primer programa de aplicación usando un mecanismo de reflejo;ejecutar el componente de programa llamado en el contexto de tiempo de ejecución provisto por el componente de programa de entorno aislado en el primer programa de aplicación.
- 4El método según la reivindicación 2, en donde cargar y analizar un paquete de instalación del segundo programa de aplicación para obtener un componente de programa del segundo programa de aplicación a través del primer programa de aplicación comprende:cargar y analizar mediante el primer programa de aplicación el paquete de instalación del segundo programa de aplicación para obtener un archivo de configuración del segundo programa de aplicación;obtener mediante el primer programa de aplicación por lo menos un componente de programa en el segundo ΙΜΡΙ ΙΝΠΤΤυΤΟ MEXICANO DE LA FROFIEDAD INDUSTRIAL programa de aplicación de acuerdo con el archivo de configuración, en donde el componente de programa comprende por lo menos uno de los siguientes componentes: un componente activo, un componente de servicio, un componente proveedor de contenido o un componente receptor de transmisión.
- 5El método según la reivindicación 4, el cual además comprende:registrar mediante el primer programa de aplicación un tipo de mensaje Intent en un sistema operativo de acuerdo con el archivo de configuración, en donde el mensaje Intent es monitoreado por cada componente de programa en el segundo programa de aplicación.
- 6El método según la reivindicación 2, en donde determinar mediante el primer programa de aplicación el componente de programa del segundo programa de aplicación a ejecutar comprende:durante el inicio del segundo programa de aplicación, recibir mediante el primer programa de aplicación un componente de ejecución predeterminado retroalimentado por el segundo programa de aplicación y determinar el componente de ejecución predeterminado como el componente de programa a ejecutar.
- 7El método según la reivindicación 5, en donde determinar mediante el primer programa de aplicación el ΙΜΡΙ INSTITUTO MEXICANO OE LA «OEISDAP INDUSTRIAL componente de programa del segundo programa de aplicación a ejecutar comprende:recibir mediante el primer programa de aplicación un mensaje Intent transmitido desde el sistema operativo, en donde el mensaje Intent es consistente con el tipo de mensaje Intent registrado en el sistema operativo;determinar el componente de programa configurado para monitorear el mensaje Intent como el programa a ejecutar si, en el segundo programa de aplicación, el componente de programa configurado para monitorear el mensaje Intent no se inicia.
- 8El método según la reivindicación 5, el cual además comprende:recibir mediante el primer programa de aplicación un mensaje Intent transmitido desde el sistema operativo, en donde el mensaje Intent es consistente con el tipo de mensaje Intent registrado en el sistema operativo, y transmitir el mensaje Intent al componente de programa para procesarlo si, en el segundo programa de aplicación, se ha iniciado el componente de programa configurado para monitorear el mensaje Intent;y/u obtener mediante el primer programa de aplicación un mensaje Intent a ser enviado por un componente de programa en el segundo componente de programa y transmitir IMPI INSTITUTO MiXICANO DE LA PROPIEDAD INDUSTRIAL el mensaje Intent al sistema operativo. __________
- 9El método según cualquiera de las reivindicaciones 1 a 8, el cual además comprende:realizar una operación de administración sobre paquetes de instalación de diferentes versiones del segundo programa de aplicación mediante el primer programa de aplicación, en donde la operación de administración comprende por lo menos una de las siguientes operaciones: una operación de descarga, una operación de actualización o una operación de eliminación.
- 10Un aparato para ejecutar un programa de aplicación en una terminal móvil, el cual comprende:un módulo receptor de señal, configurado para recibir una señal de activación instruyendo la ejecución de un segundo programa de aplicación en un primer programa de aplicación en operación;un módulo de análisis de paquetes de instalación, configurado para cargar y analizar un paquete de instalación del segundo programa de aplicación para obtener un componente de programa del segundo programa de aplicación a través del primer programa de aplicación;un módulo de ejecución de programa, configurado para ejecutar el componente de programa del segundo programa de aplicación en un entorno de tiempo de ejecución provisto por el primer programa de aplicación sin 5« IMPI INSTITUTO MEXICANO Di LA PROPIEDAD INDUSTRIAL desinstalar el segundo programa de aplicación.__
- 11El aparato según la reivindicación 10, en donde el módulo de ejecución de programa comprende:un submódulo de determinación de componente, un submódulo de inicio de entorno aislado y un submódulo de ejecución de componente;el submódulo de determinación de componente está configurado para determinar mediante el primer programa de aplicación el componente de programa del segundo programa de aplicación a ejecutar;el submódulo de inicio de entorno aislado está configurado para iniciar mediante el primer programa de aplicación un componente de programa de entorno aislado correspondiente al componente de programa;el submódulo de ejecución de componente está configurado para ejecutar el componente de programa en un contexto de tiempo de ejecución provisto por el componente de programa de entorno aislado en el primer programa de aplicación.
- 12El aparato según la reivindicación 11, en donde el submódulo de ejecución de componente comprende:un submódulo de llamada y un submódulo de ejecución;el submódulo de llamada está configurado para llamar al componente de programa mediante el componente de programa de entorno aislado en el primer programa de IMPI aplicación usando un mecanismo de reflejo;el submódulo de ejecución está configurado para ejecutar el componente de programa llamado en el contexto de tiempo de ejecución provisto por el componente de programa de entorno aislado en el primer programa de aplicación.
- 13El aparato según la reivindicación 11, en donde el módulo de análisis de paquetes de instalación comprende:un submódulo de análisis de archivos y un submódulo de análisis de componentes;el submódulo de análisis de archivos está configurado para cargar y analizar mediante el primer programa de aplicación el paquete de instalación del segundo programa de aplicación para obtener un archivo de configuración del segundo programa de aplicación;el submódulo de análisis de componentes está configurado para obtener mediante el primer programa de aplicación por lo menos un componente de programa en el segundo programa de aplicación de acuerdo con el archivo de configuración, en donde el componente de programa comprende por lo menos uno de los siguientes componentes: un componente activo, un componente de servicio, un componente proveedor de contenido o un componente receptor de transmisión.
- 14El aparato según la reivindicación 13, el IMPI [ΝΓΠΤυΤΟ MEXICANO Di LA RROPIEPAD industrial cual además comprende:un módulo de registro de mensajes, configurado para registrar mediante el primer programa de aplicación un tipo de mensaje Intent en un sistema operativo de acuerdo con el archivo de configuración, en donde el mensaje Intent es monitoreado por cada componente de programa en el segundo programa de aplicación.
- 15El aparato según la reivindicación 11, en donde el submódulo de determinación de componente comprende:un primer submódulo de determinación;el primer submódulo de determinación está configurado para recibir mediante el primer programa de aplicación un componente de ejecución predeterminado retroalimentado por el segundo programa de aplicación y determinar el componente de ejecución predeterminado como el componente de programa a ejecutar, durante el inicio del segundo programa de aplicación.
- 16El aparato según la reivindicación 14, en donde el submódulo de determinación de componente comprende:un submódulo receptor de mensajes y un segundo submódulo de determinación;el submódulo receptor de mensajes está configurado para recibir mediante el primer programa de aplicación un mensaje Intent transmitido desde el sistema operativo, en donde el mensaje Intent es consistente con el IMPI INSTITUTO MEXICANO DE LA PROPIEDAD INDUSTRIAL tipo de mensaje Intent registrado;el segundo submódulo de determinación está configurado para determinar el componente de programa configurado para monitorear el mensaje Intent como el programa a ejecutar si, en el segundo programa de aplicación, el componente de programa configurado para monitorear el mensaje Intent no se inicia.
- 17El aparato según la reivindicación 14, el cual además comprende:un primer módulo transmisor, configurado para recibir mediante el primer programa de aplicación un mensaje Intent transmitido desde el sistema operativo, en donde el mensaje Intent es consistente con el tipo de mensaje Intent registrado, y transmitir el mensaje Intent al componente de programa para procesarlo si, en el segundo programa de aplicación, se ha iniciado el componente de programa configurado para monitorear el mensaje Intent;y/o un segundo módulo de transmisión, configurado para obtener mediante el primer programa de aplicación un mensaje Intent a ser enviado por un componente de programa en el segundo componente de programa y transmitir el mensaje Intent al sistema operativo.
- 18El aparato según las reivindicaciones 9 a 17, el cual además comprende:un módulo de administración de paquetes de IMPI IHSTTTVTÜ MEXICANO OE LA ntOREDA· instalación, configurado para realizar üñ'á ópéfadión de administración sobre paquetes de instalación de diferentes versiones del segundo programa de aplicación mediante el 5 primer programa de aplicación, en donde la operación de administración comprende por lo menos una de las siguientes operaciones: una operación de descarga, una operación de actualización o una operación de eliminación.
Independent claims18
270 paragraphs in 37 sections, as filed
DETAILED DESCRIPTION
Reference will now be made in detail to exemplary embodiments, examples of which are illustrated in the accompanying drawings. The following description refers to the accompanying drawings in which the same numbers in different drawings represent the same or similar elements unless otherwise represented.
52-1112-15
IMPI
ΙΝΓΠΤυΤΌ MEXICANO DI LA INPIISTIUAL PIOrlidad,
<img file="MX356175B_D0001.tif" />
mode. The implementations set forth in the following description of example modalities will not represent all implementations consistent with the description. Rather, they are only examples of apparatus and methods consistent with aspects related to the description as described in the appended claims.
First, the terms involved in the present description are presented.
The Android operating system is a free and open source Linux-based operating system produced by Google in the USA and used primarily on a mobile device. The mobile device may be a phone, a tablet PC, an electronic reader, a Moving Picture Experts Group Audio Layer III (MP3) Audio Layer player, an Audio Layer III player. Moving Picture Experts Group Audio Layer IV (MP4), a laptop computer, etc.
The installation package of an application program is a file configured to install the application program on an operating system and is usually a set of files that can be decompressed by themselves. The set includes all the files necessary to run the program
52-1112-15
IMPI
WSTRUTÚ MÍXICANO DI union IDAD iNDtrsnuAí application. On the Android operating system, the application program installation package is usually a file packaged in an apk format.
The application program can be referred to as an application. In the Android operating system, an application program includes at least one program component. The program component is classified into four groups: an activity component, a service component, a content provider component, and a broadcast receiver component.
The activity component is a component configured to interact with a user in the Android application program and provide a visual user interface for the Android application program. An Android application program can include from scratch to many components.
The service component is a component running in the background and does not provide the visual user interface in the Android application program. An Android application program can include from scratch to many service components.
The content provider component is a component configured to provide data (such as a ringtone, a wallpaper, a notebook,
<img file="MX356175B_D0002.tif" />
52-1112-15
IMPI
Mexican INSTITUTE Di LA PHOñEDAD
INOUSTIUAI
<img file="MX356175B_D0003.tif" />
addresses, etc.) for other applications or other components in the current application in the Android application program. The content provider component can package data in various formats and provide the data in a standard format to other applications or components to use.
The transmitting receiver component is a component configured to receive and respond to a transmission of a message by the operating system, which can receive a message of interest (or a predetermined message of a certain type) and then process or transmit the message to other components in the current application.
The Intent message is a message configured to implement communication between program components, where the program components can be different components in the same application or different components in different applications. The Intent message is configured to describe an action of an operation, data involved in the action, and attachments in the application program. The Android operating system is configured to find a matching program component according to the Intent message and pass the Intent message to the called program component to complete a call of the component.
52-1112-15
ΪΜΡΙ
INSTITUTO MEXICANO DE LA PIOEIEDAD INDUSTRIAL program. The Intent message is classified into two groups: an explicit Intent message and an implicit Intent message.
The explicit Intent message is an Intent message that points to a name of an object program component explicitly. For example, program component A needs to send an Intent message to call 18688888888, if program component A expects program component B to respond to the Intent message, program component A determines program component B as program component object in message Intent. After receiving the Intent message, the Android operating system delivers the Intent message to Program Component B for processing.
The implicit Intent message is an Intent message that does not point to the name of the object program component explicitly. For example, program component A needs to send the Intent message to call 18688888888, if program component A does not know which program component will respond to the Intent message, program component A cannot determine the object program component in the Intent message . After receiving the Intent message, the Android operating system looks for a pre-registered type of the Intent message monitored by each program component. If program component B is found to monitor an Intent message about a
<img file="MX356175B_D0004.tif" />
52-1112-15
IMPI
INSTITUTO MUUCANO Ot LA FROMFDAD
INDUSTRIAL
<img file="MX356175B_D0005.tif" />
phone call, the Android operating system delivers the Intent message to program component B for processing. Or the Android operating system transmits the Intent message and the transmitting receiver component that is interested in the Intent message about the phone call receives and processes the Intent message.
Fig. 1 is the flow chart showing a method for executing an application program according to an example embodiment, and the mode is described by an application example of the method for executing the application program on a mobile terminal. The method to run the application program includes the following steps.
In step S102, a trigger signal configured to instruct the execution of a second application program is received in a first executing application program.
In step S104, an installation package of the second application program is loaded and analyzed by the first application program to obtain a program component of the second application program.
In step S106, the program component of the second application program is executed in a run-time environment provided by the first application program.
52-1112-15> ara en '^ ítita
IMPI rwTrn.'Tü Mexican Oe LA PROPERTY
<img file="MX356175B_D0006.tif" />
In conclusion, with the application program method according to 4y modality, —load and analyze the installation package of the second application program in the first application program running, the program component of the second application program is obtained, and the program component of the second application program runs in the runtime environment provided by the first application program, which solves the problem that an application program can only be used if a corresponding installation package is installed, and achieves an effect that the second application program can run in the runtime environment provided by the first application program without installing the second application program.
For a better understanding refer to Fig. 2, which shows a schematic diagram illustrating a method of executing an application program according to an example mode. A first application program 220 is running on a mobile terminal and is configured to load and analyze an installation package of a second application program 240 to obtain a program component of the second application program 240. The second application program 240 includes one or more program components, and each program component
52-1112-15
<img file="MX356175B_D0007.tif" />
<sup>20</sup> IMPI οβπτυτο Mexican
K THE MOHEUAD
INDUST1UA1 can be any of the following: an activity component 242, a service component 244, a content provider component 246, or a broadcast receiver component 248. The first application program 220 then provides an isolated environment for the second program application 240. The sandbox provides a necessary context environment to execute the program component of the second application program 240 and the second application program 240 can be executed by the sandbox.
In a process of executing the second application program 240, the first application program 220 may execute the program component in the second application program 240 in accordance with an execution logic of the second application program 240. For example, when the second application program 240 is started, the first application program 220 executes a predetermined execution component of the second application program 240, in which the default execution component is typically an activity component corresponding to an interface main of the second application program 240. Also, for example, if a certain button is pressed on an interactive user interface of the second application program 240, the first application program 220 executes another activity component of the second program.
52-1112-15
IMPI
INSTITUTO MEXICANO Dt LA PROPERTY
<img file="MX356175B_D0008.tif" />
application 240 to view a following eTI ^ S ™! nt ^^ Pa? user interaction of the second application program
240.
In addition, the Android operating system or other application programs (not shown) may send an Intent message monitored by the second application program 240 to the first application program 220. After receiving the Intent message, the first application program 220 executes a corresponding program component in the second application program 240 and transmits the Intent message to the corresponding program component. The Android operating system or the other application programs may also call the content provider component 246 in the second application program 240 through the first application program 220, that is, the Android operating system or the other application programs may use the data provided by content provider component 246 in second application program 240.
The second application program 240 can send the Intent message to the Android operating system or to the other application programs via the first application program 220. After receiving the Intent message, the first application program 220 transmits the Intent message to the Android operating system. , so that
52-1112-15
ΙΜΡΙ Android operating system can proceed® * or «^ £
Try directly or pass the Intent message to other application programs for processing. The second application program 240 can also call the content provider components in other application programs via the first application program 220, that is, the second application program 240 can also use the data provided by the content provider components in the other application programs.
<img file="MX356175B_D0009.tif" />
<td></td><td>Must be added</td><td>what</td><td colspan="2">there's no need</td><td>what</td><td>the second</td>
<td>Program</td><td>of application</td><td> 240</td><td>have a</td><td colspan="2">relationship</td><td>specific</td>
<td>with the</td><td>first program</td><td>from</td><td>app</td><td> 220,</td><td>Y</td><td>I don't know</td>
<td>needs to</td><td>implement</td><td>a</td><td>protocol</td><td>neither</td><td>a</td><td>Interface</td>
between the second application program 240 and the first application program 220, as long as the second application program 240 is consistent with an application program standard of the Android operating system and the installation package of the second application program 240 is consistent with an Android OS installation package standard.
Fig. 3 is the flow chart showing a method for executing an application program according to another example embodiment. The mode is described by an application example of the method to execute
52-1112-15
ΙΜΡίβ? * ^. . , iNSTmrp? mwjCano the application program on a terminal ragjfljgjfepffefl ^ yjg There the mobile terminal can be a mobile terminal running the Android operating system. The method to run the application program includes the following steps.
In step S301, a trigger signal configured to instruct the execution of a second application program is received in a first executing application program.
The first application program is an application program installed and running on the mobile terminal. The first application program can be configured as a comprehensive application program, a game application program, an administrative application program, a system application program, and so on.
The first application program can access an installation package of the second application program on the mobile terminal. It is not necessary to install the second application program on the mobile terminal, that is, the second application program can run in a runtime environment provided by the first application program.
The mobile terminal receives the activation signal configured to instruct the execution of the second application program in the first application program in
52-1112-15
IMPIAS
INSTITUTO MEXICANO execution. The trigger signal can be clicked from a touch screen. For example, in a user interface of the first application program, an icon of the second application program may be displayed. If the icon of the second application program is clicked by a click signal received on the touch screen, the mobile terminal receives the activation signal configured to instruct the execution of the second application program.
In step S302, an installation package of the second application program is loaded and analyzed by the first application program to obtain a configuration file of the second application program.
The configuration file is a description file in the installation package of every second application program and is typically an AndroidManifest.xml file in a root directory of the installation package of the second application program. The configuration file can provide related application information in the second application program.
The mobile terminal loads the installation package of the second application program through the first application program, parses the installation package of the second application program and obtains the file from
52-1112-15
IMPI
ΙΝΓΤΤΠΓΤΟ MEXICANO, DE IA OQUEDAD configuration of the second ^ vms application program: files analyzed first. In step S303, at least one program component is obtained in the second application program by the first application program according to the configuration file.
The configuration file declares all the program components included in the second application program. The program component includes at least one of the following components: an activity component, a content provider component, or a streaming receiver component.
The mobile terminal parses the configuration file by the first application program to obtain the program component (s) of the second application program.
In step S304, an Intent message type is registered in an operating system by the first application program according to the configuration file, in which the Intent message is monitored by each program component in the second application program.
The configuration file can also declare the type of message Intent monitored by each of the program components in the second program of
52-1112-15
INSrrrVTO MLXICANO.
app. For example, the component of *<sup>1</sup> ^ g * ar ^> monitors an Intent message of type A and service component B monitors an Intent message of type B.
The mobile terminal registers the Intent message type in the operating system by the first application program according to the configuration file, in which the Intent message is monitored by each program component in the second application program.
It is worth mentioning that, when the first application program registers the type of the Intent message monitored by the program component in the second application program, a receiver registered in the Android operating system is the program component in the first application program, in place of the program component in the second application program. For example, if the activity component A in the second application program monitors the Intent message of type A, the first application program registers the Intent message of type A in the Android operating system, but the receiver of the Intent registered message of type A is the program component in the first application program.
In step S305, the program component of the second application program is executed in a run-time environment provided by the first application program.
52-1112-15
IMPI
INSTITUTO MtXICANO Dt LA PROPERTY INDUSTWAL
<img file="MX356175B_D0010.tif" />
app.
The mobile terminal executes the program component of the second application program in the runtime environment provided by the first application program. It is not necessary to run all the program components in the second application program at the same time, but only a part of all the program components need to run according to the requirements. Step S305 includes the following substeps, as shown in Fig. 4.
In step S305a, the mobile terminal determines by the first application program the program component of the second application program to be executed.
In step S305b, the mobile terminal starts by the first application program a sandbox program component corresponding to the program component.
In step S305c, the mobile terminal executes the program component in a runtime context provided by the sandbox program component in the first application program.
For step S305a, there are mainly two conditions.
First condition: when the second application program starts, the mobile terminal receives by means of
52-1112-15
IMPI
MEJUCAN DOTITUTE OF THE raontDAC
INtXISTIUAL
<img file="MX356175B_D0011.tif" />
the first application program a predetermined execution component fed back by the second application program and determines the predetermined execution component as the program component to be executed.
The default execution component is usually an activity component corresponding to the main interface of the second application program. When the second application program starts, the second application program feeds back a request to the first application program according to its own execution logic, in which the request indicates the default execution component, and then the first application program determines the default execution component as the program component of the second application program to run currently.
Second condition: the mobile terminal receives the Intent message transmitted from the operating system by the first application program, in which the Intent message is consistent with the registered type of the Intent message. If the program component configured to monitor the Intent message is not started in the second application program, the program component configured to monitor the Intent message is determined as the program component to run.
In a running process of the second program
52-1112-15 ,
IMPI
MEXICAN INSTITUTE
FROM THE ΠΙΟΡ1 IDAD, of application, it is possible that the gramá' component in the second application program, -loo prugrantas tfg system application in the Android operating system and the program components in other application programs send the Intent message to the system Android operating. If the Intent message is the Intent message monitored by the program component in the second application program, that is, the Intent message is consistent with the registered type of Intent message in step S304, the Android operating system sends the Intent message to the first application program. At this point, if the program component configured to monitor the Intent message in the second application program is not started, the first application program determines the program component configured to monitor the Intent message in the second application program as the component program to run.
For step S305b, if it is necessary to execute any program component in the second application program, the mobile terminal first starts a corresponding sandbox program in the first application program, wherein the sandbox program component is configured to provide the necessary run-time context for the program component of the second application program.
<img file="MX356175B_D0012.tif" />
52-1112-15
IMPI
<img file="MX356175B_D0013.tif" />
1NSTTTOTO MtXICANC
For example, if necessary <sup>Ma </sup>Activity component A in the second application program, Sandbox activity component A is started in the first application program. Also, for example, if service component B needs to be run in the second application program, sandbox service component B is started in the first application program. Also, for example, if it is necessary to execute the broadcast component C in the second application program, the sandbox broadcast receiver component C is started in the first application program.
In other words, when the program component is executed in the second application program, there is a corresponding sandbox program in the first application program.
Step S305c includes the following substeps.
1. The mobile terminal calls the program component in the second application program through the sandbox program component in the first application program using a mirroring mechanism.
The mirroring mechanism is a mechanism in the field of Java programming. Using the mirroring mechanism, a specified class of program components can be called in the second program of
52-1112-15
IMPIé ^
MEXICAN INSTITUTE
OF THE INTOPIETY V? - application without the first program d £<sup>DlOT</sup>& £> lic & eic> n understand the program component of the gpgnnHn prngr-ιτηι do. app.
two. The mobile terminal executes the called program component in the runtime context provided by the sandbox program component in the first application program.
In step S306, the Intent message is received and sent to the second application program by the first application program.
The mobile terminal receives and / or sends the Intent message for the second application program through the first application program.
A reception process: the mobile terminal receives the Intent message transmitted from the Android operating system by the first application program, in which the Intent message is consistent with the registered type of the Intent message, and transmits the Intent message to the program component in the second application program for processing, if a program component configured to monitor the Intent message has been started in the second application program.
For example, the first application program receives the Intent message transmitted from the Android operating system. If the message Intent is the message
52-1112-15
IMPI
MEXICAN INSTITUTE
Dt THE PROPERTY
<img file="MX356175B_D0014.tif" />
Attempt monitored by component WI transmission D in the second program isle. application, 'the sandbox transmit receiver component corresponding to the transmit receiver component D in the first application program calls an onReceive method of the transmit receiver component D, so that the transmit receiver component D can process the Intent message .
A sending process: the mobile terminal obtains by the first application program an Intent message to be sent by a program component in the second program component and transmits the Intent message to the Android operating system.
For example, if an E activity component in the second application program needs to send an Intent message, the E activity component first sends the Intent message to a sandbox activity component corresponding to the E activity component in the first application program. app, and then the sandbox activity component intercepts a SendBroadcast method from the Android operating system and transmits the Intent message to the Android operating system using the SendBroadcast method.
The above process is a process in which the second application program runs in the first
52-1112-15
MEXICAN INSTITUTE
Dt THE PROPERTY .1 ^ - application program. The second program d ^ 's'apilisien in this document has a re £ s ££ acia_general, -y.
it can refer to different application programs.
In step S307, an administration operation is performed on the installation packages of different versions of the second application program by the first application program, in which the administration operation includes at least one of the following operations: an operation download, an update operation, or a delete operation.
The mobile terminal manages a plurality of the second application programs through the first application program. For each second application program, the mobile terminal manages the installation packages of different versions of the second application program by the first application program, wherein the administration operation includes at least one of the following operations: the download operation , update operation, or delete operation.
For example, the second application program has a new version installation package, and the new version installation package has more functions. The first application program can download the installation package of the new version and update
52-1112-15
IMPI
INSTITUTO MÍX1CANO
<img file="MX356175B_D0015.tif" />
the second application program to version0A<sup>TO</sup>IN8 ^^ iAtce<sup>,</sup>»TS! K3?<sup>x </sup>automatically, which does not involve a user, that is, the user can get an update from the second application program unconsciously.
In conclusion, with the method of executing the application program according to the modality, by loading and analyzing the installation package of the second application program in the first running application program, the program component of the second application program is obtained. application, and the program component of the second application program runs in the runtime environment provided by the first application program, which solves the problem that an application program can only be used if a corresponding installation package is installed, and achieves an effect that the second application program can run in the runtime environment provided by the first application program without installing the second application program.
With the method of executing the application program according to the mode, by providing the runtime context of the corresponding program component in the second application program by the sandbox program component in the first application program, the second program of
52-1112-15
IMPI $ 5 ^ ·
MEXICAN INSTITUTE OF PROPERTY
INDUSTRIAL —— application can be executed in the runtime context provided by the first application program 'd'é', as long as the second application program is consistent with the application standard of the Android operating system. There is no need for a specific relationship between the first application program and the second application program, and there is no need to implement a specific protocol or interface between the first application program and the second application program.
With the method of running the application program according to the mode, when managing the installation packages of different versions of the second application program by the first application program, it is convenient to update the second program
<td>of application</td><td>dynamically,</td><td>which</td><td>does not involve</td><td>to the</td>
<td colspan="3">user, thus saving an operation</td><td>and an effort</td><td>from</td>
<td>learning by</td><td>part of the user.</td><td></td><td></td><td></td>
<td>In a</td><td>practical example,</td><td>the</td><td>user A is</td><td>a</td>
Elderly person who needs to make considerable learning effort to use an Android OS smartphone, or who cannot even operate such a smartphone. With a method for executing an application program provided by the above-mentioned modalities, it is possible to provide an interface of adding and removing the second application program
52-1112-15
IMPI
MEXICAN INSTITUTE OF PROPERTY
<img file="MX356175B_D0016.tif" />
using the first intelligent application program. It is only necessary that the ngna-laugh. to nail it ..n. remove the second application program in the user interface of the first application program. If it is necessary to use the second application program, the second application program can be opened in the first application program directly without installing the second application program. Also, the first application program updates the installation package of the second application program to the latest version automatically in the background. In full processing, only user A needs to learn how to add, remove, and open the second application program, which reduces user A's study cost and avoids complex operations such as installing the second application program and updating the second application program, thus greatly simplifying user operation and improving the service efficiency of the second application program.
One embodiment of an apparatus of the present disclosure is shown as follows and may be used to perform the embodiment of the method of the present disclosure. Details not described in the embodiment of the apparatus of the present invention may refer to the embodiment of the method of the present disclosure.
Fig. 5 is a block diagram illustrating
52-1112-15
IMPI
<img file="MX356175B_D0017.tif" />
INSTITUTO MIXICANO DE l --------
<img file="MX356175B_D0018.tif" />
an apparatus for executing a program of ap l'WSSre ^ or η ** - <3δ · according to an example modality, <sup>171</sup>.. aparad to run the application program can be configured as a complete mobile terminal or as a part of the mobile terminal using software, hardware or a combination of both, and the mobile terminal can be a mobile terminal running an Android operating system. The apparatus for executing the application program includes: a signal receiver module 520, an installation package analysis module 540, and an application execution module 560.
Signal receiver module 520 is configured to receive a trigger signal configured to instruct the execution of a second application program in a first running application program.
The installation package analysis module
562 it is configured to load and parse by the first application program an installation package of the second application program to obtain a program component of the second application program.
The program execution module 560 is configured to execute the program component of the second application program in a runtime environment provided by the first application program.
In conclusion, with the apparatus to execute the
52-1112-15
IMPI ^
INSTITUTO MiXICANO DE LA PROPERTY application program according to the m «? L®l? 4? Dacn — srT load and analyze the inatalarion package Hnl rnnnnrU application program in the first application program running, the component of program of the second application program, and the program component of the second application program runs in the runtime environment provided by the first application program, which solves the problem that an application program can only be used if a corresponding installation package is installed, and achieves an effect that the second application program can run in the runtime environment provided by the first application program without installing the second application program.
FIG. 6 is a block diagram illustrating an apparatus for executing an application program in accordance with another exemplary embodiment. The apparatus for executing the application program can be configured as a complete mobile terminal or as a part of the mobile terminal by means of software, hardware or a combination of both, and the mobile terminal can be a mobile terminal in which a Android operating system. The apparatus for executing the application program includes: a signal receiver module 520, an installation package analysis module 540, and a software execution module.
52-1112-15
IMPI
ΙΝΪΤΓΠΓΓ · MEXICAN OF THE «UNBUSTIUAL ÜNIBAD
<img file="MX356175B_D0019.tif" />
applications 560.
Signal receiver module 520'5 is configured to receive a trigger signal configured to instruct execution of a second application program in a first running application program.
The installation package analysis module 562 is configured to load and analyze by the first application program an installation package of the second application program to obtain a program component of the second application program.
The program execution module 560 is configured to execute the program component of the second application program in a runtime environment provided by the first application program.
Alternatively, program execution module 560 includes: component determination submodule 562, sandbox startup submodule 564, and component execution submodule 566.
The component determination submodule 562 is configured to determine by the first application program the program component of the second application program to be executed.
Sandbox startup submodule 564 is configured to start a sandbox program component through the first application program
52-1112-15
IMPI Mexican institute Dt INDUSTRIAL PROPERTY
<img file="MX356175B_D0020.tif" />
corresponding to the program component.
The component runtime submodule 566 is configured to run the program component in a runtime context provided by the sandbox program component in the first application program.
Alternatively, component runtime submodule 562 includes: a callout submodule and a runtime submodule.
The calling submodule is configured to call the program component through the sandbox program component in the first application program using a mirroring mechanism.
The execution submodule, configured to execute the called program component in the runtime context provided by the sandbox program component in the first application program.
Alternatively, the installation package analysis module 540 includes: a file analysis sub-module 542 and a component analysis sub-module 544.
The file analysis submodule 542 is configured to load and analyze the installation package of the file using the first application program.
52-1112-15
IMPI
MEXICAN INSTITUTE
Dt LA PlOritDA »INDUSTM1AL
<img file="MX356175B_D0021.tif" />
second application program to get a configuration file from the second application program.
The component analysis sub-module 544 is configured to obtain by the first application program at least one program component in the second application program according to the configuration file, wherein the program component includes at least one of the following components: an active component, a service component, a content provider component, or a streaming receiver component.
Alternatively, the apparatus further includes a message logging module 530, configured to log by the first application program a type of Intent message in an operating system according to the configuration file, in which the Intent message is monitored by each program component in the second application program.
Alternatively, component determination sub-module 562 includes: a first determination sub-module, a message receiving sub-module, and a second determination sub-module.
The first determination sub-module is configured to receive by means of the first application program a predetermined execution component
52-1112-15
ΙΜΡΙ
INSTTTUTO MEXICANO Ot LA PROPERTY INDUSTRIAL feedback from the second application program and
<img file="MX356175B_D0022.tif" />
determining the default execution component as the program component to execute, during the start of the second application program.
The message receiving sub-module is configured to receive by the first application program an Intent message transmitted from the operating system, in which the Intent message is consistent with the registered Intent message type.
The second determination sub-module is configured to determine the program component configured to monitor the Intent message as the program to run if, in the second application program, the program component configured to monitor the Intent message is not started.
Alternatively, the apparatus further includes: a first transmitter module 552, configured to receive by the first application program an Intent message transmitted from the operating system, in which the Intent message is consistent with the type of Intent message registered, and transmit the Intent message to the program component for processing if, in the second application program, the program component configured to monitor the Intent message has been started;
me
52-1112-15
IMPI
MEXICAN INSTITUTE
<img file="MX356175B_D0023.tif" />
a second transmission module SS ^ '^ neSwa ^ agwSH ^^ to obtain by means of the first application program an Intent message to be sent by a program component in the second program component and transmit the Intent message to the operating system.
Alternatively, the apparatus further includes:
an installation package management module 570, configured to perform an administration operation on the installation packages of different versions of the second application program through the first application program, wherein the administration operation includes at least one of the following operations: a download operation, an update operation, or a delete operation.
In conclusion, with the apparatus for executing the application program according to the modality, by loading and analyzing the installation package of the second application program in the first running application program, the program component of the second application program is obtained. application, and the program component of the second application program runs in the runtime environment provided by the first application program, which solves the problem that an application program can only be used if a corresponding installation package is installed, and achieves
52-1112-15
IMPI
<img file="MX356175B_D0024.tif" />
MEXICAN INSTITUTE OF UGLYDAY
INDUSTRY! An effect that the second application program can run in the runtime environment provided by the first application program without installing the second application program.
With the apparatus for executing the application program according to the modality, by providing the execution time context of the corresponding program component in the second application program by the sandbox program component in the first application program, the second application program can be executed in the runtime context by the first application program, as long as the second application program is consistent with the application standard of the Android operating system. There is no need for a specific relationship between the first application program and the second application program, and there is no need to implement a specific protocol or interface between the first application program and the second application program.
With the apparatus for executing the application program according to the modality, when managing the installation packages of different versions of the second application program by the first application program, it is convenient to update the second application program dynamically, which does not involve to the
52-1112-15
<img file="MX356175B_D0025.tif" />
user, thus saving an operation and a ccnsfe ^ o ^^ e of the user.
With respect to the apparatus in the above embodiments, the specific ways to perform the operations for individual modules therein have been described in detail in the embodiments regarding the methods for executing the application program, which will not be discussed again here. .
FIG. 7 is a block diagram illustrating an apparatus 700 for executing an application program in accordance with an exemplary embodiment. For example, device 700 can be a mobile phone, television, computer, digital broadcast terminal, messaging device, game console, tablet, medical device, exercise equipment, personal digital assistant. and the like.
Referring to Fig. 7, the device
700 It may include one or more of the following components: a processing component 702, a memory 704, a power component 706, a multimedia component 708, an audio component 710, an input / output (I / O) interface 712, a sensor component 714, and a communication component 716.
The processing component 702 typically controls the overall operations of the device 700,
52-1112-15
ΙΜΡΙ. .,., IMSTITUTU MEXICANO, such as the operations associated with visualize <WMHni¡pADl_<sup>c</sup> INDUSTRIAL telephone, data communications, camera operations
<img file="MX356175B_D0026.tif" />
and registry operations. Processing component 702 may include one or more processors 720 to execute instructions to perform all or part of the steps in the methods described above. In addition, the processing component 702 may include one or more modules that facilitate interaction between the processing 702 and other components. For example, the processing component 702 may include a multimedia module to facilitate interaction between the multimedia component 708 and the processing component.
702.
component
Memory 704 is configured to store various types of data to support operation of device 700. Some examples of such data include instructions for any application or method operated on device 700, contact information, address book data, messages, images, videos, etc. Memory 704 can be implemented using any type of volatile or non-volatile memory devices, or a combination thereof, such as static random access memory (SRAM), electrically erasable and programmable read-only memory (EPROM), memory programmable read-only (PROM), a memory of only
52-1112-15
IMPI
<img file="MX356175B_D0027.tif" />
reading (ROM), a magnetic memory, a iftSSJSEíwáuífS · a
INDUSTRIAL magnetic or optical disc.
Power component 706 provides power to various components of device 700. Power component 706 may include a power management system, one or more power supplies, and any other components associated with generating, managing, and distributing power in the system. device 700.
Multimedia component 708 includes a display that provides an output interface between device 700 and the user. In some embodiments, the display may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes the touch panel, the screen can be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to detect touches, swipes, and gestures on the touch panel. Touch sensors can not only detect a limit of a touch or slide action, but also detect a duration and pressure associated with the touch or slide action. In some embodiments, the multimedia component 708 includes a front camera and / or a rear camera. Front camera and rear camera can receive data
52-1112-15
IMPI Mexican Institute
M PTOFlETY
<img file="MX356175B_D0028.tif" />
external multimedia while the device is in operating mode, such as a photo mode or · a video mode. Each of the front and rear cameras can be a fixed optical lens system or have optical zoom and focus capabilities.
The audio component 710 is configured to output and / or input audio signals. For example, the audio component 710 includes a microphone (MIC) configured to receive an external audio signal when the device 7 00 is in operating mode, such as a call mode, a record mode, and a call recognition mode. voice. The received audio signal can further be stored in memory 704 or transmitted through communication component 716. In some embodiments, the audio component 710 further includes a speaker for outputting audio signals.
The I / O interface 712 provides an interface between the processing component 702 and peripheral interface modules, such as a keyboard, a push-wheel, buttons, and the like. Buttons may include, but are not limited to, a home screen button, a volume button, a power button, and a lock button.
Sensor component 714 includes one or more sensors to provide status evaluations of
52-1112-15
IMPI
<img file="MX356175B_D0029.tif" />
various aspects of device 700. For example, sensor component 714 may detect an open / closed state of device 700, the relative position of the components (eg. display and keyboard) of the device 700, a change in the position of the device 700 or a component of the device 700, a presence or absence of user contact with the device 700, an orientation or acceleration / deceleration of the device 700 and a change in temperature of device 700. Sensor component 714 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. Sensor component 714 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor component 714 also includes an accelerometer sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
Communication component 716 is configured to facilitate wired or wireless communication between device 700 and other devices. Device 700 can access a wireless network based on a communication standard, such as WiFi, 2G, or 3G, or a combination thereof. In an exemplary embodiment, the communication component 716 receives a signal from
52-1112-15
<img file="MX356175B_D0030.tif" />
IMPI
INSTITUTO MUICANO DE LA PROPERTY transmission or information associated with the transmission of an external transmission management system through a transmission channel. In an exemplary embodiment, communication component 716 further includes a near field communication (NFC) module to facilitate short-range communications. For example, the NFC module can be implemented based on a radio frequency identification technology (RFID), an infrared data association technology (IrDA), an ultra-wideband technology (UWB), a Bluetooth technology (BT) and others. technologies.
In exemplary embodiments, device 700 may be implemented with one or more application-specific integrated circuits (ASICs), digital signal processors (DSP), signal processing devices (DSPD), programmable logic devices (PLD), gate arrays. programmable by field (FPGA), controllers, microcontrollers, microprocessors or other electronic components, to carry out the methods described above.
In exemplary embodiments, a computer-readable non-transient storage medium is also provided including instructions, such as those included in memory 704, executable by processor 720 in device 700, to perform the above-described methods. For example, the non-transient storage medium
52-1112-15
IMPI
<img file="MX356175B_D0031.tif" />
<img file="MX356175B_D0032.tif" />
Computer readable can be a ROM ^ * ® ^ RA ^ C, a CD-ROM, a magnetic tape, a flexible dioc, LUI optical data storage device and the like.
A non-transient, computer-readable storage medium is provided in which, when instructions on the storage medium are executed by a processor of an apparatus 700, the apparatus 700 may execute a method for executing an application program provided by a modality in Fig. 1 or 3.
Other modality of description will be apparent to those skilled in the technical field, from consideration of the specification and practice of the description herein described. This application is designed to cover any variation, use or adaptation of the description following the general principles of the same and including such deviations from the present description as they are known or is a customary practice in the technical field. The specification and examples are intended to be construed as example only, with the scope and spirit of description indicated by the following claims.
It will be appreciated that the present description is not limited to the exact construction that has been described above and illustrated in the accompanying drawings, and that various modifications and changes can be made without
52-1112-15
<img file="MX356175B_D0033.tif" />
ΙΜΡΙ iN.nrruTü mrkicahq DF LA «OFIFDaD move away from the scope of it. It pretze'Sse *<sup>1</sup> The scope of the description is only MiiiiLadu in the appended claims.
52-1112-15
<img file="MX356175B_D0034.tif" />
<img file="MX356175B_D0035.tif" />
IMPI
INSTITUTO MEXICANO DC LA nOFIEDAB rNWJSTtlAl.
Contents37
54 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15 Sheet 16 Sheet 17 Sheet 18 Sheet 19 Sheet 20 Sheet 21 Sheet 22 Sheet 23 Sheet 24 Sheet 25 Sheet 26 Sheet 27 Sheet 28 Sheet 29 Sheet 30 Sheet 31 Sheet 32 Sheet 33 Sheet 34 Sheet 35 Sheet 36 Sheet 37 Sheet 38 Sheet 39 Sheet 40 Sheet 41 Sheet 42 Sheet 43 Sheet 44 Sheet 45 Sheet 46 Sheet 47 Sheet 48 Sheet 49 Sheet 50 Sheet 51 Sheet 52 Sheet 53 Sheet 54
14 members in 9 offices
Members14
| Document | Office | Kind | |
|---|---|---|---|
| CN104267977A | China | A | |
| US2016077819A1 | United States of America | A1 | |
| EP2998899A1 | European Patent Office (EPO) | A1 | |
| WO2016041312A1 | World Intellectual Property Organization (WIPO) | A1 | |
| KR20160046751A | Republic of Korea | A | |
| JP2016534487A | Japan | A | |
| RU2015113732A | Russian Federation | A | |
| JP6068736B2 | Japan | B2 | |
| MX2015003752A | Mexico | A | |
| BR112015008624A2 | Brazil | A2 | |
| CN104267977B | China | B | |
| US9870239B2 | United States of America | B2 | |
| RU2647625C2 | Russian Federation | C2 | |
| MX356175BThis record | Mexico | B |
1 legal event, as the office reported them to INPADOC
Events
| Event | Code | |
|---|---|---|
| Grant or registrationFG | FG |
Numbers
- Publication
- 356175
- Application
- 3752
Titles2
- Spanish
- METODO Y APARATO PARA EJECUTAR UN PROGRAMA DE APLICACION.
- English
- METHOD AND APPARATUS TO EXECUTE AN APPLICATION PROGRAM.
Classification
- CPC, 10
- G06F21/53
- G06F8/61
- G06F9/45504
- G06F9/45533
- G06F9/44505
- G06F9/44521
- G06F9/45529
- G06F8/70
- H04M1/724
- G06F9/445
- IPC, 4
- G06F9 445
- G06F9 48
- G06F9 455
- G06F9 54