Sign In to Follow Application
View All Documents & Correspondence

Method And System For Linking Micro Applications

Abstract: The present invention relates to sharing data between one or more micro applications of a native application on an electronic device. The invention encompasses receiving a request from a user to display data in a micro application which is stored in a container application. A connection is then created between the micro application and at least one of the other micro applications stored in the container application. A subset of data is then identified from at least one of a corresponding data set associated with the one or more other micro applications and a container data set associated with the container application based on at least one of the received request and one or more usage-related parameters. The identified subset of data is then received at said micro application from at least one of the one or more other micro applications and the container application. FIG.2

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
15 June 2017
Publication Number
12/2019
Publication Type
INA
Invention Field
COMMUNICATION
Status
Email
patent@saikrishnaassociates.com
Parent Application

Applicants

HIKE LIMITED
World Mark 1, 4th Floor, Tower A, Asset Area No. 11, Hospitality District, Indira Gandhi International Airport, New Delhi-110037, India

Inventors

1. GAURAV ARORA
World Mark 1, 4th Floor, Tower A, Asset Area No. 11, Hospitality District, Indira Gandhi International Airport, New Delhi-110037, India
2. KAVIN BHARTI MITTAL
World Mark 1, 4th Floor, Tower A, Asset Area No. 11, Hospitality District, Indira Gandhi International Airport, New Delhi-110037, India
3. RAJESH RUDRARADHYA
World Mark 1, 4th Floor, Tower A, Asset Area No. 11, Hospitality District, Indira Gandhi International Airport, New Delhi-110037, India
4. AMITABH IYER
World Mark 1, 4th Floor, Tower A, Asset Area No. 11, Hospitality District, Indira Gandhi International Airport, New Delhi-110037, India

Specification

FIELD OF THE INVENTION
The present invention relates to the field of mobile applications and more particularly to methods and systems for linking multiple micro applications within a mobile application.
BACKGROUND
This section is intended to provide information relating to the field of the invention and thus, any approach/functionality described below should not be assumed to be qualified as prior art merely by its inclusion in this section.
The past decade has seen an enormous increase in the usage of personal electronic devices such as smartphones and tablets, and a consequential increase in the number of software applications. Typically, any software application falls within one or more categories, such as social networking, health and fitness, general utilities, etc. A user may have multiple mobile applications of the one or more categories installed in his/her personal electronic device/s. However, mobile applications possess some limitations or drawbacks. Applications that provide a single functionality such as weather apps, are easy to use and manage, however, installing many such applications results in wastage of storage space. On the other hand, applications which provide multiple functionalities save storage space on the user's personal electronic device. These applications are, however, often complex and not user-friendly. In order to overcome the afore-mentioned problems, micro applications have been developed.
A micro application is typically an application with single functionality, which provides some specific content or allows users to solve a specific problem, without having to navigate through a large and complex application. A micro application may be an independent application or an application that resides within another application typically known as the master application. Specifically, when the micro application resides within a master application, the user does

not have to switch between applications to browse different types of content or to perform different functionalities.
Currently there is no mechanism or interface that provides an easy access to various micro applications in a single location. The user has to navigate through different micro applications in order to access or use the all the relevant information in the micro applications of his/her choice. Moreover, there is no technology to support the exchange of data or content between micro applications of different applications. If a user wishes to access one micro application associated with a different native/master application, the user will have to switch to the different native/master application. Hence, there is no compatibility between the micro applications of a native/master application. For example, if the user wishes to see the cricket news update while using a messaging application, he will have to close the messaging application and switch to the news/cricket news application. He may then wish to go back to the messaging application to share the cricket news data. This continuous switching between applications can be extremely tiresome and frustrating for the user.
Also, the micro applications present within the application often require the users of the application to intervene and provide explicit permission from the users to update the micro apps within the application. Such an updation may be at regular or at predefined intervals of time in order to facilitate new or advanced features offered by these micro apps within the application. Even after the updation, the process usually further requires the user to manually close and restart the application for availing the updated features of the micro application. This process requires constant user intervention and often leads to slow processing of the application. Therefore, there is currently no mechanism to dynamically update a micro application without the requirement of explicit user intervention. Also, there is currently no mechanism for updating a micro application of a native/master application without closing or reinstallation of the native application or the micro application.

Therefore, in light of the above, there exists an imperative need for a mechanism or interface that provides an easy access to various micro applications of different applications in a single location. Also, there exists a need to support exchange of data or content between micro applications to provide an easy access to data and content of all micro applications on the user's mobile device. Further, there exists a need to provide a mechanism for updating a micro application of a native/master application without closing or reinstallation of the native application or the micro application while requiring minimum user intervention.
SUMMARY OF THE INVENTION
This section is provided to introduce certain objects and aspects of the disclosed methods and systems in a simplified form that are further described below in the detailed description. This summary is not intended to identify the key features or the scope of the claimed subject matter.
In view of the shortcomings of the existing systems as discussed in the background section, it is an object of the present invention for providing systems and methods to provide an easy access to various micro applications of a native application in a single location. It is another object of the present invention to provide systems and methods to support the exchange of data or content between micro applications It is yet another object of the present invention to provide for updating a micro application of a native/master application without closing or reinstallation of the native application or the micro application while requiring minimum user intervention.
In view of the above and other objects, one aspect of the present invention relates to a method for sharing data between one or more micro applications of a native application on an electronic device. A request may be received from a user to display data in a micro application which is stored in a container application. A connection is then created between the micro application and at

least one of one or more other micro applications stored in the container application and said container application. The micro application is associated with a first data set, the container application is associated with a container data set and each of the one or more other micro applications are associated with a corresponding data set. A subset of data is identified from at least one of the corresponding data set of the one or more other micro applications and said container data set of the container application based on at least one of the received request and one or more usage-related parameters. The identified subset of data is then received at said micro application from at least one of the said one or more other micro applications and said container application.
Another aspect of the present invention relates to a system for sharing data between one or more micro applications of a native application on an electronic device, the system comprising a processor and a memory coupled to said processor. The system further comprises a communication unit configured to receive a request from a user to display data in a micro application which is stored in a container application. The system further comprises a linking unit configured to create a connection between the micro application and at least one of one or more other micro applications stored in the container application and said container application. The micro application has an associated with a first data set, the container application is associated with a container data set and each of the one or more other micro applications are associated with a corresponding data set. A subset of data is identified by a data exchange manager of the system from at least one of the corresponding data set of the one or more other micro applications and said container data set of the container application based on at least one of the received request and one or more usage-related parameters. The identified subset of data is then received at said micro application from at least one of the said one or more other micro applications and said container application.

The foregoing shall be more apparent in the following detailed description of the invention.
BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings, which are incorporated herein, and constitute a part of this disclosure, illustrate exemplary embodiments of the disclosed methods and systems in which like reference numerals refer to the same parts throughout the different drawings. Some drawings may indicate the components using block diagrams and may not represent the internal circuitry of each component. It will be appreciated by those skilled in the art that disclosure of such drawings includes disclosure of electrical components or circuitry commonly used to implement such components. The connections between the sub-components of a component have not been shown in the drawings for the sake of clarity, therefore, all sub-components shall be assumed to be connected to each other unless explicitly otherwise stated in the disclosure herein.
Figure 1 illustrates a general overview of an exemplary system for sharing data between one or more micro applications of a native application on an electronic device, in accordance with exemplary embodiments of the present invention.
Figure 2 illustrates system architecture for sharing data between one or more micro applications of a native application on an electronic device, in accordance with exemplary embodiments of the present invention.
Figure 3 illustrates a flow chart for a method of sharing data between one or more micro applications of a native application on an electronic device, in accordance with exemplary embodiments of the present invention.
Figure 4 illustrates a flowchart of a method to update at least one of the micro applications and the container application, in accordance with exemplary embodiments of the present invention.
DETAILED DESCRIPTION OF THE INVENTION

In the following description, for the purposes of explanation, numerous specific details have been set forth in order to provide a description of the invention. It will be apparent however, that the invention may be practiced without these specific details and features. Several features described hereafter can each be used independently of one another or with any combination of other features. An individual feature may not address any of the problems discussed above or might address only some of the problems discussed above.
The present invention relates to a system and method for sharing data between one or more micro applications of a native application on an electronic device. The invention encompasses receiving a request from a user to display data in a micro application which is stored in a container application within the native application. As used herein, a "container application" is a light weight virtual environment or application within a native application which comprises one or more micro applications. A connection is then created between the micro application and at least one of the other micro applications stored in the container application or the native application. The micro application is associated with a first data set, the container application is associated with a container data set and each of the one or more other micro applications are associated with a corresponding data set. Thereafter, a subset of data is identified from at least one of a corresponding data set of the other micro applications and a container data set associated with the container application based on at least one of the received request and one or more usage-related parameters. The identified subset of data is then received at said micro application from at least one of the other micro applications or the container application.
As used herein, "native application" refers to a mobile or web application used by the user for purposes such as viewing of data, exchange of messages, viewing of audio or video, creating a document, or a combination thereof. In a preferred embodiment, the native application is an instant messaging application. The

native application provides many other features such as viewing and sharing content, read news, play games, shop, make payments, and any other features as may be obvious to a person skilled in the art.
As used herein, "micro application" is typically an application with single functionality, that provides some specific content or allows users to solve a specific problem, without having to navigate through a large and complex application. A micro application is smaller in size than a native application and resides within the native application. Specifically, when the micro application resides within a native application, the user does not have to switch between applications to browse different types of content or to perform different functionalities. The micro application is configured to provide a service inside the native application to the user. Such service is always on and available to the user in multiple forms based on certain context. The "service" offered by the micro-application, inside the one or more native applications, may be a chat bot that is activated once the user sends a message pro-actively to such service, a payment service, a news service, a gaming service, a cricket score service, an e-commerce service, a social networking service, a location mapping service or any service that may be obvious to a person skilled in the art.
As used herein, "electronic device" refers to any electrical, electronic, electromechanical and computing device. Electronic devices may include but is not limited to a mobile phone, a smartphone, laptop, personal digital assistant, tablet computer, general purpose computer, or any other computing device as may be obvious to a person skilled in the art.
As used herein, a "server" includes one or more processors, wherein processor refers to any logic circuitry for processing instructions. A processor may be or may include a general purpose processor, a special purpose processor, a conventional processor, a digital signal processor, a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a

microcontroller, Application Specific Integrated Circuits, Field Programmable Gate Array circuits, any other type of integrated circuits, etc. The processor may perform signal coding data processing, input/output processing, and/or any other functionality that enables the working of the system according to the present disclosure.
As used herein, "connect", "configure", "couple" and its cognate terms, such as "connects", "connected", "configured" and "coupled" may include a physical connection (such as a wired/wireless connection), a logical connection (such as through logical gates of semiconducting device), other suitable connections, or a combination of such connections, as may be obvious to a skilled person.
As used herein, "send", "transfer", "transmit", and their cognate terms like "sending", "sent", "transferring", "transmitting", "transferred", "transmitted", etc. include sending or transporting data or information one unit, component, electronic device or server to another unit or component, wherein the content may or may not be modified before or after sending, transferring, transmitting.
Figure 1 illustrates a general overview of a system for sharing data between one or more micro applications of a native application stored on the electronic device. As shown in figure 1, the electronic device [102] comprises of a processor [110], a memory [108] and a native application [112]. The native application [112] comprises a container application [104] which further comprises of one or more micro applications [106]. The micro applications collectively have been referred to by the reference numeral [106] while individually each micro application is referred to by the reference numeral [106a], [106b], and so on. Although only one native application [112] has been shown in the electronic device [102], it shall be appreciated that the electronic device [102] may comprise of multiple native applications [112]. Further, other basic components of the electronic device [102] such as the user interface, etc. have not been shown in Fig. 1 for the sake of clarity. Although only three micro

applications [106] have been shown in Fig. 1, it shall be appreciated by persons skilled in the art that the native application [112] may comprise multiple micro applications [106].
The native application [112] is configured to support various actions of the user such as viewing of data, exchange of messages, viewing of audio or video, creating a document, etc. The native application [112] is configured to be opened or launched when the user selects the icon of the native application on the graphical user interface of the electronic device [102]. The container application [104] stored in the native application [112] is configured to act as a launcher of one or more micro applications [106]. The container application [104] is also configured to manage the memory [108] between the micro applications [106]. The memory [108] is configured to store all the data of the micro applications [106] and the container application [104]. The memory [108] may also be configured to be shared between the container application [104] and the micro applications [106] stored in the container application [104]. The memory [108] may be configured with specific instructions to manage accessibility to the memory [108], such as the memory [108] may be writable only by the micro applications stored in the container application [104] and readable by both the container application [104] and the micro applications [106] stored in the container application [104]. Also, the memory [108] may be implemented by segregation into parts where each part may be assigned to a micro application [106a] such that the micro applications [106] cannot edit/read the part of the memory [108] assigned to another micro application [106b],[106c] stored in the container application [104]. The memory [108] may be a dedicated memory of the native application [112] or a dedicated portion of the memory of the electronic device [102]. The native application [112] and the container application [104] are also connected to the processor [110] and the memory [108], however, such connections have not been shown in Fig. 1 for the sake of clarity.

Although only one electronic device is shown in Fig.l, it will be appreciated by those skilled in the art that this is only exemplary and the present disclosure encompasses the system being stored separately in multiple electronic devices, wherein the system in each of such devices enable for sharing data between one or more micro applications [106] of the native application [112] stored on the electronic device [102].
Figure 2 illustrates a system for sharing of data between micro applications [106]. The system 200 comprises at least a communication unit [200a], a linking unit [200b] and a data exchange manager [200c]. The communication unit [200a] is configured to receive input from the user to open or launch the micro application [106a] and display data in said micro application [106a]. For example, the request to open the camera micro application in messaging application may be received by the communication unit [200a]. The communication unit [200a] is configured to share said request or a part thereof with the linking unit [200b]. Further, the communication unit [200a] is also configured to share the request or a part thereof with the memory [108] for storage.
The communication unit [200a] is also configured to receive notifications from a server, wherein the server may be a third-party server or a server of the native application [112]. The notification may be for the container application [104] or any of the micro applications [106] stored in a container application [104]. The communication unit [200a] is also configured to transmit the notification to the data exchange manager [200c] for updating the micro application [106] or the container application [104] based on the received data or update in the notification.
The linking unit [200b] is configured to create a connection between a micro application [106a] selected by the user and one or more of the other micro applications [106b],[106c] stored in the container application [104]. In one embodiment, the linking unit [200b] is configured to create a connection

between a micro application [106a] selected by the user and the container application [104]. The connection is created by the linking unit [200b] by creating a link between the identifiers of the micro application [106a] and the other micro applications [106b],[106c] and/or the container application [104].
The data exchange manager [200c] is configured to identify a subset of data from a corresponding data set of the other micro application [106b], [106c] with which a connection has been made by the linking unit [200b]. In one embodiment, the data exchange manager [200c] is configured to identify a subset of data from a container data set associated with the container application [104]. For example, the data exchange manager [200c] may identify the photos which may have to be transferred to the camera micro application.
Further, the linking unit [200b] is also configured to transmit the identified subset of data to the micro application [106a] from other micro applications [106b], [106c]. In one embodiment, the linking unit [200b] is also configured to transmit an identified subset of data to the micro application [106a] selected by the user from the container application [104]. The linking unit [200b] transmits the data using the connection created between the micro application [106a] and the other micro applications [106b], [106c]. In one embodiment, the linking unit [200b] transmits the data using the connection created between the micro application [106a] and the container application [104]. For example, a connection may be created between the camera micro application selected by the user and the photos micro application by the linking unit [200b]. The transfer of photos between the camera micro application selected by the user and the photo micro application is done by the linking unit [200b].
The data exchange manager [200c] is also configured to provide at least one recommendation to the user based on the subset of data received from another micro application [106]. In an embodiment, the data exchange manager [200c] is also configured to provide at least one recommendation to the user based on the

subset of data received from the container application [104]. The data exchange manager [200c] is also configured to update the data set associated with a micro application [106a], [106b], [106c] based on the received data or update in a notification. In an embodiment, the data exchange manager [200c] is configured to update the data set associated with the container application [104] based on the received data or update in a notification.
Figure 3 illustrates an exemplary method [300] for sharing data between one or more micro applications [106] of the native application [112] stored on the electronic device [100]. The method initiates at step 300.
At step 302, the method includes receiving a request to display data in a micro application [106a]. In an embodiment, the user may first input a request to open the container application [104] in a native application [112]. The user is then displayed all the micro applications [106] stored in the container application [104] selected by the user on the graphical user interface. The user may then input a request to open one of the micro applications [106a] stored in the container application [104]. The input from the user to open at least one of a container application [104] and a micro application [106a] maybe received through a touch sensitive input on the graphical user interface or an input through a mechanical device such as a mouse, touch pad, or a button. The request to open at least one of the micro application [106a] stored in the container application [104] is received by the communication unit [200a] of the micro application [106a]. For example, the user may send a request to open the container application [104] in a native application [112] such as a messaging application, by selecting an icon of the container application [104] which is displayed on the graphical user interface of the electronic device through a touch screen. The user may then be displayed all the micro applications [106] stored in the container application [104] such as the weather micro application, the camera micro application, the photo micro application, the news micro application. The user may then send another request to display the data of the

news micro application within the native messaging application through the touch screen.
The invention encompasses the initialization of the container application [104] upon launching of the native application [112] by the user. For example, when the messaging application is opened by the user, the container application [104] within the messaging application is initialized. The initialization of the container application [104] involves the initialization of all the micro applications [106] stored in the container application [104]. In an embodiment, the container application [104] is implemented using virtual machine technology which gets initialized upon launching of the native application [102].
The invention encompasses that the container application [104] is associated with a container data set and each of the micro applications [106] stored in the container application [104] are associated with a corresponding data set stored in the memory [108]. In a preferred embodiment, the memory [108] is shared between the container application [104] and the micro applications [106] stored in the container application [104]. In an embodiment, the invention encompasses that the memory [108] may be writable only by the micro applications [106] stored in the container application [104] and readable by both the container application [104] and the micro applications [106] stored in the container application [104]. In another embodiment, the memory [108] may be segregated into parts and each part may be assigned to a micro application [106a] such that the micro applications [106] cannot edit/read the part of the memory [108] assigned to another micro application [106b], [106b] stored in the container application [104].
At initialization, the container application [104] reads into the memory [108] and determines a status of each micro application [106] stored in the container application [104]. The data stored in the micro applications [106] is then displayed to the user in a pre-defined manner. As used herein, the corresponding

data set associated with each of the micro applications [106] stored in the memory [108] comprises of the metadata of the micro application [106] such as identifier of the associated micro application [106a], status of the associated micro application [106a] and data of the associated micro application [106a]. As used herein, the "container data set" associated with the container application [104] comprises of the metadata of the container application [104] such as identifier of the container application [104], status of the container application [104], icons of all the micro applications [106], a reference to all the micro applications [106] and data sets of all the micro applications [106] stored in the container application [104]. ]. As used herein, a "status" of the micro application [106] and container application [104] may include, but not be limited to, the data stored in the memory [108] associated with the micro application [106], the data stored in the memory [108] associated with the container application [104], the version of the micro application [106] or the container application [104], the interface of the micro applications [106] and the container application [104], the values stored in the metadata of the micro applications [106] and the container application [104].
At step 304, after receiving the input from the user, a connection is then created between the micro application [106a] selected by the user and the other micro applications [106b], [106c] stored in the container application [104] by the linking unit [200b]. In a preferred embodiment, a connection is also created between the micro application [106a] selected by the user and the container application [104] by the linking unit [200b]. The invention encompasses creating the connection between the micro application [106a] and the other micro applications [106b], [106c] by linking an identifier associated with the micro application [106a] and the corresponding identifiers associated with the other micro applications [106b], [106c]. In an embodiment, the connection between the micro application [106a] and the container application [104] may be created by linking the identifier associated with the micro application [106a] and an

identifier associated with the container application [104]. For example, the news micro application selected by the user may create a connection with all the other applications stored in the container such as the cricket micro application, travel booking micro application, movie tickets booking micro application, camera micro application, photos micro application.
At step 306, a subset of data is identified by the data exchange manager [200c] from the corresponding data set of another micro application [106b], [106c] with which a connection has been made by the linking unit [200b]. In a preferred embodiment, a subset of data may be identified from the container data set of the container application [104]. The identification made by the data exchange manager [200c] is based on at least one of the received request and one or more usage-related parameters. As used herein, "usage-related parameters" include, but are not limited to any historic data identified for the micro application [106a] or the container application [104], messaging history of the user, data transmitted in last few transactions from the micro application [106a], data received from another micro application [106b], [106c] or the container application [104], any update of the data of the micro applications [106] or the container micro application [104], user preferences, usage data of the micro applications [106]. For example, a user may request to view the news related to a new cricket match in the news micro application. The news application may then create a connection between the news micro application and the cricket micro application, based on the fact that the user had recently opened the cricket micro application. The data pertaining to the updated score of the cricket match may then be identified in the data set associated with the cricket micro application. In another example, a user may request to view the tickets for a movie in the tickets booking micro application. The tickets booking micro application may then create a connection with the food delivery micro application. The updated data pertaining to the new restaurants near the movie

theatre may then be identified in the data set associated with the food delivery micro application.
At step 308, the identified subset of data is then transmitted to the micro application [106a] selected by the user from other micro applications [106b], [106c]. In a preferred embodiment, the identified subset of data may be transmitted to the micro application [106] selected by the user from the container application [104]. The data is transmitted using the connection created between the micro application [106a] and the other micro applications [106b], [106c] by linking unit [200b]. In a preferred embodiment, the data may be transmitted using the connection created between the micro application [106a] and the container application [104] by the linking unit [200b]. The identified data set is then received at the micro application [106a] selected by the user and displayed to the user in a predefined format. For example, the data pertaining to the updated score of the cricket match is displayed as an overlay card in the news micro application to the user. In an embodiment, the identified data set is then received at the micro application [106] selected by the user and displayed to the user in the native application [102]. For example, the data pertaining to the updated score of the cricket match is displayed in the input field as a message in the messaging application.
The invention encompasses providing to the user at least one recommendation based on the subset of data received from at least one other micro applications [106b], [106c] . In an embodiment, at least one recommendation may be provided to the user based on the subset of data from received from the container application [104]. The recommendation comprises of at least one of viewing the subset of data received from the other micro applications [106b], [106c] or the container application [104], updating the existing data set of a micro application [106a] or the container application [104], updating of the personalization features of a micro application [106a], updating of the personalization features of the container application [104] or updating of the

personalization features of the native application [102]. As used herein, the "personalization features" include, but are not limited to, themes, interface, colour scheme, animation, graphics, visual effects, display of icons, order of display of the micro applications in the container application, display of data of the micro application or the container application. For example, if the subset of data includes updated cricket score, then a recommendation may be provided to the user to apply the new 'IPL' theme in the native application. .
The invention further encompasses identifying a subset of data associated with the micro application [106a] selected by the user. The identification is based on at least one of the data received from other micro applications [106b], [106c], the data received from the container application [104], and one or more usage-related parameters. The identified subset of data associated with the micro application [106a] is then transmitted from the micro application [106a] to at least one of other micro applications [106b], [106c]. In an embodiment, the identified subset of data associated with the micro application [106] selected by the user is then transmitted from the micro application [106a] to the container application [104]. For example, the data pertaining to an upcoming cricket match stored in the news micro application selected by the user may be identified and then transmitted to the cricket micro application.
In one aspect of the present invention, a request may be received from the user to open the container application [104] in a native messaging application [112] by selecting an icon of the container application [104] which is displayed on the graphical user interface of the messaging application. The user may then be displayed all the micro applications [106] stored in the container application [104] such as the news micro application, legal news micro application, the weather micro application, the camera micro application, the photo micro application. The user may then send another request to display the data of the news micro application within the native messaging application through the touch screen. The news micro application selected by the user then creates a

connection with all the other applications stored in the container such as the legal news micro application, the weather micro application, the camera micro application, the photo micro application. The data pertaining to an updated legal news article may then be identified based on the request received from the user to view legal news. The identified legal news article is then received at the news micro application [106] and displayed to the user in the native messaging application [112]. The legal news article may be displayed as a recommendation to the user wherein the recommendation comprises of an option of viewing the legal news article received from the legal news micro application [106].
Figure 4 illustrates a flowchart of a method to update at least one of the micro applications [106] and the container application [104]. The method starts at 402, when a notification is received. The notification may be received through use of a mobile communications network. As used herein, a "mobile communication network", may include, but not be limited to, any telecommunication networks for transmission of data and includes, but not limited to, all internet networks such as HHTP, FTP, IEEE protocols, and radio access wireless networks such as 3G, LTE, 4G, etc. and non-internet communication networks such as CDMA, TDMA. The notification may be for any of the micro applications [106] stored in a container application [104]. In an embodiment, the notification may be for the container application [104]. The notification may comprise of a notification of availability of new data for a micro application [106], a new version for updation of a micro application [106a], a new version for updating the container application [104], updating the status of the micro application [106a], modifying the theme/interface of a micro application [106a], modifying the theme/interface of the container application [104], deletion of a micro application [106a] stored in the container application [104]. For example, a notification may be received indicating the availability of a new news article for the news micro application, or the availability of tickets relating to a new movie

for the tickets booking micro application. In another example, a notification may be received for the download of a new version of a micro application.
At step 404, the notification is analysed and availability of new data or update for the micro application [106a] is determined. In an embodiment, the availability of new data or update for the container application [104] is determined. If no new data or update is available, the method ends at 412.
At step 406, the new data or update is downloaded based on the received notification. The new data or update is downloaded and appended to the data set of a micro application [106a] based on the received notification. In an embodiment, the new data or update is downloaded in the data set of the container application [104] based on the received notification. The invention also encompasses modifying the data set by overwriting the new data or update downloaded in the previous step.
At step 408, the data set of the micro application [106a] is updated based on the received data or update in the notification. In an embodiment, the data set of the container application [104] is updated based on the received data or update in the notification. For example, a new news article available for the news micro application may be stored in the data set associated with the news application, or the availability of a new theme/interface for the container application [104] may be stored in the container data set. In another example, updation micro application [106a] by downloading of a new version of the micro application [106a] will modify the metadata stored in the data set associated with the micro application [106a]. The invention encompasses updating the micro application [106a] without the reinstallation of the container application [104]. In a preferred embodiment, the invention encompasses updating the micro application [106a] without the reinstallation of the container application [104] and the native application [112]. In a preferred embodiment, the micro application [106a] may be updated without any permission from the user. For

example, the news micro application may be updated without requiring the reinstallation of the container application [104] and the native messaging application or any user intervention.
At step 410, the container application [104] is notified of the change in the data or update of the micro application [106a] based on the received notification. The notification to the container application [104] is to notify the container application [104] to display the new data or update of the micro application [106a] in a predefined manner based on the notification. For example, the new update of the news application may involve the new application to display the news as an overlay card in the container.
In one example, a notification may be received indicating the availability of a new sticker animation for the photos micro application. The notification is analysed and availability of a new sticker animation for the photos micro application is determined. The new sticker animation is downloaded based on the received notification in the data set associated with the photos micro application. The new sticker animation available for the photos micro application is then notified to the container application [104].
In another example, a notification may be received indicating the availability of a new version for an exercise tracker micro application [106]. The notification is analysed and availability of a new version of the exercise tracker micro application is determined. The new version is downloaded based on the received notification in the data set associated with the exercise tracker micro application in the data set associated with the exercise tracker micro application. The micro application is then updated without the reinstallation of the container application and the native messaging application. The exercise tracker micro application is also updated without any permission from the user. The new version available for the exercise tracker micro application is then notified to the container application.

While the present invention has been described with reference to certain preferred embodiments and examples thereof, other embodiments, equivalents and modifications are possible and are also encompassed by the scope of the present disclosure.

We claim:
1. A method [300] for sharing data between one or more micro applications [106] of a native application [112], the method comprising,
receiving [302] a request from a user to display data in a micro application [106a], wherein
said micro application [106a] is stored in a container application [104] within said native application [112],
said micro application [106a] is associated with a first data set, and
said container application [104] is associated with a container data set;
creating [304] a connection between said micro application [106a] and at least one of one or more other micro applications [106b], [106c] and said container application [104], wherein
said one or more other micro applications [106b], [106c] are stored in said container application [104] within said native application [112], and
each of the one or more other micro applications [106b], [106c] are associated with a corresponding data set;
identifying [306] a subset of data from at least one of the corresponding data set of said one or more other micro applications [106b], [106c] and said container data set of the container application [104] based on at least one of the received request and one or more usage-related parameters; and
receiving [308], at said micro application [106a], the identified subset of data from at least one of the said one or more other

micro applications [106b], [106c] and said container application [104].
2. The method as claimed in claim 1, the method [300] further comprising,
identifying a subset of data associated with said micro application [106a] based on at least one of the received data from at least one of said one or more other micro applications [106b], [106c] and said container application [104], and one or more usage-related parameters; and
transmitting, from said micro application [106a], the identified subset of data associated with said micro application [106a] to at least one of said one or more other micro applications [106b], [106c] and said container application [104].
3. The method as claimed in claim 1, the method [300] further comprising,
receiving a notification for at least one of said micro application [106a], said one or more other micro applications [106b], [106c] and the container application [104];
updating, based on the received notification, at least one of the first data set associated with said micro application [106a], the corresponding data set associated with said one or more other micro applications [106b], [106c] and the container data set associated with the container application [104].
4. The method as claimed in claim 1, the method [300] further comprising providing to the user at least one recommendation based on the received subset of data from at least one of the said one or more other micro applications [106b], [106c] and said container application [104].
5. The method as claimed in claim 4, wherein said recommendation comprises of at least one of viewing the received subset of data, updating

the first data set associated with the micro application [106a], updating the corresponding data set associated with at least one or more other micro applications [106b], [106c], updating the container data set associated with the container application [104], updating the personalization features of at least one of said micro application [106a], said one or more micro applications [106b], [106c], said container application [104] and said native application [112].
6. The method as claimed in claim 1, wherein the said connection is created between an identifier associated with the micro application [106a] and at least one of an identifier associated with each of the one or more other micro applications [106b], [106c] and an identifier associated with the container application [104].
7. A system [200] for sharing data between one or more micro applications [106] of a native application [112], the system [200] comprising,
a processor [110],
a memory [108], coupled to the processor [110],
a communication unit [200a], coupled to the processor [110], to receive a request from a user to display data in a micro application [106a], wherein
said micro application [106a] is stored in a container application [104] within said native application [112],
said micro application [106a] is associated with a first data set stored in the memory [108], and
said container application [104] is associated with a container data set stored in the memory [108];
a linking unit [200b], coupled to the processor [110], to create a connection between said micro application [106a] and at least

one of one or more other micro applications [106b], [106c] and said container application [104], wherein
said one or more other micro applications [106b], [106c] are stored in said container application [104] within said native application [102], and
each of the one or more other micro applications [106b], [106c] are associated with a corresponding data set stored in the memory [108]; and
a data exchange manager [200c], coupled to the processor [110], to identify a subset of data from at least one of the corresponding data set of said one or more other micro applications [106b], [106c] and said container data set of the container application [104], based on at least one of the received request and one or more usage-related parameters,
wherein the linking unit [200c], is further configured to receive at said micro application [106a], the identified subset of data from at least one of the said one or more other micro applications [106b], [106c] and said container application [104].
8. The system as claimed in claim 7, wherein
the data exchange manager [200c] is further configured to identify a subset of data associated with said micro application [106a] based on at least one of the received data from at least one of said one or more other micro applications [106b], [106c] and said container application [104], and one or more usage-related parameters, and

the linking unit [200b] is further configured to transmit, from said micro application [106a], the identified subset of data associated with said micro application [106a] to at least one of said one or more other micro applications [106b], [106c] and said container application [104].
9. The system as claimed in claim 7, wherein
the communication unit [200a] is further configured to receive a notification for at least one of said micro application [106a], said one or more other micro applications [106b], [106c] and the container application [104], and
the data exchange manager [200c] is further configured to update at least one of the first data set associated with said micro application [106a], the corresponding data set associated with said one or more other micro applications [106b], [106c] and the container data set associated with the container application [104].
10. The system as claimed in claim 7, the system further configured to
provide to the user, by the communication unit [200a], at least one
recommendation based on the received subset of data from at least one
of the said one or more other micro applications [106b], [106c] and said
container application [104].

Documents

Application Documents

# Name Date
1 Form 3 [15-06-2017(online)].pdf 2017-06-15
2 Description(Provisional) [15-06-2017(online)].pdf 2017-06-15
3 201711021030-FORM-26 [13-09-2017(online)].pdf 2017-09-13
4 201711021030-Power of Attorney-150917.pdf 2017-09-20
5 201711021030-Correspondence-150917.pdf 2017-09-20
6 201711021030-Proof of Right (MANDATORY) [15-12-2017(online)].pdf 2017-12-15
7 201711021030-Proof of Right (MANDATORY) [28-12-2017(online)].pdf 2017-12-28
8 201711021030-OTHERS-291217.pdf 2018-01-05
9 201711021030-OTHERS-291217-.pdf 2018-01-05
10 201711021030-OTHERS-291217--.pdf 2018-01-05
11 201711021030-Correspondence-291217.pdf 2018-01-05
12 201711021030-RELEVANT DOCUMENTS [13-06-2018(online)].pdf 2018-06-13
13 201711021030-ENDORSEMENT BY INVENTORS [13-06-2018(online)].pdf 2018-06-13
14 201711021030-DRAWING [13-06-2018(online)].pdf 2018-06-13
15 201711021030-COMPLETE SPECIFICATION [13-06-2018(online)].pdf 2018-06-13
16 201711021030-Changing Name-Nationality-Address For Service [13-06-2018(online)].pdf 2018-06-13