IP Library Granted Patent US 9,737,794
Granted Patent B2
US 9,737,794 · App. 14/671,195 · Granted Aug 22, 2017

Methods and systems for backward compatability using a unified stock keeping identifier

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 9,737,794
App. No.
14/671,195
Granted
Aug 22, 2017
Kind
B2
Abstract

A system, a machine-readable storage medium storing instructions, and a computer-implemented method are directed to a Migration Engine that provides for installing a unified variant of an application. The Migration Engine determines presence a stock identifier for one of the first variant and the second variant. Upon determining presence of a respective stock identifier, the Migration Engine identifies a player identifier and transmits the respective stock identifier and the player identifier to a game networking system. The Migration Engine receives application state data. The application state data is representative of a current usage by the player of a variant identified by the respective stock identifier. The Migration Engine instantiates an instance of the unified variant to provide functionality of the variant identified by the respective stock identifier, where the instance of the unified variant of the application is initialized with the received application state data.

Claims (68)

1. A computer-implemented method comprising:

installing on a mobile device a unified variant of an application, wherein the unified variant includes a first variant mode for providing functionality for a first variant of the application and a second variant mode for providing functionality for a second variant of the application, wherein the functionality of the first variant differs from the functionality for the second variant;

determining presence on the mobile device via the unified variant of the application of a stock identifier for one of the first variant and the second variant; upon determining presence of a respective stock identifier:

identifying on the mobile device via the unified variant of the application a player identifier;

transmitting the respective stock identifier and the player identifier to a game networking system;

receiving application state data from the game networking system, wherein the application state data is representative of a current usage by the player of a variant identified by the respective stock identifier;

instantiating an instance of the unified variant of the application with the received application state data, according to the first variant mode, the first variant mode providing the functionality of the first variant on the mobile device identified by the respective stock identifier, wherein the instance of the unified variant of the application is initialized with the received application state data; and

storing on the mobile device a stock identifier for the unified variant of the application.

2. The computer-implemented method of claim 1 , wherein

determining presence on the mobile device via the unified variant of the application of a stock identifier for one of the first variant and the second variant comprises:

upon determining a lack of presence of the respective stock identifier: determining a device identifier for the mobile device; transmitting the device identifier to the game networking system;

receiving from the game networking system a stock identifier representative of a respective variant of the application most recently used on the mobile device; and

instantiating an instance of the unified variant of the application to provide functionality of the respective variant of the application most recently used on the mobile device.

3. The computer-implemented method of claim 2 , wherein the respective variant of the application most recently used on the mobile device comprises an update to a variant already installed on the mobile device that has yet to be accessed by the player.

4. The computer-implemented method of claim 1 , wherein installing on a mobile device a unified variant of an application includes:

determining which of the first and second variants is installed on the mobile device; and

creating a prompt requesting a player selection to update an installed variant with the unified variant of the application.

5. The computer-implemented method of claim 4 , wherein creating a prompt requesting a player selection to update an installed variant with the unified variant of the application includes:

indicating an offered reward via the prompt in exchange for the player selection to update the installed variant.

6. The computer-implemented method of claim 1 , wherein installing on a mobile device a unified variant of an application includes:

determining which of the first and second variants is installed on the mobile device;

determining at least a portion of an installed variant on the mobile device is inoperable; and

based on determining the portion of the installed variant is inoperable, requesting the unified variant of the application from the game networking system.

7. The computer-implemented method of claim 1 , wherein the first variant includes a first functionality accessible by the player in exchange for a payment and wherein the second variant includes a second functionality accessible by the player in exchange for display of at least one advertisement on the mobile device.

8. A non-transitory machine-readable storage medium storing instructions which, when executed by one or more processors, cause the one or more processors to perform operations comprising:

installing on a mobile device a unified variant of an application, wherein the unified variant includes a first variant mode for providing functionality for a first variant of the application and a second variant mode for providing functionality for a second variant of the application, wherein the functionality of the first variant differs from the functionality for the second variant;

determining presence on the mobile device via the unified variant of the application of a stock identifier for one of the first variant and the second variant; upon determining presence of a respective stock identifier:

identifying on the mobile device via the unified variant of the application a player identifier;

transmitting the respective stock identifier and the player identifier to a game networking system;

receiving application state data from the game networking system, wherein the application state data is representative of a current usage by the player of a variant identified by the respective stock identifier;

instantiating an instance of the unified variant of the application with the received application state data, according to the first variant mode, the first variant mode providing the functionality of the first variant on the mobile device identified by the respective stock identifier, wherein the instance of the unified variant of the application is initialized with the received application state data; and

storing on the mobile device a stock identifier for the unified variant of the application.

9. The non-transitory machine-readable storage medium of claim 8 , wherein determining presence on the mobile device via the unified variant of the application of a stock identifier for one of the first variant and the second variant comprises:

upon determining a lack of presence of the respective stock identifier: determining a device identifier for the mobile device; transmitting the device identifier to the game networking system; receiving from the game networking system a stock identifier representative of a respective variant of the application most recently used on the mobile device; and

instantiating an instance of the unified variant of the application to provide functionality of the respective variant of the application most recently used on the mobile device.

10. The non-transitory machine-readable storage medium of claim 9 , wherein the respective variant of the application most recently used on the mobile device comprises an update to a variant already installed on the mobile device that has yet to be accessed by the player.

11. The non-transitory machine-readable storage medium of claim 8 , wherein installing on a mobile device a unified variant of an application includes:

determining which of the first and second variants is installed on the mobile device; and

creating a prompt requesting a player selection to update an installed variant with the unified variant of the application.

12. The non-transitory machine-readable storage medium of claim 11 , wherein creating a prompt requesting a player selection to update an installed variant with the unified variant of the application includes:

indicating an offered reward via the prompt in exchange for the player selection to update the installed variant.

13. The non-transitory machine-readable storage medium of claim 8 , wherein installing on a mobile device a unified variant of an application includes:

determining which of the first and second variants is installed on the mobile device;

determining at least a portion of an installed variant on the mobile device is inoperable; and

based on determining the portion of the installed variant is inoperable, requesting the unified variant of the application from the game networking system.

14. The non-transitory machine-readable storage medium of claim 8 , wherein the first variant includes a first functionality accessible by the player in exchange for a payment and wherein the second variant includes a second functionality accessible by the player in exchange for display of at least one advertisement on the mobile device.

15. A computer system comprising: a processor;

a memory device holding an instruction set executable on the processor to cause the computer system to perform operations comprising:

installing on a mobile device a unified variant of an application, wherein the unified variant includes a first variant mode for providing functionality for a first variant of the application and a second variant mode for providing functionality for a second variant of the application, wherein the functionality of the first variant differs from the functionality for the second variant;

determining presence on the computer system via the unified variant of the application of a stock identifier for one of the first variant and the second variant; upon determining presence of a respective stock identifier:

identifying on the computer system via the unified variant of the application a player identifier;

transmitting the respective stock identifier and the player identifier to a game networking system;

receiving application state data from the game networking system, wherein the application state data is representative of a current usage by the player of a variant identified by the respective stock identifier;

instantiating an instance of the unified variant of the application with the received application state data, according to the first variant mode, the first variant mode providing the functionality of the first variant on the mobile device identified by the respective stock identifier, wherein the instance of the unified variant of the application is initialized with the received application state data; and

storing on the computer system a stock identifier for the unified variant of the application.

16. The computer system of claim 15 , wherein determining presence on the computer system via the unified variant of the application of a stock identifier for one of the first variant and the second variant comprises:

upon determining a lack of presence of the respective stock identifier: determining a device identifier for the computer system; transmitting the device identifier to the game networking system; receiving from the game networking system a stock identifier representative of a respective variant of the application most recently used on the computer system; and

instantiating an instance of the unified variant of the application to provide functionality of the respective variant of the application most recently used on the computer system.

17. The computer system of claim 16 , wherein the respective variant of the application most recently used on the computer system comprises an update to a variant already installed on the computer system that has yet to be accessed by the player.

18. The computer system claim 15 , wherein installing on the computer system a unified variant of an application includes:

determining which of the first and second variants is installed on the computer system; and

creating a prompt requesting a player selection to update an installed variant with the unified variant of the application.

19. The computer system of claim 18 , wherein creating a prompt requesting a player selection to update an installed variant with the unified variant of the application includes:

indicating an offered reward via the prompt in exchange for the player selection to update the installed variant.

20. The computer system of claim 15 , wherein installing on the computer system a unified variant of an application includes:

determining which of the first and second variants is installed on the computer system;

determining at least a portion of an installed variant on the computer system is inoperable; and

based on determining the portion of the installed variant is inoperable, requesting the unified variant of the application from the game networking system.

Assignments (5)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded May 23, 2022
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: ZYNGA INC.
Reel/Frame 060163/0437 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Dec 14, 2020
From: ZYNGA INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 054719/0490 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Dec 11, 2020
From: BANK OF AMERICA, N.A., AS LENDER
To: ZYNGA INC.
Reel/Frame 054701/0393 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Dec 21, 2018
From: ZYNGA INC.
To: BANK OF AMERICA, N.A., AS LENDER
Reel/Frame 049147/0546 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 6, 2015
From: MACGREGOR, SCOTT D
To: ZYNGA INC.
Reel/Frame 035340/0651 →