IP Library Granted Patent US 11,681,816
Granted Patent B1
US 11,681,816 · App. 17/935,056 · Granted Jun 20, 2023

Private session for mobile application

Inventors: Jonas Hinn (Evanston, IL); Gary Anderson (San Mateo, CA)
Assignee: OSOM PRODUCTS, INC.
G06F21/62G06F21/604G06F2221/2149
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,681,816
App. No.
17/935,056
Granted
Jun 20, 2023
Kind
B1
Abstract

A mobile device can receive input to execute a target application in a private session. The target application is a native application for a mobile platform of the mobile device. The private session is a native function of the mobile device configured to isolate data of the target application. In response to the input, the mobile device can configure a local resource of the mobile device to support the target application in the private session, instantiate a procedure that utilizes the local resource to isolate the data of the target application while in the private session, and execute the target application in the private session on the mobile device. The operation of the private session is transparent and undetectable to the target application.

Claims (98)

1. A mobile device comprising:

at least one hardware processor; and

at least one non-transitory memory storing instructions, which, when executed by the at least one hardware processor, cause the mobile device to:

receive a first input to execute a target application in a private session on the mobile device,

wherein the target application is a native application for a mobile platform of the mobile device, and

wherein the private session is a native function of the mobile device configured to isolate data of the target application;

in response to the first input:

configure a local resource of the mobile device to support the target application in the private session;

instantiate a procedure that utilizes the local resource to isolate the data of the target application while in the private session; and

execute the target application in the private session on the mobile device, wherein operation of the private session is transparent to the target application;

receive a second input to switch the target application from executing in the private session to executing in a non-private session; and

in response to the second input:

reconfigure the local resource to support the target application in the non-private session; and

terminate the procedure that utilizes the local resource to isolate the data of the target application while in the private session.

2. The mobile device of claim 1 caused to:

receive a third input to terminate the target application executing on the mobile device; and

in response to the third input, remove the data of the target application from a memory of the mobile device.

3. The mobile device of claim 1 , wherein the procedure that utilizes the memory causes the mobile device to:

create a private space in the memory when the private session is established;

store the data of the target application in the private space while the target application is hosted in the private session; and

terminate the private space when the private session terminates.

4. The mobile device of claim 1 , wherein the local resource includes a hardware processor, and wherein the procedure that utilizes the hardware processor causes the mobile device to:

tag the data of the target application while in the private session;

store the tagged data at a memory of the mobile device; and

in response to terminating the private session, automatically remove the tagged data that is stored in the memory of the mobile device.

5. The mobile device of claim 1 , wherein both the private session and a non-private session are undetectable to the target application.

6. The mobile device of claim 1 caused to:

receive another input configuring a visual indication indicating that the target application is hosted in the private session,

wherein control of the visual indication is independent of the target application;

when the target application is hosted in the private session, present, on the mobile device, an interface of the target application including the visual indication; and

when the target application is in a non-private session, present, on the mobile device, an interface of the target application without the visual indication.

7. The mobile device of claim 1 further caused to:

detect a secondary application associated with an operation of the target application,

wherein the secondary application is a native application of the mobile platform; and

pull the secondary application in the private session with the target application,

wherein the private session is configured to isolate data of the target application and the secondary application.

8. A mobile device comprising:

at least one hardware processor; and

at least one non-transitory memory storing instructions, which, when executed by the at least one hardware processor, cause the mobile device to:

receive a first input to execute a target application in a private session on the mobile device,

wherein the target application is a native application for a mobile platform of the mobile device, and

wherein the private session is a native function of the mobile device configured to isolate data of the target application;

in response to the first input:

configure a local resource of the mobile device to support the target application in the private session;

instantiate a procedure that utilizes the local resource to isolate the data of the target application while in the private session; and

execute the target application in the private session on the mobile device,

wherein operation of the private session is transparent to the target application, and

wherein the local resource and the procedure are configured based on a model for the target application that is trained based on data of one or more mobile devices, one or more applications that have a characteristic in common with the target application, or one or more native applications.

9. The mobile device of claim 8 , further caused to:

retrieve metadata about the target application from an app store from which the target application was downloaded to the mobile device,

wherein the metadata includes:

a source or creator of the target application,

a date on which the target application was made publicly available on the app store,

a version of the target application,

a popularity rank of the target application relative to other applications, or

a category of the target application designated by the app store from among multiple categories; and

generate the model for the target application based on the metadata.

10. The mobile device of claim 8 , further caused to:

determine a characteristic of the target application based on an analysis of the target application and related data including a utilization metric of the target application or a type of data handled by the target application; and

generate the model for the target application based on the characteristic.

11. A method performed by an endpoint device, the method comprising:

receiving a first command to execute a native application on the endpoint device in a private session,

wherein the private session is a native function that is transparent to the native application, and

wherein the native application is configured to present an interface on a display of the endpoint device;

in response to the first command, instantiating a procedure that utilizes a resource of the endpoint device to isolate data of the native application;

executing the native application in the private session and including display of the interface with a visual indication,

wherein the visual indication is predefined by a user of the endpoint device to enable authenticity of the private session by the user,

receiving a second command to switch the native application to run on the endpoint device in a non-private session; and

in response to the second command:

terminating the procedure that utilizes a resource of the endpoint device to isolate data of the native application; and

removing the visual indication of the user interface of the native application.

12. The method of claim 11 further comprising, prior to receiving the command to execute the native application:

receiving a user input selecting one or more features that define the visual indication,

wherein the one or more features include a graphical object added to the interface or a change to content of the interface presented only while the native application is executing in the private session; and

associating the visual indication with the native application,

wherein the user interface including the visual indication is presented while the native application is executing in the private session, and

wherein the interface without the visual indication is presented while the native application is executing in a non-private session.

13. The method of claim 11 further comprising:

receiving a user input that defines a new visual indication for the native application; and

associating the new visual indication with the native application to present the interface including the new visual indication while the native application is executing in the private session.

14. The method of claim 11 , wherein the visual indication is undetectable to the native application executing in the private session.

15. A computer-readable storage medium, excluding transitory signals and carrying instructions, which, when executed by at least one data processor of a system, cause the system to:

obtain data about one or more native applications stored on an app store,

wherein the data includes metadata of the one or more native applications and data indicative of characteristics of the native applications;

generate a model for a particular native application based on the data obtained about the one or more native applications;

wherein the model is independent of the particular native application and includes a setting that configures a particular endpoint device to support the particular native application in a private session, and

wherein the private session is a native function of the particular endpoint device and is configured to isolate data of the particular native application; and

exporting the model to the particular endpoint device to execute the native application in a private session,

wherein the private session is transparent to the particular native application.

16. The computer-readable storage medium of claim 15 further comprising causing the system to:

retrieve data generated at the particular endpoint device; and

update the model based on the data retrieved from the particular endpoint device.

17. The computer-readable storage medium of claim 15 :

wherein the model is generated based on data of a group of native applications similar to the particular native application, and

wherein the similarity between the group of native applications and the particular native application is based on:

a common application category as indicated in the app store;

a common application type having different versions; or

a common source or creator.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2025
From: SOLANA LABS, INC.
To: SOLANA MOBILE INC.
Reel/Frame 070861/0928 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 1, 2025
From: OSOM PRODUCTS, INC.
To: SOLANA LABS, INC.
Reel/Frame 070688/0873 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2023
From: HINN, JONAS; ANDERSON, GARY
To: OSOM PRODUCTS, INC.
Reel/Frame 062451/0376 →