# US 12,192,157 B2 · Bidirectional bridge for web view

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,192,157 B2
- Document ID: US12192157B2
- Status: Granted
- Kind: B2
- Application number: 18/235,578
- Filed: 2023-08-18
- Published: 2023-12-07
- Granted: 2025-01-07
- Earliest claimed: 2020-06-10
- Assignees: Snap Inc.
- Applicants: Snap Inc.
- Inventors: Muzammil Ahmed; John Jensen; Michel Khristo; Sivakumar Loganathan; Patrick Mandia; Jun Xu; Austin Yeakel
- Web page: https://patentgrep.com/patent/US12192157B2

## CPC

- H04L 51/046: Interoperability with other network applications or services
- G06Q 30/0267: {Wireless devices}
- G06Q 30/0277: {Online advertisement}
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L 67/025: for remote control or remote monitoring of applications
- H04L 67/34: {involving the movement of software or configuration parameters (network booting or remote initial program loading [RIPL] G06F9/4416)}
- H04L 67/75: Indicating network or usage conditions on the user display
- G06F 8/61: Installation
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A bidirectional bridge for web view is a technical solution to an engineering challenge associated with presenting external content in a web view. A bidirectional bridge for web view facilitates bidirectional communication between the web view included in the messaging client and the messaging client itself. In response to a user action requesting a web page to be loaded in the web view, the bidirectional bridge initiates a request to messaging client to retrieve external content, receives the requested external content from the messaging client, and displays an image representing the external content in the web view as part of the web page.

## Claims

### Claim 1

A computer-implemented method comprising:
obtaining, by an external content component that is part of a messaging client executing on a mobile device, a plurality of external content options for presentation in a web view of the messaging client, each external content option relating to an application installable on the mobile device to operate with the messaging client, the external content component configured to inject a bidirectional bridge script into the web view to facilitate real-time interaction between the web view and the external content component;
selecting, by the external content component, one of the plurality of external content options for presentation in the web view based on at least one of:
rules specifying a priority or suitability of each external content option; or
user data indicating user interests or preferences;
receiving, at the web view from the external content component, the selected external content option;
presenting, by the web view, the selected external content option within a web page, the selected external content option indicating the application relating thereto is available for installation on the mobile device;
detecting selection of the presented external content option; and in response to detecting selection of the presented external content option, launching an installation process for the application relating to the selected external content option.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein the external content component selects the one of the plurality of external content options based at least in part on a predicted relevance of each external content option to a user of the mobile device.

### Claim 3 (depends on 1)

The computer-implemented method of claim 1, further comprising:
tracking, by the external content component, activity data relating to impressions and user interactions with the presented external content option; and
providing the activity data to a content management system associated with the application relating to the selected external content option.

### Claim 4 (depends on 1)

The computer-implemented method of claim 1, wherein obtaining the plurality of external content options comprises:
receiving, from each of a plurality of content providers, a respective external content option relating to an application managed by the content provider.

### Claim 5 (depends on 1)

The computer-implemented method of claim 1, wherein the rules specifying priority or suitability of each external content option are based on at least one of:
a predicted relevance of the external content option to the user;
a business relationship between a provider of the messaging client and a provider of the application relating to the external content option;
a paid promotion status of the external content option;
a download popularity of the application relating to the external content option.

### Claim 6 (depends on 1)

The computer-implemented method of claim 1, wherein the user data indicating user interests or preferences is based on at least one of:
user profile data of a user account associated with the messaging client;
user content viewing history of the web view of the messaging client;
user application download history for the mobile device.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1, wherein presenting the selected external content option comprises:
identifying a placeholder in the web page for presenting the external content option; and
inserting the selected external content option into the identified placeholder.

### Claim 8

A system comprising:
a processor;
a memory storing instructions, which, when executed by the processor, cause the system to perform operations comprising:
obtaining, by an external content component that is part of a messaging client, a plurality of external content options for presentation in a web view of the messaging client, each external content option relating to an application installable on the mobile device to operate with the messaging client, the external content component configured to inject a bidirectional bridge script into the web view to facilitate real-time interaction between the web view and the external content component;
selecting, by the external content component, one of the plurality of external content options for presentation in the web view based on at least one of:
rules specifying a priority or suitability of each external content option; or
user data indicating user interests or preferences;
receiving, at the web view from the external content component, the selected external content option;
presenting, by the web view, the selected external content option within a web page, the selected external content option indicating the application relating thereto is available for installation on the system;
detecting selection of the presented external content option; and in response to detecting selection of the presented external content option, launching an installation process for the application relating to the selected external content option.

### Claim 9 (depends on 8)

The system of claim 8, wherein the external content component selects the one of the plurality of external content options based at least in part on a predicted relevance of each external content option to a user of the mobile device.

### Claim 10 (depends on 8)

The system of claim 8, wherein the operations further comprise:
tracking, by the external content component, activity data relating to impressions and user interactions with the presented external content option;
providing the activity data to a content management system associated with the application relating to the selected external content option.

### Claim 11 (depends on 8)

The system of claim 8, wherein obtaining the plurality of external content options comprises:
receiving, from each of a plurality of content providers, a respective external content option relating to an application managed by the content provider.

### Claim 12 (depends on 8)

The system of claim 8, wherein the rules specifying priority or suitability of each external content option are based on at least one of:
a predicted relevance of the external content option to the user;
a business relationship between a provider of the messaging client and a provider of the application relating to the external content option;
a paid promotion status of the external content option;
a download popularity of the application relating to the external content option.

### Claim 13 (depends on 8)

The system of claim 8, wherein the user data indicating user interests or preferences is based on at least one of:
user profile data of a user account associated with the messaging client;
user content viewing history of the web view of the messaging client;
user application download history for the mobile device.

### Claim 14 (depends on 8)

The system of claim 8, wherein presenting the selected external content option comprises:
identifying a placeholder in the web page for presenting the external content option;
inserting the selected external content option into the identified placeholder.

### Claim 15

A system comprising:
means for obtaining, by an external content component that is part of a messaging client, a plurality of external content options for presentation in a web view of the messaging client, each external content option relating to an application installable on the system to operate with the messaging client, the external content component configured to inject a bidirectional bridge script into the web view to facilitate real-time interaction between the web view and the external content component;
means for selecting, by the external content component, one of the plurality of external content options for presentation in the web view based on at least one of:
rules specifying a priority or suitability of each external content option; or
user data indicating user interests or preferences;
means for receiving, at the web view from the external content component, the selected external content option;
means for presenting, by the web view, the selected external content option within a web page, the selected external content option indicating the application relating thereto is available for installation on the system;
means for detecting selection of the presented external content option; and
in response to detecting selection of the presented external content option, launching an installation process for the application relating to the selected external content option.

### Claim 16 (depends on 15)

The system of claim 15, wherein the external content component selects the one of the plurality of external content options based at least in part on a predicted relevance of each external content option to a user of the system.

### Claim 17 (depends on 15)

The system of claim 15, wherein the operations further comprise:
tracking, by the external content component, activity data relating to impressions and user interactions with the presented external content option;
providing the activity data to a content management system associated with the application relating to the selected external content option.

### Claim 18 (depends on 15)

The system of claim 15, wherein obtaining the plurality of external content options comprises:
receiving, from each of a plurality of content providers, a respective external content option relating to an application managed by the content provider.

### Claim 19 (depends on 15)

The system of claim 15, wherein the rules specifying priority or suitability of each external content option are based on at least one of:
a predicted relevance of the external content option to the user;
a business relationship between a provider of the messaging client and a provider of the application relating to the external content option;
a paid promotion status of the external content option;
a download popularity of the application relating to the external content option.

### Claim 20 (depends on 15)

The system of claim 15, wherein the user data indicating user interests or preferences is based on at least one of:
user profile data of a user account associated with the messaging client;
user content viewing history of the web view of the messaging client;
user application download history for the system.
