In-app application casting

US10200464B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10200464-B2
Application numberUS-201514804696-A
CountryUS
Kind codeB2
Filing dateJul 21, 2015
Priority dateOct 2, 2012
Publication dateFeb 5, 2019
Grant dateFeb 5, 2019

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 subject disclosure relates to systems and methods for casting an application from a source device to a destination device. In particular, a process can include steps for causing a source application executing as a foreground process in an operating system of a source computing device to store state data, transmitting the state data of the source application to a set of destination computing devices, and transmitting a cast command to the destination computing device, where the cast command is configured to instruct the destination computing device to execute the source application on the destination computing device using the state data.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method comprising: receiving, in response to user input received during an execution of a source application executing as a foreground process on an operating system of a source computing device, an invocation command; in response to the invocation command: causing a casting application process to execute as a foreground process of the operating system of the source computing device and thereby cause the source application to execute as a background process of the operating system of the source computing device, and causing the source application to backup state data of the source application that indicates a set of properties of the source application execution at a first time; capturing a screenshot of the source computing device executing the source application; transmitting the state data to a set of destination computing devices via a server that synchronizes the state data with the set of destination computing devices; displaying a selection menu representing each of the set of destination computing devices using the screenshot as a background image, wherein the selection menu is provided by the casting application process executing as a foreground process; and transmitting, in response to a user selection of a destination computing device from the selection menu, a cast command to the destination computing device instructing the destination computing device to execute the source application on the destination computing device using the state data, whereby a user of the destination computing device can continue uninterrupted execution of the source application on the destination computing device at a second time. 2. The computer-implemented method of claim 1 , further comprising causing the source application to resume execution as a foreground process after transmitting the cast command to the destination computing device. 3. The computer-implemented method of claim 1 , further comprising terminating execution of the source application after transmitting the cast command to the destination computing device. 4. The computer-implemented method of claim 1 , wherein the screenshot of the source computing device is captured by the operating system of the source computing device. 5. The computer-implemented method of claim 1 , wherein the screenshot of the source computing device is captured by retrieving an image frame from a frame buffer of the source computing device. 6. The computer-implemented method of claim 1 , further comprising: determining the set of destination computing devices based on appcasting criteria, wherein the appcasting criteria comprises at least one selected from a group consisting of application availability on destination computing devices, application version compatibility on destination computing devices, user preferences for appcasting, proximity of destination computing devices, and connectivity of destination computing devices. 7. A system, comprising: a computer processor; a network adapter that facilitates communication with a server and a group of computing devices associated with a user; and a memory having instructions, which when executed by the processor, enable the processor to: cause a source application executing as a foreground process in an operating system of a source computing device to store state data of the source application; transmit the stored state data of the source application to a set of destination computing devices; display a selection menu indicating a subset of destination computing devices from among the set of destination computing devices; receive a cast selection via the selection menu, wherein the cast selection indicates a destination computing device from among the subset of destination computing devices; and transmit a cast command to the destination computing device indicated by the cast selection, wherein the cast command is configured to instruct the destination computing device to execute the source application on the destination computing device using the state data, whereby a user of the destination computing device can continue uninterrupted execution of the source application on the destination computing device. 8. The system of claim 7 , wherein the memory further includes instructions that, when executed by the processor, enable the processor to: receive an invocation command in response to user input received during execution of the source application as a foreground process; and in response to the invocation command, cause a casting application process to execute as a foreground process of the operating system, and thereby cause the source application to execute as a background process of the operating system and cause the source application to store state data of the source application. 9. The system of claim 7 , wherein the memory further includes instructions that, when executed by the processor, enable the processor to: issue a backup command, in response to user input received during execution of the source application as a foreground process, that causes the source application to back up state data of the source application. 10. The system of claim 7 , wherein the memory further includes instructions that, when executed by the processor, enable the processor to: conduct initial determinations comprising at least one selected from a group consisting of determining whether an application is executing as a foreground process, determining what application is executing as a foreground process, determining a version of an application executing as a foreground process, determining whether an application executing as a foreground process supports appcasting, and determining whether user preferences allow for appcasting of an application executing as a foreground process. 11. The system of claim 7 , wherein the memory further includes instructions that, when executed by the processor, enable the processor to: capture a display frame of the source application depicting the source application executing as a foreground process; and display the display frame as a background image for the selection menu. 12. The system of claim 7 , wherein the memory further includes instructions that, when executed by the processor, enable the processor to: determine the subset of destination computing devices based on physical proximity of each destination computing device of the set of destination computing devices to the source computing device. 13. The system of claim 7 , wherein the memory further includes instructions that, when executed by the processor, enable the processor to: determine the subset of destination computing devices based on user preferences about each destination computing device of the set of destination computing devices. 14. A non-transitory computer-readable storage medium comprising a plurality of instructions configured to execute on at least one computer processor to enable the computer processor to: cause a source application executing as a foreground process in an operating system of a source computing device to store state data of the source application; transmit the stored state data of the source application for a set of destination computing devices; display a selection menu indicating a subset of destination computing devices from among the set of destination computing devices; receive a cast selection via the selection menu, wherein the cast selection indicates a destination computing device from among the subset of destination computing devices; and transmit a cast command to the destination computing device based on the cast selection, wherein the cast command

Assignees

Inventors

Classifications

  • Interaction with lists of selectable items, e.g. menus · CPC title

  • Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity · CPC title

  • Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes · CPC title

  • H04L67/104Primary

    Peer-to-peer [P2P] networks · CPC title

  • for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · 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 US10200464B2 cover?
The subject disclosure relates to systems and methods for casting an application from a source device to a destination device. In particular, a process can include steps for causing a source application executing as a foreground process in an operating system of a source computing device to store state data, transmitting the state data of the source application to a set of destination computing…
Who is the assignee on this patent?
Razer Asia Pacific Pte Ltd
What technology area does this patent fall under?
Primary CPC classification H04L67/104. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Feb 05 2019 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).