Systems and Methods for Efficient Data Preprocessing of Machine Learning Workloads
US-2024403138-A1 · Dec 5, 2024 · US
US9563488B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9563488-B2 |
| Application number | US-201414488130-A |
| Country | US |
| Kind code | B2 |
| Filing date | Sep 16, 2014 |
| Priority date | May 29, 2014 |
| Publication date | Feb 7, 2017 |
| Grant date | Feb 7, 2017 |
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.
A sharing extension point receives a request from a host application for sharing content, the sharing extension point being one of the extension points of an extension framework of an operating system, each corresponding to a common interface to extend a predefined functionality of one application to another application. In response, a sharing extension capable of providing content sharing services is launched. Data representing a share sheet created by the sharing extension is injected into a content viewer within the host application as a share sheet clone, where the share sheet clone has a reduced resolution image of the content displayed therein. In response to receiving a commit command for sharing, the actual content is retrieved from the host application and the retrieved content is transmitted to the sharing extension to enable the sharing extension to post the share sheet on a sharing platform.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method for sharing content, comprising: receiving, at a sharing extension point, a request from a host application for sharing content, the sharing extension point being one of a plurality of extension points of an extension framework of an operating system, each extension point corresponding to a common interface to extend a predefined functionality of one application to another application; in response to the request for sharing content, presenting a share sheet, wherein the share sheet displays one or more representations of sharing extensions that are capable of providing a sharing service for the content, and in response to a user selection of one of the sharing extensions, launching the selected sharing extension capable of providing content sharing services; injecting data representing a share sheet clone created by the sharing extension into a content viewer within the host application, the share sheet clone having a reduced resolution image of the content displayed therein; in response to receiving a commit command for sharing, retrieving the content from the host application; and transmitting the retrieved content to the sharing extension to enable the sharing extension to post information from the share sheet clone including the content on a sharing platform. 2. The method of claim 1 , wherein injecting data representing a share sheet clone created by the sharing extension comprises: establishing a remote view bridge connection between the host application and the sharing extension; and transmitting the share sheet clone from the sharing extension to the host application via the remote view bridge connection. 3. The method of claim 1 , wherein presenting the share sheet comprises identifying the sharing extensions that are capable of providing sharing services based on a sharing extension identifier associated with the sharing extension, and wherein launching the selected sharing extension comprises establishing an inter-process communications (IPC) connection between the host application and the selected sharing extension. 4. The method of claim 3 , wherein the sharing extension identifier comprises a uniform type identifier (UTI) identifying a particular class of extension services. 5. The method of claim 4 , wherein each of the sharing extensions was compiled with the UTI encoded therein and signed by a predetermined authority. 6. The method of claim 1 , further comprising installing the sharing extension prior to receiving the request for sharing, wherein installing the sharing extension comprises: obtaining a first provider identifier (ID) and a first extension key from the sharing extension to be installed, wherein the first provider ID identifies a software provider that provides the sharing extension and the first extension key identifies a first version of the sharing extension; performing a lookup operation in an extension registry having listed therein a plurality of extensions currently installed to locate a sharing extension entry having a second provider ID that matches the first provider ID; and replacing a second extension key of the sharing extension entry with the first extension key, such that the first version of the sharing extension is launched instead of a second version represented by the second extension key. 7. The method of claim 6 , wherein the first version of the sharing extension is installed overriding the second version of the sharing extension only if the first provider ID and the second provider ID are matched. 8. The method of claim 7 , wherein the first version the sharing extension is installed overriding the second version of the sharing extension only if the first extension key indicates the first version is newer than the second version represented by the second extension key. 9. The method of claim 6 , wherein the first provider ID and the first extension key are encoded within an executable binary image of the sharing extension and signed by a predetermined authority. 10. A non-transitory machine-readable medium having instructions stored therein, which when executed by a processor, cause the processor to perform operations for sharing content, the operations comprising: receiving, at a sharing extension point, a request from a host application for sharing content, the sharing extension point being one of a plurality of extension points of an extension framework of an operating system, each extension point corresponding to a common interface to extend a predefined functionality of one application to another application; in response to the request for sharing content, presenting a share sheet, wherein the share sheet displays one or more representations of sharing extensions that are capable of providing a sharing service for the content, and in response to a user selection of one of the sharing extensions, launching the selected sharing extension capable of providing content sharing services; injecting data representing a share sheet clone created by the sharing extension into a content viewer within the host application, the share sheet clone having a reduced resolution image of the content displayed therein; in response to receiving a commit command for sharing, retrieving the content from the host application; and transmitting the retrieved content to the sharing extension to enable the sharing extension to post information from the share sheet clone including the content on a sharing platform. 11. The non-transitory machine-readable medium of claim 10 , wherein injecting data representing a share sheet clone created by the sharing extension comprises: establishing a remote view bridge connection between the host application and the sharing extension; and transmitting the share sheet clone from the sharing extension to the host application via the remote view bridge connection. 12. The non-transitory machine-readable medium of claim 10 , wherein presenting the share sheet comprises identifying the sharing extensions that are capable of providing sharing services based on a sharing extension identifier associated with the sharing extension, and wherein launching the selected sharing extension comprises establishing an inter-process communications (IPC) connection between the host application and the selected sharing extension. 13. The non-transitory machine-readable medium of claim 12 , wherein the sharing extension identifier comprises a uniform type identifier (UTI) identifying a particular class of extension services. 14. The non-transitory machine-readable medium of claim 13 , wherein each of the sharing extensions was compiled with the UTI encoded therein and signed by a predetermined authority. 15. The non-transitory machine-readable medium of claim 10 , wherein the operations further comprise installing the sharing extension prior to receiving the request for sharing, wherein installing the sharing extension comprises: obtaining a first provider identifier (ID) and a first extension key from the sharing extension to be installed, wherein the first provider ID identifies a software provider that provides the sharing extension and the first extension key identifies a first version of the sharing extension; performing a lookup operation in an extension registry having listed therein a plurality of extensions currently installed to locate a sharing extension entry having a second provider ID that matches the first provider ID; and replacing a second extension key of the sharing extension entry with the first extension key, such that the first version of the sharing extension is lau
via adapters, e.g. between incompatible applications · CPC title
while running · CPC title
Plug-ins; Add-ons · CPC title
Interprogram communication · CPC title
by executing in a restricted environment, e.g. sandbox or secure virtual machine · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.