Advertisement Filtering Method and Device
US-2017351644-A1 · Dec 7, 2017 · US
US11258866B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11258866-B2 |
| Application number | US-202016791624-A |
| Country | US |
| Kind code | B2 |
| Filing date | Feb 14, 2020 |
| Priority date | Jun 5, 2015 |
| Publication date | Feb 22, 2022 |
| Grant date | Feb 22, 2022 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
In various embodiments described herein, a content extension and programming interface enable third-party content extensions to supply transformation and filtering actions and associated criteria to native web clients on a system. In one embodiment, the native web client loads data for a third-party content filtering, blocking, or transformation extension and conducts extension defined actions without requiring additional intermediation by the third-party content. In one embodiment, a third-party application downloaded to a mobile or handheld device can include an extension data object that provides actions and triggers that are loaded by a native web client of the system. The third-party application is not required to execute continuously and can exit or be terminated once the web client retrieves the extension data object.
Opening claim text (preview).
What is claimed is: 1. A non-transitory computer readable medium storing instructions which, when executed by one or more processors of a data processing system, cause the one or more processors to perform operations comprising: requesting a web content filter extension via a content extension programming interface; receiving a data object in response to the request, the data object including one or more actions, each action having zero or more triggers; compiling the data object into a compiled data object; storing the compiled data object in memory; creating a virtual memory object backed by the compiled data object; and mapping the virtual memory object into a virtual memory address space of a web content process associated with a web client, the web content process to perform the one or more actions defined in the data object. 2. The medium as in claim 1 , wherein requesting the web content filter extension includes requesting the web content filter extension from a third-party application, the third-party application to provide the data object in response to the request and terminate execution after providing the data object. 3. The medium as in claim 2 , wherein requesting the web content filter extension is performed in response to a system-wide request to enable extensions on the data processing system. 4. The medium as in claim 1 , wherein receiving the data object in response to the request includes receiving JavaScript Object Notation (JSON) data including the one or more actions and associated triggers. 5. The medium as in claim 1 , wherein compiling the data object into the compiled data object includes compiling the data object into interpreted bytecode. 6. The medium as in claim 1 , wherein storing the compiled data object in the memory includes storing the compiled data object to a file system on a non-volatile memory device. 7. The medium as in claim 1 , wherein the web content process is a web content engine of the web client, the web content engine to load and process web content for the web client, and wherein the client is a native web client of the data processing system. 8. The medium as in claim 7 , further comprising: mapping the compiled data object into the virtual memory address space of each web content process of the web client; and passing a web content resource locator to at least one web content process. 9. The medium as in claim 8 , further comprising: applying the one or more actions to the web content resource locator based on the zero or more triggers associated with each of the one or more actions, the one or more actions including at least one of blocking loading of web content, blocking a setting or reading of a web cookie associated with the web content, whitelisting web content, injecting a style sheet rule. 10. A data processing system comprising: one or more processors coupled to memory, the one or more processors to execute instructions from the memory, the instructions to cause the one or more processors to perform operations for a plurality of processes including: a web client process to request a web content filter extension, receive a content extension filter object in response to the request, compile the content extension filter object into a compiled content extension filter object, and cause the compiled content extension object to be stored in memory as a compiled data object, create a virtual memory object backed by the compiled data object, the virtual memory object mapped to a virtual memory address space of a web client process associated with the web client; and one or more web content processes to load web content on behalf of the web client process, the one or more web content processes having access to the virtual memory address of the compiled content extension filter object, wherein the one or more web content processes are to compare web content resources to one or more triggers and apply one or more actions to the web content based on a comparison. 11. The system as in claim 10 , wherein the compiled content extension object is bytecode that is interpreted by a byte code interpreter on behalf of the one or more web content processes. 12. The system as in claim 10 , wherein the web client process is associated with a WebKit-based web client. 13. The system as in claim 10 , wherein each of the one or more web content processes has read-only access to the virtual memory address of the compiled content extension filter object. 14. The system as in claim 10 , wherein the one or more actions applied to the web content processes include to block load of web content, block load of a web cookie associated with the web content, whitelist web content, inject a style sheet rule into the web content, and block tracking by a provider of the web content. 15. The system as in claim 10 , wherein the content extension filter object includes JavaScript Object Notation (JSON) data.
Related publications grouped by family.
Answers are generated from the same data shown on this page.