Managed application detection logic

US9703572B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9703572-B2
Application numberUS-201514731772-A
CountryUS
Kind codeB2
Filing dateJun 5, 2015
Priority dateJun 5, 2015
Publication dateJul 11, 2017
Grant dateJul 11, 2017

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.

The detection of whether a local application is managed by a management service is described. In one example, depending upon whether an installation token includes a unique token value, detection logic can determine whether an application is managed or unmanaged based on additional factors. The additional factors include whether a keychain installation token includes a unique token value, the value of the keychain installation token, and a value of a launched flag for the application. Various combinations of those factors and the identification of either a managed or unmanaged status for the application are described. Using the concepts described herein, an unmanaged application can proceed to execute with limited functionality, present a notification that it should be reinstalled by the management service, stop executing, or take other measures.

First claim

Opening claim text (preview).

Therefore, the following is claimed: 1. A non-transitory computer-readable medium embodying program code executable in at least one computing device, the program code being configured to cause the at least one computing device to at least: determine whether an installation token is present in managed configuration data for an application; execute the application as unmanaged based at least in part on a determination that the installation token is not present in the managed configuration data; and based at least in part on a determination that the installation token is present in the managed configuration data, determine whether to execute the application as managed or execute the application as unmanaged according to whether a keychain installation token is present in keychain data for the application, a value of the keychain installation token, and a value of a launched flag in user default data for the application. 2. The non-transitory computer-readable medium according to claim 1 , the program code being further configured to cause the at least one computing device to present an indication that the application is unmanaged and must be installed through a mobile device manager in response to the installation token not being present in the managed configuration data. 3. The non-transitory computer-readable medium according to claim 1 , the program code being further configured to cause the at least one computing device to at least: determine whether the keychain installation token is present in the keychain data for the application; and determine whether to execute the application as managed or execute the application as unmanaged based at least in part on whether a launched flag is set in user default data for the application and whether the keychain installation token is present in the keychain data. 4. The non-transitory computer-readable medium according to claim 3 , the program code being further configured to cause the at least one computing device to at least: determine whether the launched flag is set in the user default data for the application; execute the application as unmanaged in response to the keychain installation token not being present in the keychain data and the launched flag being set in the user default data; and copy a value of the installation token to the keychain data as the keychain installation token and set the launched flag in the user default data in response to the keychain installation token not being present in the keychain data and the launched flag not being set in the user default data. 5. The non-transitory computer-readable medium according to claim 4 , the program code being further configured to cause the at least one computing device to present an indication that the application was restored from a backup and must be installed through a mobile device manager based at least in part on a determination that the keychain installation token is not present in the keychain data and that the launched flag is set in the user default data. 6. The non-transitory computer-readable medium according to claim 3 , the program code being further configured to cause the at least one computing device to at least: determine whether a value of the installation token is equal to a value of the keychain installation token in response to a determination that the keychain installation token is present in the keychain data; and determine whether to execute the application as managed or execute the application as unmanaged based in part on whether a launched flag is set in user default data for the application and whether the value of the installation token is equal to the value of the keychain installation token. 7. The non-transitory computer-readable medium according to claim 6 , the program code being further configured to cause the at least one computing device to at least: based at least in part on a determination that the value of the installation token is not equal to the value of the keychain installation token: copy a value of the installation token to the keychain data as the keychain installation token; set the launched flag in the user default data; and execute the application as managed. 8. The non-transitory computer-readable medium according to claim 6 , the program code being further configured to cause the at least one computing device to at least: determine whether the launched flag is set in the user default data for the application; execute the application as managed based at least in part on a determination that the value of the installation token is equal to the value of the keychain installation token and that the launched flag is set in the user default data; and execute the application as unmanaged based at least in part on a determination that the value of the installation token is equal to the value of the keychain installation token and that the launched flag is not set in the user default data. 9. A non-transitory computer-readable medium embodying program code executable in at least one computing device, the program code being configured to cause the at least one computing device to at least: determine whether an installation token is present in configuration data for an application; execute the application as unmanaged based at least in part on a determination that the installation token is not present in the configuration data; determine whether a keychain installation token is present in keychain data for the application based at least in part on a determination that the installation token is present in the configuration data; and determine whether to execute the application as managed or execute the application as unmanaged based on whether a launched flag is set for the application and whether the keychain installation token is not present in the keychain data. 10. The non-transitory computer-readable medium according to claim 9 , the program code being further configured to cause the at least one computing device to at least: execute the application as unmanaged based at least in part on a determination that the keychain installation token is not present in the keychain data and that the launched flag is set; and copy a value of the installation token to the keychain data as the keychain installation token based at least in part on a determination that the keychain installation token is not present in the keychain data and that the launched flag is not set. 11. The non-transitory computer-readable medium according to claim 9 , the program code being further configured to cause the at least one computing device to determine whether to execute the application as managed based on a comparison between a value of the installation token and a value of the keychain installation token. 12. The non-transitory computer-readable medium according to claim 11 , the program code being further configured to, based on a determination that the value of the installation token is not equal to the value of the keychain installation token, cause the at least one computing device to copy a value of the installation token to the keychain data as the keychain installation token and set the launched flag. 13. The non-transitory computer-readable medium according to claim 11 , the program code being further configured to cause the at least one computing device to determine whether to execute the application as managed or execute the application as unmanaged based at least in part on a launched flag for the application and whether the value of the installation token is equal to the value of the keychain installation token. 14. The non-transitory computer-readable medium according to cla

Assignees

Inventors

Classifications

  • Selecting among different versions · CPC title

  • G06F9/448Primary

    Execution paradigms, e.g. implementations of programming paradigms · CPC title

  • G06F9/445Primary

    Program loading or initiating (bootstrapping G06F9/4401; security arrangements for program loading or initiating G06F21/57) · CPC title

  • G06F9/4421Primary

    Physics · mapped topic

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 US9703572B2 cover?
The detection of whether a local application is managed by a management service is described. In one example, depending upon whether an installation token includes a unique token value, detection logic can determine whether an application is managed or unmanaged based on additional factors. The additional factors include whether a keychain installation token includes a unique token value, the v…
Who is the assignee on this patent?
Airwatch Llc
What technology area does this patent fall under?
Primary CPC classification G06F9/448. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jul 11 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). 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).