Patent Document ID: 9721021
Application ID: 14288058
Patent Status: 1

Claim One:
1. A method comprising: receiving, by a processing device, an encoded device profile indicating device features of a user device, wherein the device features indicate one or more native applications installed on the user device; identifying, by the processing device, the device features of the user device based on the encoded device profile; receiving, by the processing device, a search query from the user device; performing, by the processing device, an application search based on the search query to identify a consideration set of records, wherein each record in the consideration set of records corresponds to a respective native application; for each record in the consideration set of records: generating, by the processing device, a result score based on at least one of an application scoring feature, a query scoring feature, and an application-query scoring feature, wherein: the application scoring feature includes data corresponding to a popularity of the record; the query scoring feature includes at least one of a number of words in the search query, a popularity of the search query, and an expected frequency of words in the search query; and the application-query scoring feature includes parameters that indicate a degree of matching between words of the search query and words of the record; determining, by the processing device, a boosting factor based on the device features of the user device, wherein the boosting factor is a first value in response to the respective native application not being installed on the user device, and wherein the boosting factor is a second value in response to the respective native application being installed on the user device; adjusting, by the processing device, the result score based on the boosting factor; generating, by the processing device, search results based on a subset of the consideration set of records, wherein the subset is selected based on the result scores of the consideration set of records; and transmitting, by the processing device, the search results to the user device.