Wrapping an application with field-programmable business logic

US2016283198A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016283198-A1
Application numberUS-201514671351-A
CountryUS
Kind codeA1
Filing dateMar 27, 2015
Priority dateOct 16, 2012
Publication dateSep 29, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Systems, methods, and computer-readable media for wrapping an application with field-programmable business logic are presented. In some embodiments, a computing device may load application code of a mobile application. Subsequently, the computing device may modify the application code to wrap the application with an application wrapper that is configured to manage execution of the application based on one or more policy files and configured to intercept one or more functions of the application code, where the one or more policy files each define one or more access controls that are enforced by a device management system on one or more user devices. Subsequently, the computing device may create a library file comprising field-programmable business logic defining implementation code linked to one or more of the functions intercepted by the wrapper. The computing device may then provide the wrapped application and the library file to at least one user device.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method comprising: loading, by a computing device, application code of a mobile application; modifying, by the computing device, the application code to wrap the application with an application wrapper that is configured to manage execution of the application based on one or more policy files and configured to intercept one or more functions of the application code, wherein the one or more policy files each define one or more access controls that are enforced by a device management system on one or more user devices; creating, by the computing device, a library file comprising field-programmable business logic defining implementation code linked to one or more of the functions intercepted by the wrapper; and providing, by the computing device, the wrapped application and the library file to at least one user device. 2 . The method of claim 1 , wherein one or more other application codes are modified with one or more other wrappers configured to manage execution of one or more other applications, and wherein the implementation code linked to one or more of the functions are intercepted by the one or more other wrappers. 3 . The method of claim 1 , wherein modifying the application code comprises adding at least one stub function to the application wrapper, the at least one stub function referencing the implementation code provided in the library file. 4 . The method of claim 1 , wherein modifying the application code comprises renaming a function defined in an application programming interface used by the application to cause execution of at least a portion of the implementation code defined in the field programmable business logic. 5 . The method of claim 1 , wherein modifying the application code comprises inserting at least one application hook into the application, the at least one application hook causing execution of a portion of the implementation code defined in the field programmable business logic. 6 . The method of claim 1 , further comprising: after providing the wrapped application and the library file to the at least one user device, creating, by the computing device, an updated library file, wherein the updated library file comprises updated field-programmable business logic defining updated implementation code linked to functions intercepted by the wrapper; and providing, by the computing device, the updated library file to the at least one user device to cause the application wrapper to use the updated business logic to manage execution of the wrapped application. 7 . The method of claim 6 , wherein the updated library file is provided to the at least one user device in response to determining that the at least one user device is using outdated business logic. 8 . The method of claim 2 , further comprising: after providing the wrapped application and the library file to the at least one user device, creating, by the computing device, an updated library file, wherein the updated library file comprises updated field-programmable business logic defining updated implementation code linked to functions intercepted by the wrapper; and providing, by the computing device, the updated library file to the at least one user device to cause the application wrapper and the one or more other wrappers to use the updated business logic to manage execution of the wrapped application and the one or more other applications. 9 . One or more non-transitory computer-readable media storing instructions that, when executed by at least one computing device, cause the at least one computing device to: load application code of a mobile application; modify the application code to wrap the application with an application wrapper that is configured to manage execution of the application based on one or more policy files and configured to intercept one or more functions of the application code, wherein the one or more policy files each define one or more access controls that are enforced by a device management system on one or more user devices; create a library file comprising field-programmable business logic defining implementation code linked to one or more of the functions intercepted by the wrapper; and provide the wrapped application and the library file to at least one user device. 10 . The one or more non-transitory computer-readable media of claim 9 , wherein one or more other application codes are modified with one or more other wrappers configured to manage execution of one or more other applications, and wherein the implementation code linked to one or more of the functions are intercepted by the one or more other wrappers. 11 . The one or more non-transitory computer-readable media of claim 9 , wherein modifying the application code comprises adding at least one stub function to the application wrapper, the at least one stub function referencing the implementation code provided in the library file. 12 . The one or more non-transitory computer-readable media of claim 9 , wherein modifying the application code comprises renaming a function defined in an application programming interface used by the application to cause execution of at least a portion of the implementation code defined in the field programmable business logic. 13 . The one or more non-transitory computer-readable media of claim 9 , wherein modifying the application code comprises inserting at least one application hook into the application, the at least one application hook causing execution of a portion of the implementation code defined in the field programmable business logic. 14 . The one or more non-transitory computer-readable media of claim 9 , having additional instructions stored thereon that, when executed by the at least one computing device, further cause the at least one computing device to: after providing the wrapped application and the library file, create an updated library file, wherein the updated library file comprises updated field-programmable business logic defining updated implementation code linked to functions intercepted by the wrapper; and provide the updated library file to the at least one user device to cause the application wrapper to use the updated business logic to manage execution of the wrapped application. 15 . The one or more non-transitory computer-readable media of claim 14 , wherein the updated library file is provided to the at least one user device in response to determining that the at least one user device is using outdated business logic. 16 . A computing device, comprising: at least one processor; and memory storing computer-readable instructions that, when executed by the at least one processor, cause the computing device to: receive an indication of an update to a first library file, wherein the first library file comprises field programmable business logic defining implementation code linked to one or more functions intercepted by a wrapper, the wrapper being configured to manage execution of a mobile application on the computing device based on one or more policy files defining one or more access controls that are enforced by a device management system on the computing device; download an updated library file in response to receiving the indication, wherein the first library file comprises updated field programmable business logic defining updated implementation code linked to functions intercepted by the wrapper; and replace the first library file with the updated library file to cause the wrapper to use the updated field programmable business logic when managing the execution of the mobile application.

Assignees

Inventors

Classifications

  • Updates (security arrangements therefor G06F21/57) · CPC title

  • Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading · CPC title

  • G06F8/30Primary

    Creation or generation of source code · CPC title

  • Configuring for program initiating, e.g. using registry, configuration files · CPC title

  • G06Q10/10Primary

    Office automation; Time management · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016283198A1 cover?
Systems, methods, and computer-readable media for wrapping an application with field-programmable business logic are presented. In some embodiments, a computing device may load application code of a mobile application. Subsequently, the computing device may modify the application code to wrap the application with an application wrapper that is configured to manage execution of the application b…
Who is the assignee on this patent?
Citrix Systems Inc
What technology area does this patent fall under?
Primary CPC classification G06F8/30. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Sep 29 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).