Application-level runtime environment for executing applications native to mobile devices without full installation
AssigneeBeijing Zhanxinzhanli Information Technology Co., Ltd.
InventorsSen Hu, Jinwei Duan, Zhewu Zhou
Life of this patent
Estimating the term…
Abstract
A method for processing applications by interfacing between applications and operating systems, executing an application without full installation of the application, and extracting graphical user interface (GUI) content of the application to make the contents indexed and searchable. A system includes a computer system to execute applications in a progressive, installation-free, and/or searchable manner.
Claims14
A mobile device system having one or more processors for executing a mobile application, the mobile device system comprising:
- a sandbox runtime, running on a mobile device, configured to:
- execute the mobile application, without a full installation and an entire binary code base of the mobile application, by loading a minimum bootable subset (MBS) onto the mobile device from a server, the MBS being a partial set of application segments and the application segments formed by segmenting the binary code base of the mobile application and mapping segments of the binary code base at a binary level;
- interface between the mobile application and a host operating system of the mobile device so that the mobile application accesses the application segments, stored remotely at the server, as local resources of the mobile device, wherein interfacing between the mobile application and the host operating system of the mobile device further includes:
- providing a dynamic manifest file to the host operating system of the mobile device, wherein the dynamic manifest file includes a placeholder system defined program class used by the host operating system of the mobile device for requesting an actual system defined class required as indicated by a current user execution progress of the mobile application;
- upon determining that the current user execution progress of the mobile application indicates that the a next application segment is not in the MBS or local on the mobile device system, generate a resource request to retrieve the next application segment from the server;
- replace the placeholder system defined program class, at the mobile device, with the actual system defined class, wherein the actual system defined class corresponds to the next application segment to be accessed for execution of the mobile application, without the full installation and the entire binary code base thereof, on the mobile device;
- a graphical user interface (GUI) scanner configured to index GUI segments by:
- monitoring each application segment loaded by the sandbox runtime;
- determining whether the loaded application segments are the GUI segments;
- extracting contents of the application segments determined to be the GUI segments;
- assigning weight to each of the GUI segments;
- and
- indexing contents of the GUI segments to use the indexed GUI segments and GUI segment weights to match the mobile application with user search queries.
A method for executing on-demand mobile applications using a partial set of application segments running on a mobile device, the method comprising:
- executing a mobile application, without a full installation and an entire binary code base of the mobile application, by loading a minimum bootable subset (MBS) onto the mobile device from a server, the MBS being a partial set of application segments obtained by decoupling the mobile application, wherein the application segments are generated by segmenting the binary code base of the mobile application and mapping segments of the binary code base at a binary level;
- interfacing between the mobile application and a host operating system of the mobile device so that the mobile application accesses the application segments, stored remotely at the server, as local resources of the mobile device, wherein the interfacing between the mobile application and the host operating system of the mobile device further includes:
- providing a dynamic manifest file to the host operating system of the mobile device, wherein the dynamic manifest file includes a placeholder system defined program class used by the host operating system of the mobile device for requesting an actual system defined class required as indicated by a current user execution progress of the mobile application;
- upon determining that the current user execution progress of the mobile application indicates that a next application segment is not in the MBS or local on the mobile device system, generating a resource request to load the next application segment from the server;
- replacing the placeholder system defined program class, at the mobile device, with the actual system defined class, wherein the actual system defined class corresponds to the next application segment to be accessed for execution of the mobile application, without the full installation and the entire binary code base thereof, on the mobile device;
- and
- indexing graphical user interface (GUI) segments of the application segments by:
- monitoring each application segment loaded by a sandbox runtime;
- determining whether the loaded application segments are the GUI segments;
- extracting contents of the application segments determined to be the GUI segments;
- assigning weight to each of the GUI segments;
- and
- indexing contents of the GUI segments to use the indexed GUI segments and GUI segment weights to match the mobile application with user search queries.
Dependencies are inferred from the claim text.