IP Library Patent Application 14601759
Patent Application
App. No. 14/601,759

INJECTING FEATURES INTO AN APPLICATION

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 None
App. No.
14/601,759
Abstract

A method of injecting a feature into an application is disclosed. A definition of the feature of the application is received. It is determined that the feature is an injection feature of a view of the application. It is detected that an instance of the view of the application is being instantiated. The feature is injected into the view of the application based on the determining that the feature is the injection feature of the view of the application and the detecting that the instance of the view of the application is being instantiated.

Claims (31)

1 . (canceled)

2 . A method comprising:

receiving executable code at a client device, the executable code corresponding to an application configured to be executed on a client device;

receiving an installer at a client device, the installer selected by a game networking system based on a detection that the client device supports a capability, the installer configured to inject into a memory of the client device additional executable code that is specific to execution of the feature using the capability; and

based on a determination that the executable code has invoked the installer, using one or more processors of the client device to inject the additional code into the memory of the client device such that the client device implements the feature using the additional executable code.

3 . The method of claim 2 , wherein the installer is received in a package, the installer being one of a plurality of installers included in the package, each of the plurality of installers selected by the game networking system based on a detection of a plurality of capabilities supported by the device.

4 . The method of claim 2 , wherein the feature is one of an injection feature that includes a sub-view that is to be injected into a view of the application and an enhancement feature that includes an additional view that is replace the view of the application

5 . The method of claim 4 , wherein the injecting of the additional code into the memory of the client device includes ensuring that the application creates the view according to the additional executable code instead of the executable code.

6 . The method of 4 , wherein the invoking of the installer is based on a determination that the view is being instantiated and a detection of a correspondence between the installer and the view.

7 . The method of claim 2 , further comprising receiving a definition that associates the installer with a view of the application.

8 . The method of claim 7 , wherein the definition includes levers that specify whether the feature is an enhancement feature or an injection feature.

9 . A system comprising:

one or more modules implemented by one or more processors, the one or more modules configured to:

receive executable code at a client device, the executable code corresponding to an application configured to be executed on a client device;

receive an installer at a client device, the installer selected by a game networking system based on a detection that the client device supports a capability, the installer configured to inject into a memory of the client device additional executable code that is specific to execution of the feature using the capability; and

based on a determination that the executable code has invoked the installer, inject the additional code into the memory of the client device such that the client device implements the feature using the additional executable code.

10 . The system of claim 9 , wherein the installer is received in a package, the installer being one of a plurality of installers included in the package, each of the plurality of installers selected by the game networking system based on a detection of a plurality of capabilities supported by the device.

11 . The system of claim 9 , wherein the feature is one of an injection feature that includes a sub-view that is to be injected into a view of the application and an enhancement feature that includes an additional view that is replace the view of the application

12 . The system of claim 11 , wherein the injecting of the additional code into the memory of the client device includes ensuring that the application creates the view according to the additional executable code instead of the executable code.

13 . The system of 11 , wherein the invoking of the installer is based on a determination that the view is being instantiated and a detection of a correspondence between the installer and the view.

14 . The system of claim 9 , the one or more modules further configured to receive a definition that associates the installer with a view of the application.

15 . The system of claim 14 , wherein the definition includes levers that specify whether the feature is an enhancement feature or an injection feature.

16 . A computer readable medium, the computer readable medium not including a transitory propagating signal, the computer readable medium embodying a set of instructions that, when executed by one or more processors, cause the one or more processors to perform operations, the operations comprising:

receiving executable code at a client device, the executable code corresponding to an application configured to be executed on a client device;

receiving an installer at a client device, the installer selected by a game networking system based on a detection that the client device supports a capability, the installer configured to inject into a memory of the client device additional executable code that is specific to execution of the feature using the capability; and

based on a determination that the executable code has invoked the installer, injecting the additional code into the memory of the client device such that the client device implements the feature using the additional executable code.

17 . The computer readable medium of claim 16 , wherein the installer is received in a package, the installer being one of a plurality of installers included in the package, each of the plurality of installers selected by the game networking system based on a detection of a plurality of capabilities supported by the device.

18 . The computer readable medium of claim 16 , wherein the feature is one of an injection feature that includes a sub-view that is to be injected into a view of the application and an enhancement feature that includes an additional view that is replace the view of the application

19 . The computer readable medium of claim 18 , wherein the injecting of the additional code into the memory of the client device includes ensuring that the application creates the view according to the additional executable code instead of the executable code.

20 . The computer readable medium of 18 , wherein the invoking of the installer is based on a determination that the view is being instantiated and a detection of a correspondence between the installer and the view.

21 . The computer readable medium of claim 16 , further comprising receiving a definition that associates the installer with a view of the application.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 21, 2015
From: ORCUTT, JASON EUGENE; ELAGUIZY, AMIR
To: ZYNGA INC.
Reel/Frame 034775/0929 →