IP Library Granted Patent US 10,979,292
Granted Patent B2
US 10,979,292 · App. 16/825,333 · Granted Apr 13, 2021

Adaptive deployment of applications for mobile devices

Inventors: Sean N. Byrnes (San Francisco, CA); Gabriel J. Vanrenen (San Francisco, CA); Karl B. Harris (Austin, TX)
Assignee: VERIZON MEDIA INC.
H04L41/0816H04L29/04H04L67/303H04L67/34H04L67/02
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 10,979,292
App. No.
16/825,333
Granted
Apr 13, 2021
Kind
B2
Abstract

A method of installing an application on a mobile user device is disclosed. A request for the application is received. Information is received related to the mobile user device on which the application is to be installed. A version of an application is determined to send in response to the request for the application and the information related to the mobile user device. The application version is sent to the mobile user device. Information is received related to the performance of the application version. Adapted application determination information is stored related to at least a portion of the received information.

Claims (65)

1. A method comprising:

receiving, by a computing device, a request from a user of a mobile device regarding installing a version of an application on the mobile device;

in response to receiving the request, interrogating, by the computing device, the mobile device by obtaining a response from the mobile device during the interrogation;

creating, by the computing device, based on the response of the interrogation, a metadata signature for the mobile device;

retrieving, by the computing device, a configuration of software components from an application component data store, the configuration of software components comprising multiple software components capable of being assembled into variations of the application;

mapping, by the computing device, the metadata signature to the configuration of software components;

compiling, by the computing device, the configuration of software components into a device version of the application, the device version being customized to the mobile device based on the metadata signature; and

communicating, by the computing device, the device version of the application to the mobile device for installation on the mobile device.

2. The method of claim 1 , further comprising:

determining, by the processor, if the mobile device is known or unknown based on existence of an entry for the metadata signature of the mobile device in a device database;

loading, by the processor, a corresponding device template that comprises the configuration of software components predetermined as currently optimal for the mobile device if it is determined that the mobile device is known; and

adding, by the processor, the configuration of software components based on the metadata signature if it is determined that the mobile device is unknown.

3. The method of claim 1 , further comprising:

analyzing the response based on said interrogation, and based on said analysis, determining whether fundamental requirements are available on the mobile device, said metadata signature is based on said determination.

4. The method of claim 1 , further comprising:

analyzing the response based on said interrogation, and based on said analysis, determining system resources of the mobile device, said metadata signature is based on said determination.

5. The method of claim 4 , wherein said system resources comprise information indicating a device model, carrier information of the mobile device and memory allocation on the mobile device.

6. The method of claim 1 , further comprising:

receiving an error message indicating that installation of the device version has failed.

7. The method of claim 6 , further comprising:

identifying a different port on the mobile device, and retrying said communication.

8. The method of claim 6 , further comprising:

identifying a previously dated version of the device version; and

communicating said identified version to the mobile device for installation.

9. The method of claim 1 , further comprising:

assigning, by the processor, a user identifier for the user of the mobile device; and

transmitting, by the processor, a customized pointer for the application to be installed on the mobile device, the customized pointer comprising the user identifier.

10. The method of claim 1 , wherein the device version of the application comprises a customized compiled executable file customized for execution on the mobile device.

11. A non-transitory computer-readable storage medium tangibly encoded with computer-executable instructions, such that when a computing device executes the instructions, a method is performed comprising:

receiving, by the computing device, a request from a user of a mobile device regarding installing a version of an application on the mobile device;

in response to receiving the request, interrogating, by the computing device, the mobile device by obtaining a response from the mobile device during the interrogation;

creating, by the computing device, based on the response of the interrogation, a metadata signature for the mobile device;

retrieving, by the computing device, a configuration of software components from an application component data store, the configuration of software components comprising multiple software components capable of being assembled into variations of the application;

mapping, by the computing device, the metadata signature to the configuration of software components;

compiling, by the computing device, the configuration of software components into a device version of the application, the device version being customized to the mobile device based on the metadata signature; and

communicating, by the computing device, the device version of the application to the mobile device for installation on the mobile device.

12. The non-transitory computer-readable storage medium of claim 11 , further comprising:

determining, by the processor, if the mobile device is known or unknown based on existence of an entry for the metadata signature of the mobile device in a device database;

loading, by the processor, a corresponding device template that comprises the configuration of software components predetermined as currently optimal for the mobile device if it is determined that the mobile device is known; and

adding, by the processor, the configuration of software components based on the metadata signature if it is determined that the mobile device is unknown.

13. The non-transitory computer-readable storage medium of claim 11 , further comprising:

analyzing the response based on said interrogation, and based on said analysis, determining whether fundamental requirements are available on the mobile device, said metadata signature is based on said determination.

14. The non-transitory computer-readable storage medium of claim 11 , further comprising:

analyzing the response based on said interrogation, and based on said analysis, determining system resources of the mobile device, said metadata signature is based on said determination, wherein said system resources comprise information indicating a device model, carrier information of the mobile device and memory allocation on the mobile device.

15. The non-transitory computer-readable storage medium of claim 11 , further comprising:

receiving an error message indicating that installation of the device version has failed.

16. The non-transitory computer-readable storage medium of claim 15 , further comprising:

identifying a different port on the mobile device, and retrying said communication.

17. The non-transitory computer-readable storage medium of claim 15 , further comprising:

identifying a previously dated version of the device version; and

communicating said identified version to the mobile device for installation.

18. The non-transitory computer-readable storage medium of claim 11 , further comprising:

assigning, by the processor, a user identifier for the user of the mobile device; and

transmitting, by the processor, a customized pointer for the application to be installed on the mobile device, the customized pointer comprising the user identifier.

19. The non-transitory computer-readable storage medium of claim 11 , wherein the device version of the application comprises a customized compiled executable file customized for execution on the mobile device.

20. A computing device comprising:

a processor; and

a non-transitory computer-readable storage medium for tangibly storing thereon program logic for execution by the processor, the program logic comprising:

logic executed by the processor for receiving a request from a user of a mobile device regarding installing a version of an application on the mobile device;

logic executed by the processor for in response to receiving the request, interrogating the mobile device by obtaining a response from the mobile device during the interrogation;

logic executed by the processor for creating based on the response of the interrogation, a metadata signature for the mobile device;

logic executed by the processor for retrieving a configuration of software components from an application component data store, the configuration of software components comprising multiple software components capable of being assembled into variations of the application;

logic executed by the processor for mapping the metadata signature to the configuration of software components;

logic executed by the processor for compiling the configuration of software components into a device version of the application, the device version being customized to the mobile device based on the metadata signature; and

logic executed by the processor for communicating the device version of the application to the mobile device for installation on the mobile device.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 19, 2021
From: VERIZON MEDIA INC.
To: VERIZON PATENT AND LICENSING INC.
Reel/Frame 057453/0431 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 21, 2020
From: YAHOO! INC.
To: YAHOO HOLDINGS, INC.
Reel/Frame 054820/0559 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 23, 2020
From: YAHOO HOLDINGS, INC.
To: OATH INC.
Reel/Frame 055005/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 23, 2020
From: YAHOO! INC.
To: YAHOO HOLDINGS, INC.
Reel/Frame 055057/0681 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2020
From: OATH INC.
To: VERIZON MEDIA INC.
Reel/Frame 054258/0635 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 22, 2020
From: FLURRY, INC.
To: YAHOO! INC.
Reel/Frame 052996/0676 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 22, 2020
From: BYRNES, SEAN N.; VANRENEN, GABRIEL; HARRIS, KARL
To: FLURRY, INC.
Reel/Frame 052996/0603 →
Continuity (5)
Continuation 15340296 · Nov 1, 2016
Continuation 11594555 · Nov 7, 2006
Provisional Application 60846285 · Sep 20, 2006
Provisional Application 60734185 · Nov 7, 2005
Related Publication 20200218526A1 · Jul 9, 2020