DE202017105336U1 - Uniform resource identifier and sharing of images for context information display - Google Patents

Uniform resource identifier and sharing of images for context information display Download PDF

Info

Publication number
DE202017105336U1
DE202017105336U1 DE202017105336.9U DE202017105336U DE202017105336U1 DE 202017105336 U1 DE202017105336 U1 DE 202017105336U1 DE 202017105336 U DE202017105336 U DE 202017105336U DE 202017105336 U1 DE202017105336 U1 DE 202017105336U1
Authority
DE
Germany
Prior art keywords
user device
resource identifier
native
native application
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE202017105336.9U
Other languages
German (de)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of DE202017105336U1 publication Critical patent/DE202017105336U1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/10Multimedia information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5838Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0007Image acquisition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • H04L12/4625Single bridge functionality, e.g. connection of two networks over a single bridge
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/18Commands or executable codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/046Interoperability with other network applications or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Anwendervorrichtung, die umfasst: eine Datenverarbeitungseinrichtung; eine Anzeigevorrichtung; und ein nicht-transitorisches computerlesbares Speichermedium in Datenkommunikation mit der Datenverarbeitungseinrichtung, das Anweisungen speichert, die durch die Datenverarbeitungseinrichtung ausführbar sind und bei einer solchen Ausführung bewirken, dass die Datenverarbeitungseinrichtung Operationen ausführt, die umfassen: Anzeigen auf einer Anwendervorrichtung der Anwendervorrichtung einer speziellen Umgebungsinstanz einer nativen Anwendung, die mehrere unterschiedliche Umgebungsinstanzen anzeigen kann, wobei die native Anwendung eine Anwendung ist, die arbeitet, um die Umgebungsinstanzen zur Anzeige innerhalb der nativen Anwendung auf der Anwendervorrichtung zu erzeugen, und unabhängig von einer Browser-Anwendung arbeitet, die auf der Anwendervorrichtung arbeiten kann; Empfangen in der Anwendervorrichtung und während die spezielle Umgebungsinstanz ein aktiver Fokus der Anwendervorrichtung ist, eines einzelnen eingegebenen Betriebssystembefehls, der ein Befehl ist, der unabhängig von der nativen Anwendung aufgerufen wird; in Reaktion auf den einzelnen eingegebenen Betriebssystembefehl: Anzeigen auf der Anzeigevorrichtung einer Kontextinformationskarte, die einen Teilen-Befehl enthält; in Reaktion auf eine Auswahl des Teilen-Befehls: Bestimmen einer Empfängeradresse, die eine Empfängervorrichtung spezifiziert, die von der Anwendervorrichtung getrennt ist; Erzeugen eines Bilds der speziellen Umgebungsinstanz der nativen Anwendung; Auswählen eines einheitlichen Ressourcenbezeichners der speziellen Umgebungsinstanz der nativen Anwendung; Erzeugen einer Nachricht, die das Bild der speziellen Umgebungsinstanz und den einheitlichen Ressourcenbezeichner enthält; und Senden der Nachricht, die das Bild der speziellen Umgebungsinstanz und den einheitlichen Ressourcenbezeichner enthält, zu der Empfängeradresse.A user device comprising: a data processing device; a display device; and a non-transitory computer-readable storage medium in data communication with the data processing device that stores instructions executable by the data processing device and, in such an embodiment, causes the data processing device to perform operations including: displaying on a user device the user device a specific native environment instance instance An application that can display multiple different environment instances, wherein the native application is an application that operates to generate the environment instances for display within the native application on the user device, and operates independently of a browser application that can operate on the user device ; Receiving in the user device and while the particular environment instance is an active focus of the user device, a single input operating system command that is a command invoked independently of the native application; in response to the single input operating system command: displaying on the display device a context information map containing a sharing command; in response to a selection of the share command: determining a recipient address that specifies a recipient device that is separate from the user device; Generating an image of the native environment instance of the native application; Selecting a unique resource identifier of the native environment instance of the native application; Generating a message containing the image of the specific environment instance and the uniform resource identifier; and sending the message containing the image of the specific environment instance and the uniform resource identifier to the recipient address.

Description

Hintergrundbackground

Das Internet stellt Zugriff auf eine große Vielfalt von Informationen bereit. Beispielsweise sind sowohl digitale Bilddateien, Video- und/oder Audiodateien als auch Webseitenressourcen für spezielle Objekte oder spezielle Nachrichtenartikel über das Internet zugänglich. In Bezug auf Webseitenressourcen sind viele dieser Ressourcen designed, um das Ausführen spezieller Funktionen wie z. B. Bankgeschäfte, Buchen von Hotelreservierungen, Einkaufen usw. zu unterstützen oder um strukturierte Informationen wie z. B. Online-Enzyklopädien, Filmdatenbanken usw. bereitzustellen. Such-Engines crawlen und indexieren diese Ressourcen, um das Durchsuchen der Ressourcen zu unterstützen.The Internet provides access to a wide variety of information. For example, both digital image files, video and / or audio files, as well as web page resources for specific objects or special news articles are accessible via the Internet. In terms of Web site resources, many of these resources are designed to perform special functions such as running. As banking transactions, booking hotel reservations, shopping, etc. to support or structured information such. To provide online encyclopedias, movie databases, etc. Search Engines crawl and index these resources to help search the resources.

Darüber hinaus werden jetzt mit der Einführung von Tablet-Computern und Smartphones native Anwendungen, die die Ausführung der gleichen Funktionen unterstützen, die durch das Verwenden von Webseitenressourcen unterstützt werden, in großer Anzahl bereitgestellt. Zusätzlich sind native Anwendungen, die keine Webseiten mit synchronem Inhalt besitzen, wie z. B. Spiele, auf Tablet-Computern und Smartphones sehr populär. Dementsprechend unterstützen Such-Engines jetzt auch das Durchsuchen dieser nativen Anwendungen.In addition, with the advent of tablet computers and smartphones, native applications that support the execution of the same capabilities that are supported by using Web page resources are now being deployed in large numbers. In addition, native applications that do not have web pages with synchronous content, such as As games, on tablet computers and smartphones very popular. Accordingly, search engines now also support searching these native applications.

Ein Anwender kann Informationen wünschen, die sich auf eine Webseitenressource oder eine native Anwendung beziehen, die derzeit auf einer Anwendervorrichtung aktiv ist. Solche Informationen werden als ”Kontextinformationen” bezeichnet, da die Informationen, die der Anwender wünscht, im Kontext der aktiven Webseite oder nativen Anwendung ist.A user may want information related to a web page resource or native application that is currently active on a user device. Such information is referred to as "context information" because the information the user desires is in the context of the active web page or native application.

In dem Kontext nativer Anwendungen können Anwender auch wünschen, Informationen über die native Anwendung mit anderen Anwendern zu teilen. Einige Systeme erlauben es Anwendern, ein Bildschirmfoto einer speziellen Umgebungsinstanz einer nativen Anwendung aufzunehmen und das Bildschirmfoto zu anderen Anwendern zu senden. Anwender können außerdem Informationen über eine native Anwendung manuell eingeben oder sie auswählen und diese Informationen ebenfalls zu anderen Anwendern senden.In the context of native applications, users may also wish to share information about the native application with other users. Some systems allow users to take a screenshot of a specific environment instance of a native application and send the screenshot to other users. Users can also manually enter or select information about a native application and also send that information to other users.

In Übereinstimmung mit den Vorgaben des Gebrauchsmustergesetzes sind nur Vorrichtungen, wie sie in den beigefügten Ansprüchen definiert sind, Gegenstand des Schutzes und Gegenstand des Gebrauchsmusters, jedoch keine Verfahren. Wenn in der nachstehenden Beschreibung auf Verfahren Bezug genommen ist, sollen diese Bezüge nur zum besseren Verständnis der Vorrichtung oder Vorrichtungen, die in den beigefügten Ansprüchen geschützt sind, dienen.In accordance with the provisions of the Utility Model Law, only devices as defined in the appended claims are subject to protection and subject matter of the utility model, but are not methods. When reference is made in the following description to methods, these references are to serve only for a better understanding of the device or devices that are protected in the appended claims.

ZusammenfassungSummary

Diese Beschreibung bezieht sich auf das Teilen von Kontextinformationen einer aktiven nativen Anwendung auf einer ersten Anwendervorrichtung mit anderen Anwendervorrichtungen.This description relates to sharing context information of an active native application on a first user device with other user devices.

Im Allgemeinen kann ein innovativer Aspekt des Gegenstands, der in dieser Beschreibung beschrieben ist, in Verfahren verwirklicht sein, die die Aktionen zum Anzeigen auf einer Anzeigevorrichtung der Anwendervorrichtung einer speziellen Umgebungsinstanz einer nativen Anwendung, die mehrere unterschiedliche Umgebungsinstanzen anzeigen kann, wobei die native Anwendung eine Anwendung ist, die arbeiten kann, um die Umgebungsinstanzen zur Anzeige innerhalb der nativen Anwendung auf der Anwendervorrichtung zu erzeugen, und unabhängig von einer Browser-Anwendung arbeitet, die auf der Anwendervorrichtung arbeiten kann; Empfangen in der Anwendervorrichtung und während die spezielle Umgebungsinstanz ein aktiver Fokus der Anwendervorrichtung ist eines einzelnen eingegebenen Betriebssystembefehls, der ein Befehl ist, der unabhängig von der nativen Anwendung aufgerufen wird; in Reaktion auf den einzelnen eingegebenen Betriebssystembefehl: Anzeigen auf der Anzeigevorrichtung einer Kontextinformationskarte, die einen Teilen-Befehl und wenigstens einen oder mehrere zusätzliche Befehle enthält; in Reaktion auf eine Auswahl des Teilen-Befehls: Bestimmen einer Empfängeradresse, die eine Empfängervorrichtung spezifiziert, die von der Anwendervorrichtung getrennt ist, Erzeugen eines Bilds der speziellen Umgebungsinstanz der nativen Anwendung, Auswählen eines einheitlichen Ressourcenbezeichners der speziellen Umgebungsinstanz der nativen Anwendung, Erzeugen einer Nachricht, die das Bild der speziellen Umgebungsinstanz und den einheitlichen Ressourcenbezeichner enthält, und Senden der Nachricht, die das Bild der speziellen Umgebungsinstanz und den einheitlichen Ressourcenbezeichner enthält, zu der Empfängeradresse enthalten. Andere Ausführungsformen dieses Aspekts enthalten entsprechende Computersysteme, Einrichtungen und Computerprogramme, die auf einer oder mehreren Computerspeichervorrichtungen gespeichert sind, von denen jedes konfiguriert ist, die Aktionen der Verfahren auszuführen. Ein Systemen aus einem oder mehreren Computern kann konfiguriert sein, spezielle Operationen oder Aktionen dadurch auszuführen, dass es Software, Firmware oder Hardware oder eine Kombination daraus auf dem System installiert aufweist, die im Betrieb bewirkt oder bewirken, dass das System die Aktionen ausführt. Ein oder mehrere Computerprogramme können konfiguriert sein, spezielle Operationen oder Aktionen dadurch auszuführen, dass sie Anweisungen enthalten, die dann; wenn sie durch eine Datenverarbeitungseinrichtung ausführt werden, bewirken, dass die Einrichtung die Aktionen ausführt.In general, an innovative aspect of the subject matter described in this specification may be embodied in methods that may include the actions for displaying on a user device of a native application specific environment instance display device that may display a plurality of different environment instances, wherein the native application includes a An application that can work to create the environment instances for display within the native application on the user device, and operates independently of a browser application that can operate on the user device; Receiving in the user device and while the particular environment instance is an active user device focus is a single input operating system command that is a command invoked independently of the native application; in response to the single input operating system command: displays on the display device a context information map containing a split command and at least one or more additional commands; in response to a selection of the share command: determining a recipient address specifying a recipient device that is separate from the user device, generating an image of the native environment's native instance, selecting a uniform resource identifier of the native application's native instance, generating a message containing the image of the special environment instance and the unified resource identifier, and sending the message that contains the image of the specific environment instance and the uniform resource identifier to the recipient address. Other embodiments of this aspect include respective computer systems, devices, and computer programs stored on one or more computer storage devices, each of which is configured to perform the actions of the methods. A system of one or more computers may be configured to perform special operations or actions by having software, firmware, or hardware, or a combination thereof, installed on the system that operates or causes the system to perform the actions. One or more computer programs may be configured to perform special operations or actions thereby that they contain instructions that then; when executed by a computing device causes the device to perform the actions.

Spezielle Ausführungsformen des in dieser Beschreibung beschriebenen Gegenstands können so implementiert sein, dass sie einen oder mehrere aus den folgenden Vorteilen realisieren. Kontextinformationen, die ein Bildschirmfoto einer aktiven nativen Anwendung und einen einheitlichen Ressourcenbezeichner (URI) für die spezielle Umgebungsinstanz der nativen Anwendung, die in dem Bildschirmfoto aufgenommen ist, enthalten, können durch Verwendung eines intuitiven, einfach anzuwendenden Interaktionsmodells geteilt werden. Das ermöglicht es einem Anwender, schnell und effizient gewünschte Informationen über eine native Anwendung mit anderen Anwendern zu teilen, und ermöglicht es den anderen Anwendern, die native Anwendung auf ihren Empfangsvorrichtungen zu instanziieren, z. B. zu starten oder zu installieren und zu starten, um den URI zu verarbeiten und die gleiche oder eine ähnliche Umgebungsinstanz, die in dem Bildschirmfoto abgebildet ist, zu erzeugen. Die Kontextinformationen, die geteilt werden, repräsentieren die effiziente Verwendung von Informationen, weil es nicht notwendig ist, den Ausführungscode der nativen Anwendung zu teilen, damit die Umgebungsinstanz auf einer Vorrichtung eines Empfängeranwenders erneut erzeugt werden kann. Der Netzverkehr zwischen Anwendern in dem Prozess zum Teilen ist damit reduziert, und die Last sowohl auf der Vorrichtung des teilenden Anwenders aus der Sicht des Erzeugens von Informationen zum Teilen als auch auf der Vorrichtung des empfangenden Anwenders aus der Sicht des Interpretierens und Verarbeitens der empfangenen Informationen ist reduziert. Der Empfängeranwender ist nichtsdestotrotz imstande, sowohl eine Abbildung einer Umgebungsinstanz als auch die Art, in der die native Anwendung gestartet oder installiert und gestartet werden sollte, einfach zu bestimmen, um die gleiche oder eine ähnliche Umgebungsinstanz zu erzeugen.Specific embodiments of the subject matter described in this specification may be implemented to implement one or more of the following advantages. Contextual information that includes a screenshot of an active native application and a Uniform Resource Identifier (URI) for the native application's native environment instance that is included in the screenshot can be shared using an intuitive, easy-to-use interaction model. This allows a user to quickly and efficiently share desired information with other users via a native application, and allows the other users to instantiate the native application on their receiving devices, e.g. To start or install and start to process the URI and create the same or similar environment instance depicted in the screenshot. The context information that is shared represents the efficient use of information because it is not necessary to share the execution code of the native application so that the environment instance can be recreated on a device of a receiver user. The network traffic between users in the process of sharing is thus reduced, and the load on both the device of the sharing user from the perspective of generating information for sharing and on the device of the receiving user from the perspective of interpreting and processing the received information is reduced. The receiver user is nonetheless able to easily determine both a mapping of an environment instance and the way in which the native application should be started or installed and started to create the same or a similar environment instance.

Da außerdem die Eingabe der abfrageunabhängigen Anforderung für Kontextinformationen keine Abfrageeingabe erfordert und der Teilen-Befehl keine manuelle Auswahl eines URI erfordert, muss das System keine Text-zu-Sprache-Verarbeitung ausführen oder eine geschriebene Eingabe verarbeiten. Das führt zu weniger Eingabefehlern und fehlerhaft eingegebenen Abfragen. Dementsprechend werden, insgesamt betrachtet, tausende von fehlerhaften und ungenauen Abfragen und Nachrichten vermieden, was wiederum eine effizientere Verwendung von Netzressourcen gewährleistet. Das verbessert das technologische Gebiet der Verarbeitung von Suchen und des Teilens von Informationen unter Anwendern und ist somit ein weiterer klarer Vorteil, der durch die Systeme und Verfahren, die nachstehend beschrieben sind, realisiert ist. Das Verwenden einer abfrageunabhängigen Anforderung resultiert in einem effizienten Eingabemechanismus, da es die Anzahl der Eingaben, die verarbeitet werden müssen, reduziert im Vergleich zu Eingabemechanismen, in denen das Format oder der Inhalt einer speziellen Abfrage verarbeitet werden muss, damit geeignete Kontextinformationen erhalten werden können. Zusätzlich ist es nicht notwendig, die Verarbeitung der Anforderung für Kontextinformationen für unterschiedliche Situationen getrennt zu konfigurieren, da die Anforderung von einer speziellen Umgebung oder nativen Anwendung unabhängig sein kann. Das erhöht die Effizienz weiter, mit der Kontextinformationen erhalten werden können.Also, because entering the query-independent context information request does not require query input, and the Share command does not require manual selection of a URI, the system does not have to perform text-to-speech processing or process a written input. This leads to fewer input errors and incorrectly entered queries. Accordingly, on the whole, thousands of erroneous and inaccurate queries and messages are avoided, which in turn ensures more efficient use of network resources. This improves the technological field of processing searches and sharing information among users, and thus is another clear advantage realized by the systems and methods described below. Using a query-independent request results in an efficient input mechanism because it reduces the number of inputs that must be processed compared to input mechanisms in which the format or content of a particular query must be processed in order to obtain appropriate context information. In addition, it is not necessary to separately configure the processing of the context information request for different situations since the request may be independent of a particular environment or native application. This further increases the efficiency with which contextual information can be obtained.

Die Einzelheiten einer oder mehrerer Ausführungsformen des in dieser Beschreibung beschriebenen Gegenstands sind in den begleitenden Zeichnungen und der nachstehenden Beschreibung dargelegt. Andere Merkmale, Aspekte und Vorteile des Gegenstands werden aus der Beschreibung, den Zeichnungen und den Ansprüchen offensichtlich.The details of one or more embodiments of the subject matter described in this specification are set forth in the accompanying drawings and the description below. Other features, aspects and advantages of the subject matter will become apparent from the description, drawings and claims.

Kurzbeschreibung der ZeichnungenBrief description of the drawings

Die 1A und 1B sind Blockdiagramme von Beispielumgebungen, in denen kontextabhängige Informationen für eine native Anwendung bereitgestellt werden und ein Bildschirmfoto der nativen Anwendung und ein einheitlicher Ressourcenbezeichner (URI) geteilt werden.The 1A and 1B Figures are block diagrams of example environments in which contextual information is provided to a native application and a native application screen picture and a uniform resource identifier (URI) are shared.

2 ist ein Ablaufdiagramm eines Beispielprozesses zum Teilen eines Bilds und eines URI einer nativen Anwendung. 2 Fig. 10 is a flow chart of an example process for splitting an image and a URI of a native application.

3 ist ein Blockdiagramm einer Beispielumgebung, in der Kontextinformationen für aktiven Inhalt bereitgestellt werden. 3 Figure 10 is a block diagram of an example environment in which context information is provided for active content.

4 ist ein Blockdiagramm einer beispielhaften mobilen Computervorrichtung. 4 FIG. 10 is a block diagram of an example mobile computing device. FIG.

Gleiche Bezugszeichen und Bezeichnungen in den verschiedenen Zeichnungen geben gleiche Elemente an.Like reference numerals and designations in the various drawings indicate like elements.

Ausführliche BeschreibungDetailed description

Eine Anwendervorrichtung, die die nachstehend beschriebenen Systeme und Verfahren implementiert, ermöglicht das Aufnehmen eines Bildschirmfotos einer aktiven nativen Anwendung und eines einheitlichen Ressourcenbezeichners für die spezielle Umgebungsinstanz der nativen Anwendung, die in dem Bildschirmfoto aufgenommen ist. Diese Aufnahme dieser Informationen und das Teilen werden durch Verwenden eines intuitiven, einfach anzuwendenden Kontextinteraktionsmodells erreicht.A user device implementing the systems and methods described below enables capturing a screen shot of an active native application and a uniform resource identifier for the native application specific environment instance captured in the screenshot. This recording of this information and sharing is done by using an intuitive, easy-to-use context interaction model achieved.

Wie sie hier verwendet ist, erzeugt eine native Anwendung Umgebungsinstanzen zur Anzeige auf einer Anwendervorrichtung innerhalb einer Umgebung der nativen Anwendung und arbeitet unabhängig von einer Browser-Anwendung auf der Anwendervorrichtung. Eine native Anwendung ist eine Anwendung, die spezifisch konstruiert ist, um auf einem/einer speziellen Betriebssystem und Maschinen-Firmware einer Anwendervorrichtung abzulaufen. Native Anwendungen unterscheiden sich somit von browserbasierten Anwendungen und durch Browser wiedergegebenen Anwendungen. Letztere erfordern jedes Mal, wenn sie instanziiert oder wiedergegeben werden, alle oder wenigstens einige Elemente oder Anweisungen, die von einem Webserver heruntergeladen werden. Darüber hinaus können browserbasierten Anwendungen und durch Browser wiedergegebene Ressourcen durch alle webfähigen mobilen Vorrichtungen innerhalb des Browsers verarbeitet werden und sind deshalb nicht betriebssystemspezifisch. Jede spezielle Umgebungsinstanz der nativen Anwendung ist durch eine ”tiefe Verknüpfung” spezifiziert, die ansonsten als ein einheitlicher Ressourcenbezeichner (URI) bezeichnet sein kann. Der URI kann gemäß einem speziellen Standard konstruiert sein oder kann von einer Struktur sein, die für die spezielle native Anwendung eindeutig ist. Der URI bewirkt, dass die native Anwendung eine Instanz der spezifizierten nativen Anwendung instanziiert.As used herein, a native application creates environment instances for display on a user device within a native application environment and operates on the user device independently of a browser application. A native application is an application that is specifically designed to run on a particular operating system and machine firmware of a user device. Native applications are thus different from browser-based applications and browser-rendered applications. The latter, whenever instantiated or rendered, require all or at least some elements or instructions downloaded from a web server. Moreover, browser-based applications and browser-rendered resources can be processed by all web-enabled mobile devices within the browser and are therefore not OS-specific. Each native application specific environment instance is specified by a "deep link", which may otherwise be referred to as a Uniform Resource Identifier (URI). The URI may be constructed according to a particular standard or may be of a structure unique to the particular native application. The URI causes the native application to instantiate an instance of the specified native application.

Durch Verwenden eines einzigen eingegebenen Betriebssystembefehls kann ein Anwender Kontextinformationen empfangen, die sich auf eine aktive Umgebungsinstanz einer nativen Anwendung beziehen. Der Anwender kann dann einen Teilen-Befehl auswählen, der eine Nachricht erzeugt, die ein Bildschirmfoto der aktiven Umgebungsinstanz einer nativen Anwendung und eine ”tiefe Verknüpfung”, z. B. einen einheitlichen Ressourcenbezeichner, der aktiven Umgebungsinstanz enthält. Dieser Anwender kann dann das Bildschirmfoto und die tiefe Verknüpfung in einer einzigen Nachricht zu einem oder mehreren Anwendern senden. Nach dem Empfang kann jeder empfangende Anwender das Bildschirmfoto betrachten. Sollte der betrachtende Anwender wünschen, dieselbe native Anwendung auf der Empfangsvorrichtung zu instanziieren, kann der Anwender einen Befehl auswählen, z. B. durch Interagieren mit dem Bild auf eine spezielle Weise, wie z. B. durch ”langes Drücken”, um die native Anwendung auf der Empfangsvorrichtung zu instanziieren. Die native Anwendung kann dann die URI verarbeiten, um die gleiche (oder eine ähnliche) Umgebungsinstanz zu erzeugen.By using a single input operating system command, a user may receive context information related to an active environment instance of a native application. The user may then select a Share command that generates a message containing a screenshot of the native active instance of the environment and a "deep link", e.g. For example, a common resource identifier that contains the active environment instance. This user can then send the screenshot and the deep link in a single message to one or more users. Upon receipt, each receiving user can view the screenshot. Should the viewing user wish to instantiate the same native application on the receiving device, the user may select a command, e.g. B. by interacting with the image in a special way, such. By "long press" to instantiate the native application on the receiving device. The native application can then process the URI to create the same (or a similar) environment instance.

Diese Merkmale und zusätzliche Merkmale sind nachstehend genauer beschrieben.These features and additional features are described in more detail below.

Die 1A und 1B sind Blockdiagramme von Beispielumgebungen, in denen Kontextinformationen für eine native Anwendung bereitgestellt werden und ein Bildschirmfoto der nativen Anwendung und ein einheitlicher Ressourcenbezeichner (URI) geteilt werden. 1A bildet insbesondere das Anfordern und Empfangen einer Kontextinformationskarte ab, wenn eine spezielle Umgebungsinstanz einer nativen Anwendung aktiv ist, und 1B bildet insbesondere das Teilen eines Bildschirmfotos der speziellen Umgebungsinstanz der nativen Anwendung zusammen mit der tiefen Verknüpfung der speziellen Umgebungsinstanz ab.The 1A and 1B Figures are block diagrams of example environments in which context information is provided to a native application and a native application screenshot and a common resource identifier (URI) are shared. 1A In particular, requests and receives a context information map when a particular environment instance of a native application is active, and 1B In particular, sharing of a screen shot of the native environment instance of the native application together with the deep linking of the particular environment instance.

Mit Bezug auf 1A ist eine Anwendervorrichtung 110 durch einen Anwender verwendet, um Kontextinformationen für eine native Anwendung zu erhalten. Die Anwendervorrichtung 110 ist eine elektronische Vorrichtung, die zum Anfordern und Empfangen von Ressourcen über das Netz fähig ist. Beispiele für Anwendervorrichtungen 110 enthalten mobile Kommunikationsvorrichtungen (z. B. Smartphones oder Tablets) und andere Vorrichtungen, die Daten über das Netz senden und empfangen können. Die native Anwendung arbeitet, und eine spezielle Umgebungsinstanz 112 ist der aktive Fokus, z. B. das aktive Fenster, und reagiert unmittelbar auf Eingaben, die auf der Anzeigevorrichtung der Anwendervorrichtung 110 empfangen werden.Regarding 1A is a user device 110 used by a user to obtain context information for a native application. The user device 110 is an electronic device capable of requesting and receiving resources over the network. Examples of user devices 110 include mobile communication devices (eg, smartphones or tablets) and other devices that can send and receive data over the network. The native application works, and a special environment instance 112 is the active focus, eg. The active window, and respond immediately to inputs made on the display device of the user device 110 be received.

Die Anwendervorrichtung kann auch andere Informationen wie z. B. Webressourcen anzeigen. Diese können HTML-Seiten, elektronische Dokumente, Bilddateien, Videodateien, Textnachrichtenkonversationen, E-Mails, grafische Anwenderschnittstellen von Anwendungen usw. enthalten. Wie eine Umgebungsinstanz einer nativen Anwendung kann eine Ressource auch ein aktiver Fokus der Anzeigevorrichtung sein. Der Kürze halber ist eine aktive Ressource oder eine Umgebungsinstanz einer aktiven nativen Anwendung als ”aktiver Inhalt” bezeichnet.The user device may also contain other information such as. B. View web resources. These may include HTML pages, electronic documents, image files, video files, text messaging, emails, application graphical user interfaces, and so on. Like an environment instance of a native application, a resource may also be an active focus of the display device. For the sake of brevity, an active resource or environment instance of an active native application is referred to as "active content".

Die Anwendervorrichtung 110 detektiert, dass der Anwender Kontextinformationen für den aktiven Inhalt wünscht. Beispielsweise kann die Anwendervorrichtung 110 eine spezielle Umgebungsinstanz 112 einer nativen Anwendung anzeigen, und der aktive Fokus kann auf der Umgebungsinstanz 112 sein. Die Umgebungsinstanz 112 kann beispielsweise Grafik 114 und Text 116 enthalten. Der Anwender kann eine Angabe für Kontextinformationen erzeugen, z. B. durch Drücken einer Taste 11, z. B. einer ”Startseite”-Taste, für drei Sekunden oder Tippen auf den Bildschirm gemäß einem vorbestimmten Tippmuster, usw. Ein solcher Befehl ist in einigen Implementierungen ein einzelner eingegebener Betriebssystembefehl, der unabhängig von der nativen Anwendung aufgerufen wird. Mit anderen Worten kann derselbe Befehl übergreifend für mehrere unterschiedliche native Anwendungen und Webressourcen verwendet werden.The user device 110 detects that the user desires context information for the active content. For example, the user device 110 a special environment instance 112 a native application, and the active focus can be on the environment instance 112 be. The environment instance 112 can, for example, graphic 114 and text 116 contain. The user can generate an indication for context information, e.g. B. by pressing a button 11 , z. A "home" button, for three seconds, or tapping the screen according to a predetermined jog pattern, etc. Such an instruction, in some implementations, is a single input operating system instruction invoked independently of the native application. In other words, the same command can span more than one different native applications and web resources are used.

Es ist zum Zweck der Anschaulichkeit angenommen, dass der Anwender ein langes Drücken ausführt, das angibt, dass der Anwender Kontextinformationen für die spezielle Umgebungsinstanz 112 der nativen Anwendung wünscht. In Reaktion darauf stellt die Anwendervorrichtung 110 eine abfrageunabhängige Anforderung 113 für den Kontextinformationsserver 150 nach Kontextinformationen für die spezielle Umgebungsinstanz 112 der nativen Anwendung bereit. Beispielsweise kann die Anwendervorrichtung 110 eine Anforderung bereitstellen, die ein Bildschirmfoto der spezielle Umgebungsinstanz der nativen Anwendung, Informationen über die native Anwendung, den URI der speziellen Umgebungsinstanz der nativen Anwendung usw. enthält.It is assumed for the sake of clarity that the user performs a long press indicating that the user has context information for the particular environment instance 112 the native application wishes. In response, the user device provides 110 a query-independent request 113 for the context information server 150 for context information for the specific environment instance 112 the native application ready. For example, the user device 110 Provide a request that includes a screenshot of the native application's native environment instance, native application information, native application environment instance URI, and so on.

Die Anforderung kann als eine abfrageunabhängige Anforderung betrachtet werden, da die Anwendervorrichtung 110 die Anforderung für den Kontextinformationsserver 150 bereitstellt, ohne dass der Anwender Bedingungen für eine Abfrage, ob verbal, physisch oder über eine andere Interaktion, eingeben muss. Beispielsweise kann, nachdem die Anwendervorrichtung 110 detektiert, dass ein Anwender eine Taste lange gedrückt hat, die Anwendervorrichtung 110 die Anforderung für den Kontextinformationsserver 150 bereitstellen, ohne zusätzliche Informationen von dem Anwender anzufordern.The request may be considered as a query-independent request because the user device 110 the request for the context information server 150 without the user having to enter conditions for a query whether verbal, physical or other interaction. For example, after the user device 110 detects that a user has long pressed a button, the user device 110 the request for the context information server 150 without requesting additional information from the user.

In Reaktion auf das Bereitstellen der Anforderung für den Kontextinformationsserver 150 empfängt die Anwendervorrichtung 110 dann eine oder mehrere Anwenderschnittstellenelemente von dem Kontextinformationsserver 150. Wie in 1A gezeigt ist, sind die empfangenen Informationen eine Kontextinformationskarte 160. Es können jedoch andere Anwenderschnittstellenelemente verwendet werden, beispielsweise Chat-Blasen, auswählbare verknüpfte Hinweise oder Fußnoten, usw. Die Kontextinformationskarte 160 kann Kontextinformationen über die native Anwendung und/oder die spezielle Umgebungsinstanz der nativen Anwendung, wie z. B. Bilder, Texte, Audio und Video, und einen oder mehrere Befehle 162 enthalten. Wie in 1A gezeigt ist, enthalten die Befehle 162 einen Suchbefehl, der eine getrennte Suche in einer Suchanwenderschnittstelle aufrufen kann, einen Rezensionsbefehl, der Rezensionen der nativen Anwendung abrufen kann, und einen Teilen-Befehl, der ein Bildschirmfoto der Umgebungsinstanz 112 und einen URI der Umgebungsinstanz erzeugen und das Bildschirmfoto und den URI zu einer anderen Anwendervorrichtung senden kann.In response to providing the request for the context information server 150 receives the user device 110 then one or more user interface elements from the context information server 150 , As in 1A is shown, the received information is a context information map 160 , However, other user interface elements may be used, such as chat bubbles, selectable linked notes or footnotes, etc. The context information map 160 can provide context information about the native application and / or native environment instance of the native application, such as: Images, text, audio and video, and one or more commands 162 contain. As in 1A shown contain the commands 162 a search command that can invoke a separate search in a search user interface, a review command that can retrieve reviews of the native application, and a share command that displays a screenshot of the environment instance 112 and generate a URI of the environment instance and send the screenshot and the URI to another user device.

1B bildet einen Prozessablauf in Reaktion auf eine Auswahl eines Teilen-Befehls in der Kontextinformationskarte 160 ab. Der Prozessablauf ist primär mit Bezug auf 2 beschrieben, die ein Ablaufdiagramm eines Beispielprozesses 200 zum Teilen eines Bilds und eines URI einer nativen Anwendung ist. 1B forms a process flow in response to a selection of a sharing command in the context information map 160 from. The process flow is primarily related to 2 described a flowchart of an example process 200 for splitting an image and a URI of a native application.

In 1B besitzt die Kontextinformationskarte 160 den aktiven Fokus der Anwendervorrichtung 110, da sie im Vordergrund angezeigt ist. Um den aktiven Fokus auf der Karte 162 werter zu betonen, kann die spezielle Umgebungsinstanz 112 auf der Anwendervorrichtung 110 abgeschattet oder unter einer leicht opaken Schicht angezeigt sein, wie durch die Phantomlinien der Bildelemente dargestellt ist.In 1B owns the context information card 160 the active focus of the user device 110 because it is displayed in the foreground. To get the active focus on the map 162 To emphasize the special environment instance 112 on the user device 110 shaded or displayed under a slightly opaque layer, as shown by the phantom lines of the picture elements.

Um in dem Zustand in 1B anzukommen, zeigte die Anwendervorrichtung zuerst eine spezielle Umgebungsinstanz einer nativen Anwendung an (202) und empfing, während die spezielle Umgebungsinstanz in dem Zustand des aktiven Fokus war, einen einzelnen eingegebenen Betriebssystembefehl, der ein Befehl ist, der unabhängig von der nativen Anwendung aufgerufen wird (204). Beispielsweise empfing in 1A die Anwendervorrichtung 110, die die Umgebungsinstanz 112 anzeigte, und während die Umgebungsinstanz 112 der aktive Fokus der Anwendervorrichtung war, ein langes Drücken der Startseite-Taste 111.To be in the state in 1B First, the user device displayed a specific environment instance of a native application ( 202 ) and, while the specific environment instance was in the active focus state, received a single input operating system command, which is a command invoked independently of the native application ( 204 ). For example, received in 1A the user device 110 that the environment instance 112 and while the environment instance 112 the active focus of the user device was a long press of the Home button 111 ,

In Reaktion auf den einzelnen eingegebenen Betriebssystembefehl zeigt die Anwendervorrichtung eine Kontextinformationskarte an, die einen Teilen-Befehl und wenigstens einen oder mehrere zusätzliche Befehle enthält (206). Beispielsweise empfing in 1B die Anwendervorrichtung 110 die Kontextinformationskarte 160 und zeigte die Karte 160 an. Die Karte 160 enthält einen ”Teilen”-Befehl, und, wie durch die fette Umrandung dargestellt ist, ist der Teilen-Befehl ausgewählt worden.In response to the single input operating system command, the user device displays a context information map containing a sharing command and at least one or more additional commands ( 206 ). For example, received in 1B the user device 110 the context information card 160 and showed the card 160 at. The map 160 contains a "share" command and, as represented by the bold border, the share command has been selected.

In Reaktion auf eine Auswahl des Teilen-Befehls erzeugt die Anwendervorrichtung eine Nachricht, die ein Bild 122 der speziellen Umgebungsinstanz 112 der nativen Anwendung und einen einheitlichen Ressourcenbezeichner 124 der speziellen Umgebungsinstanz enthält (208). Das Bild 122 kann durch Aufrufen eines Systembefehls erzeugt werden, der ein Bild aus den Darstellungsfensterdaten für die native Anwendung erzeugt.In response to a selection of the Share command, the user device generates a message containing an image 122 the special environment instance 112 the native application and a uniform resource identifier 124 the special environment instance contains ( 208 ). The picture 122 may be generated by invoking a system command that generates an image from the native window viewport data.

Der einheitliche Ressourcenbezeichner 124 der speziellen Umgebungsinstanz 112 der nativen Anwendung kann beispielsweise aus einem Cache der Anwendervorrichtung aus zuletzt verwendeten einheitlichen Ressourcenbezeichnern ausgewählt werden. Beispielsweise kann das Betriebssystem der Anwendervorrichtung 110 in einem lokalen Verlaufs-Cache die einheitlichen Ressourcenbezeichner verfolgen, die zuletzt durch jede native Anwendung ausgewählt wurden. In einer Variation dieser Implementierung kann jede native Anwendung konfiguriert sein, die einheitlichen Ressourcenbezeichner, die sie verarbeitet, für den Cache bereitzustellen.The uniform resource identifier 124 the special environment instance 112 For example, the native application may be selected from a user device cache from recently used common resource identifiers. For example, the operating system of the user device 110 trace in a local history cache the unified resource identifiers that were last selected by each native application. In a variation of this implementation, any native application that is unified can be configured Provide resource identifiers that it processes for the cache.

Alternativ kann der einheitliche Ressourcenbezeichner 124 der speziellen Umgebungsinstanz 112 der nativen Anwendung durch das Betriebssystem der Anwendervorrichtung 110 und von der nativen Anwendung angefordert werden. Beispielsweise kann das Betriebssystem der Anwendervorrichtung 110 die Anforderung über eine Anwendungsprogrammierschnittstelle (API), die konfiguriert ist, mit den nativen Anwendungen zu kommunizieren, senden und darüber den einheitlichen Ressourcenbezeichner in Reaktion auf die Anforderung empfangen.Alternatively, the unified resource identifier 124 the special environment instance 112 the native application by the operating system of the user device 110 and be requested by the native application. For example, the operating system of the user device 110 send the request via an application programming interface (API) that is configured to communicate with the native applications and, thereafter, receive the unified resource identifier in response to the request.

Eine Empfängeradresse wird für das Teilen bestimmt, z. B. durch eine Auswahl durch den Anwender oder durch eine Standardadresse. Mehrere Empfängeradressen können ebenfalls ausgewählt werden. Die Anwendervorrichtung 110 sendet dann die Nachricht, die das Bild 122 der speziellen Umgebungsinstanz 112 und den einheitlichen Ressourcenbezeichner 124 enthält, an die Empfängeradresse (210). Die Nachricht kann beispielsweise als eine Textnachricht, eine Meldung oder als eine Nachricht, die durch einen digitalen Assistenten verarbeitet wird, gesendet werden. Andere Nachrichtentypen können ebenfalls verwendet werden.A recipient address is determined for sharing, e.g. By selection by the user or by a default address. Multiple recipient addresses can also be selected. The user device 110 then send the message that the picture 122 the special environment instance 112 and the unified resource identifier 124 contains, to the recipient address ( 210 ). For example, the message may be sent as a text message, a message, or a message processed by a digital assistant. Other message types can also be used.

In einigen Implementierungen erzeugt die Anwendervorrichtung 110 die Nachricht durch Einbetten des einheitlichen Ressourcenbezeichners 124 in Bildmetadaten des Bilds 122. Somit wird nach dem Empfang durch die Anwendervorrichtung, wie z. B. die Anwendervorrichtung 130 in 1B, das Bild 122 angezeigt, jedoch der einheitliche Ressourcenbezeichner 124 wird nicht einfach für den Anwender angezeigt. In anderen Implementierungen nimmt die Anwendervorrichtung den einheitlichen Ressourcenbezeichner 124 und das Bild 122 als getrennte Elemente auf, die voneinander getrennt in der Anzeigevorrichtung der Anwendervorrichtung 130 angezeigt werden.In some implementations, the user device generates 110 the message by embedding the unified resource identifier 124 in image metadata of the image 122 , Thus, after receiving by the user device, such. B. the user device 130 in 1B , the picture 122 displayed, but the uniform resource identifier 124 is not simply displayed to the user. In other implementations, the user device takes the unified resource identifier 124 and the picture 122 as separate elements separated from each other in the display device of the user device 130 are displayed.

Die Anwendervorrichtung 130 kann einen Navigationsbefehl in Reaktion auf die Nachricht verarbeiten. Beispielsweise kann der Anwender der Anwendervorrichtung das Bild 122 ”lang drücken”, falls der einheitliche Ressourcenbezeichner 124 in das Bild 122 eingebettet ist, oder kann den einheitlichen Ressourcenbezeichner 124 auswählen, falls der einheitliche Ressourcenbezeichner getrennt von dem Bild angezeigt wird.The user device 130 can process a navigation command in response to the message. For example, the user of the user device can use the image 122 "Long press" if the uniform resource identifier 124 in the picture 122 is embedded, or can be the unified resource identifier 124 if the uniform resource identifier is displayed separately from the image.

In Reaktion auf den Navigationsbefehl wird die Anwendervorrichtung 130 die native Anwendung an der speziellen Umgebungsinstanz 112, die durch den einheitlichen Ressourcenbezeichner 124 adressiert wird, instanziieren. Das ist in der Anwendervorrichtung 130-B gezeigt, die von dem Bild 122 zu der tatsächlichen Umgebungsinstanz 112 übergegangen ist.In response to the navigation command, the user device becomes 130 the native application at the special environment instance 112 by the uniform resource identifier 124 is addressed, instantiate. That's in the user device 130-B shown by the picture 122 to the actual environment instance 112 has passed.

In einigen Implementierungen wird die Umgebungsinstanz 112 in der empfangenden Anwendervorrichtung 130 die gleiche sein wie die Umgebungsinstanz 112 in der sendenden Anwendervorrichtung 110. Das tritt auf, wenn die native Anwendung 112 keine speziellen Anwenderinformationen erfordert und die Informationen in der Umgebungsinstanz 110 Veröffentlichungsinformationen sind, z. B. keine persönlichen Informationen, die mit Hilfe eines für den sendenden Anwender spezifischen Log-Prozesses erhalten werden. Der einheitliche Ressourcenbezeichner 124 kann außerdem Abfrageparameter und andere Parameter enthalten, die die native Anwendung verarbeitet, um an der speziellen Umgebungsinstanz 112 anzukommen.In some implementations, the environment instance becomes 112 in the receiving user device 130 be the same as the environment instance 112 in the sending user device 110 , This occurs when the native application 112 does not require any special user information and the information in the environment instance 110 Publication information is, for. For example, there is no personal information obtained using a log-in process specific to the sending user. The uniform resource identifier 124 can also contain query parameters and other parameters that the native application processes to the specific environment instance 112 to arrive.

Der Prozess zum Instanziieren einer nativen Anwendung beinhaltet das Starten der nativen Anwendung und Verarbeiten des einheitlichen Ressourcenbezeichners 124 durch die native Anwendung. In dem Fall, wenn die native Anwendung nicht auf der Anwendervorrichtung 130 installiert ist, kann die Anwendervorrichtung die native Anwendung automatisch von einem Lieferanten der nativen Anwendung als Teil der Instanziierung installieren und dann die native Anwendung starten. Alternativ kann der Anwender aufgefordert werden, die Installation der nativen Anwendung zu bestätigen.The process of instantiating a native application involves starting the native application and processing the unified resource identifier 124 through the native application. In the case when the native application is not on the user device 130 is installed, the user device can automatically install the native application from a native application supplier as part of the instantiation and then start the native application. Alternatively, the user may be prompted to confirm the installation of the native application.

Obwohl das Teilen eines Bilds einer Umgebungsinstanz 122 und eines entsprechenden einheitlichen Ressourcenbezeichners 124 im Kontext eines Teilen-Befehls von einer Kontextinformationskarte beschrieben worden ist, kann das Teilen solcher Informationen auch unabhängig von der Kontextinformationskarte bereitgestellt sein. Beispielsweise kann ein anderer Typ eines einzelnen eingegebenen Betriebssystembefehls verwendet werden, um die Nachricht zu erzeugen, die das Bild 122 der speziellen Umgebungsinstanz 112 und den einheitlichen Ressourcenbezeichner 124 enthält, ohne die Anzeige der Kontextkarte 160 mit dem Teilen-Befehl zu erfordern. Ein Beispiel eines solchen Befehls ist das Drücken der Taste 111 gemäß einer vorbestimmten Abfolge, z. B. viermal kurzes Tippen innerhalb von zwei Sekunden.Although sharing an image of an environment instance 122 and a corresponding unified resource identifier 124 in the context of a sharing command from a context information map, the sharing of such information may also be provided independently of the context information map. For example, another type of single input operating system command may be used to generate the message containing the image 122 the special environment instance 112 and the unified resource identifier 124 contains without displaying the context map 160 with the divide command. An example of such a command is to press the button 111 according to a predetermined sequence, e.g. For example, four times short tap within two seconds.

In einer weiteren Implementierung kann die Nachricht, die das Bild 122 und den einheitlichen Ressourcenbezeichner 124 enthält, auch Kontextinformationen aus der Kontextkarte 160 enthalten. Beispielsweise können die Kontextinformationen eine Zusammenfassung der nativen Anwendung, eine Rezension oder andere Informationen sein. Nach dem Empfang der Nachricht kann die Anwendervorrichtung 130-A dem Anwender ermöglichen, das Bild 122 zur Seite zu ”wischen”, um den einheitlichen Ressourcenbezeichner und die Kontextinformationen aufzudecken. Der Anwender kann dann wählen, die native Anwendung zu starten (oder die native Anwendung zu installieren und zu starten), durch Auswählen des einheitlichen Ressourcenbezeichners, oder kann stattdessen die Kontextinformationen rezensieren und mit ihnen interagieren.In another implementation, the message representing the image 122 and the unified resource identifier 124 contains context information from the context map 160 contain. For example, the context information may be a summary of the native application, a review, or other information. After receiving the message, the user device 130-A allow the user the picture 122 to "wipe" the page to the unified resource identifier and context information. The user may then choose to launch the native application (or install and start the native application) by selecting the unified resource identifier, or instead may review and interact with the contextual information.

3 ist ein Blockdiagramm einer Beispielumgebung, in der Kontextinformationen für aktiven Inhalt bereitgestellt werden. Die Umgebung 300 enthält ein Client-Kontextmodul 310 auf einer Anwendervorrichtung 110 und einen Kontextinformationsserver 312. Der Kontextinformationsserver 312 enthält eine Elementidentifizierungs-Engine 320, einen Elementwissensgraphen 322, eine Relevanzbewertungs-Engine 330, eine Elementauswahl-Engine 340 und eine Kontextkartenbereitstellungseinheit 350. 3 Figure 10 is a block diagram of an example environment in which context information is provided for active content. The environment 300 contains a client context module 310 on a user device 110 and a context information server 312 , The context information server 312 contains an element identification engine 320 , an element knowledge graph 322 , a relevance rating engine 330 , an element selection engine 340 and a context map providing unit 350 ,

Das Client-Kontextmodul 310 bestimmt, dass ein Anwender Kontextinformationen für einen aktiven Inhalt wünscht. In Reaktion auf das Bestimmen, dass ein Anwender Kontextinformationen für aktiven Inhalt wünscht, erzeugt das Client-Kontextmodul 310 eine Anforderung für den Kontextinformationsserver 312 für Kontextinformationen für den aktiven Inhalt.The client context module 310 determines that a user desires context information for an active content. In response to determining that a user desires context information for active content, the client context module generates 310 a request for the context information server 312 for context information for the active content.

Das Client-Kontextmodul 310 kann Informationen über den aktiven Inhalt in die Anforderung aufnehmen. Beispielsweise kann das Client-Kontextmodul 310 ein Bildschirmfoto des aktiven Inhalts erzeugen, ein baumbasiertes Dokumentenobjektmodell bereitstellen, das definiert, was aktuell in einer Anwendung wiedergegeben wird, die in einem Vordergrund ist, und das Modell in die Anforderung aufnehmen, usw.The client context module 310 can include information about the active content in the request. For example, the client context module 310 create a screenshot of the active content, provide a tree-based document object model that defines what is currently playing in an application that is in the foreground, and includes the model in the request, and so on.

In einigen Implementierungen kann das Client-Kontextmodul 310 die Informationen über den aktiven Inhalt in die Anforderung aufnehmen durch zusätzliches oder alternatives Bestimmen zusätzlicher Informationen über die Anforderung und Aufnehmen der zusätzlichen Informationen in die Anforderung. Die zusätzlichen Informationen über die Anforderung können eines oder mehrere aus einem einheitlichen Ressourcenbezeichner für den aktiven Inhalt, Metadaten, die den aktiven Inhalt beschreiben, usw. enthalten.In some implementations, the client context module may 310 include the information about the active content in the request by additionally or alternatively determining additional information about the request and including the additional information in the request. The additional information about the request may include one or more of a consistent resource identifier for the active content, metadata describing the active content, and so on.

Das Client-Kontextmodul 310 stellt dann die Anforderung für die Elementidentifizierungs-Engine 320 bereit, ohne dass der Anwender eine Abfrage eingibt. Beispielsweise stellt das Client-Kontextmodul 310 die Anforderung für die Elementidentifizierungs-Engine 320 in Reaktion darauf bereit, dass der Anwender die Angabe bereitstellt, dass der Anwender Kontextinformationen für den aktiven Inhalt wünscht, z. B. drei schnelle Tastendrucke, einen langen Tastendruck oder eine andere Angabe, ohne dass der Anwender irgendwelche weiteren Informationen, z. B. Abfragebedingungen, nach dem Bereitstellen der Angabe bereitstellt.The client context module 310 then makes the request for the item identification engine 320 ready without the user entering a query. For example, the client context module 310 the request for the item identification engine 320 in response to the user providing the indication that the user desires contextual information for the active content, e.g. B. three quick keystrokes, a long key press or other indication, without the user any further information, eg. Query conditions, after providing the indication.

In Reaktion auf das Bereitstellen der Anforderung für die Elementidentifizierungs-Engine 320 empfängt das Client-Kontextmodul 320 eine Kontextkarte und gibt die Kontextkarte wieder. Beispielsweise kann die Kontextkarte 160 der 1A und 1B empfangen und angezeigt werden.In response to providing the request for the element identification engine 320 receives the client context module 320 a context map and render the context map. For example, the context map 160 of the 1A and 1B received and displayed.

Um die Karte 160 zu erzeugen, empfängt die Elementidentifizierungs-Engine 320 die Anforderung nach Kontextinformationen und identifiziert ein oder mehrere Suchelemente aus dem Inhalt in der aktiven Ressource. Ein Suchelement kann durch ein Textfragment bezeichnet sein, z. B. einen Begriff oder eine Phrase, und Suchelemente können z. B. basierend auf dem Kontext voneinander unterscheidbar sein. Beispielsweise kann ein Suchelement ein Schlüsselwort, eine Instanz einer speziellen Entität, ein Eigenname, eine Entität oder Beziehung, die durch einen Knoten oder eine Kante in einem Wissensgraph modelliert ist, oder dergleichen sein.To the card 160 to generate, receives the element identification engine 320 the request for context information and identifies one or more search items from the content in the active resource. A search element may be designated by a text fragment, e.g. As a term or phrase, and search elements can, for. B. be distinguishable based on the context of each other. For example, a search item may be a keyword, an entity of a particular entity, a proper name, an entity or relationship modeled by a node or edge in a knowledge graph, or the like.

Die Relevanzbewertungs-Engine 330 kann die Suchelemente, die durch die Elementidentifizierungs-Engine 320 identifiziert sind, empfangen und eine Relevanzbewertung für jedes der Suchelemente bestimmen. Eine Vielzahl von Relevanzbewertungsprozessen kann verwendet werden. Beispielsweise kann die Relevanzbewertung ein Vertrauen widerspiegeln, dass das Suchelement für den Anwender relevant ist, d. h. einen Grad des Vertrauens, dass der Anwender die Kontextinformationen über das Suchelement sehen möchte. Die Relevanzbewertungs-Engine 330 kann außerdem eine Relevanzbewertung für ein Suchelement basierend auf einer Erscheinung des Texts, aus dem das Suchelement identifiziert wurde, bestimmen. Beispielsweise kann die Relevanzbewertungs-Engine 330 bestimmen, dass der aktive Inhalt eine Textnachrichtenkonversation ist, und in Reaktion darauf Relevanzbewertungen bestimmen, die einen höheren Grad des Vertrauens für Suchelemente widerspiegeln, die aus Text identifiziert werden, der näher am unteren Rand des Bildschirms erscheint, da dieser Text in neueren Nachrichten enthalten sein kann. In einem weiteren Beispiel kann die Relevanzbewertungs-Engine 330 bestimmen, dass der aktive Inhalt eine Kandidateninstanz ist, und in Reaktion darauf Relevanzbewertungen bestimmen, die einen höheren Grad des Vertrauens für Suchelemente widerspiegeln, die aus Text identifiziert werden, der näher am oberen Rand des Bildschirms erscheint, da dieser Text für die native Anwendung relevanter sein kann. Andere Bewertungstechniken können ebenfalls verwendet werden.The relevance rating engine 330 The search elements can be identified by the element identification engine 320 are identified, received and determine a relevance score for each of the search items. A variety of relevance evaluation processes can be used. For example, the relevance score may reflect a belief that the search item is relevant to the user, ie, a degree of confidence that the user wants to see the contextual information about the search item. The relevance rating engine 330 may also determine a relevance score for a search item based on a appearance of the text from which the search item was identified. For example, the relevance rating engine 330 determine that the active content is a text message conversation, and in response determine relevance ratings that reflect a higher level of confidence for search items identified from text that appears closer to the bottom of the screen since that text is contained in more recent messages can. In another example, the relevance ranking engine 330 determine that the active content is a candidate instance, and in response determine relevance ratings that reflect a higher level of confidence for search items identified from text that appears closer to the top of the screen, as this text is more relevant to the native application can be. Other rating techniques may also be used.

Die Elementauswahl-Engine 340 wählt eine Teilmenge der Suchelemente gemäß den Relevanzbewertungen aus und stellt die Auswahlsuchelemente für Kontextkartenbereitstellungseinheit 350 bereit. Die Kontextkartenbereitstellungseinheit 350 kann Kontextkarten erhalten, die Kontextinformationskarte für die ausgewählten Suchelemente enthalten, und die Kontextkarten für das Client-Kontextmodul 310 bereitstellen. Beispielsweise kann die Kontextkartenbereitstellungseinheit 350 eine Beschreibung der nativen Anwendung und eine Verknüpfung zu Rezensionen der nativen Anwendung erhalten und dann eine Kontextinformationskarte 160 erzeugen, die die Beschreibung und die Verknüpfung zu den Rezensionen enthält.The element selection engine 340 selects a subset of the search items according to the relevance ratings and sets the Shortcut selection unit selection search items 350 ready. The context map deployment unit 350 can obtain context maps containing context information map for the selected search elements and context maps for the client context module 310 provide. For example, the context map deployment unit 350 get a description of the native application and a link to native application reviews and then a contextual information map 160 generate the description and link to the reviews.

In Situationen, in denen die hier diskutierten Systeme persönliche Informationen über Anwender sammeln oder persönliche Informationen verwenden, kann für die Anwender eine Gelegenheit bereitgestellt werden, zu steuern, ob Programme oder Merkmale Anwenderinformationen sammeln (z. B. Informationen über ein soziales Netz eines Anwenders, soziale Aktionen oder Aktivitäten, Beruf, die Vorlieben eines Anwenders oder einen aktuellen Aufenthaltsort des Anwenders), oder um zu steuern, ob und/oder wie Inhalt von dem Inhalts-Server empfangen wird, der für den Anwender relevanter sein kann. Zusätzlich können spezielle Daten auf eine oder mehrere Arten behandelt werden, bevor sie gespeichert oder verwendet werden, so dass persönlich identifizierbare Informationen entfernt werden. Beispielsweise kann die Identität eines Anwenders so behandelt werden, dass keine persönlich identifizierbaren Informationen für den Anwender identifiziert werden können, oder ein geographischer Aufenthaltsort des Anwenders kann verallgemeinert werden, wenn Informationen über den Aufenthaltsort erhalten werden (wie z. B. auf eine Stadt, eine Postleitzahl oder auf Staatenebene), so dass ein spezieller Aufenthaltsort eines Anwenders nicht bestimmt werden kann. Somit kann der Anwender die Kontrolle darüber haben, wie Informationen über den Anwender durch einen Inhaltsserver gesammelt und/verwendet werden.In situations where the systems discussed herein collect personal information about users or use personal information, users may be provided an opportunity to control whether programs or features collect user information (eg, information about a user's social network, social actions or activities, profession, a user's preferences or current location of the user), or to control whether and / or how content is received from the content server that may be more relevant to the user. Additionally, specific data may be treated in one or more ways before being stored or used so that personally identifiable information is removed. For example, a user's identity may be treated so that no personally identifiable information can be identified to the user, or a user's geographic location may be generalized if information about the whereabouts is obtained (such as a city, a Postal code or at the state level), so that a specific location of a user can not be determined. Thus, the user can have control over how information about the user is collected and used by a content server.

4 ist ein Blockdiagramm einer beispielhaften mobilen Computervorrichtung. In dieser Darstellung ist die mobile Computervorrichtung 410 als ein tragbares Mobiltelefon (z. B. ein Smartphone oder ein Anwendungstelefon) abgebildet, das eine Anzeigevorrichtung 412 mit berührungssensitivem Bildschirm zum Präsentieren von Inhalt für einen Anwender der mobilen Computervorrichtung 410 und Empfangen von berührungsbasierten Anwendereingaben enthält. Andere visuelle, tastbare oder hörbare Ausgabekomponenten können ebenfalls bereitgestellt werden (z. B. LED-Leuchten, ein Vibrationsmechanismus für tastbare Ausgabe oder ein Lautsprecher zum Bereitstellen von Ton, spracherzeugten oder aufgezeichneten Ausgabe), und ebenso verschiedene unterschiedliche Eingabekomponenten. 4 FIG. 10 is a block diagram of an example mobile computing device. FIG. In this illustration, the mobile computing device is 410 as a portable mobile phone (eg, a smartphone or an application phone) that is a display device 412 touch-sensitive screen for presenting content to a user of the mobile computing device 410 and receiving touch-based user input. Other visual, tactile, or audible output components may also be provided (eg, LED lights, a tactile output vibration mechanism, or a speaker for providing sound, voice-generated, or recorded output), as well as various different input components.

Ein Beispiel eines visuellen Ausgabemechanismus in Form einer Anzeigevorrichtung 412 kann die Form einer Anzeigevorrichtung mit resistiven oder kapazitiven Berührungsmöglichkeiten annehmen. Die Anzeigevorrichtung kann zum Anzeigen von Video, Grafik, Bildern und Text und zum Koordinieren von Eingabeorten für Anwenderberührungen mit dem Ort der angezeigten Informationen dienen, so dass die Vorrichtung 410 den Anwenderkontakt an einem Ort eines angezeigten Elements dem Element zuordnen kann. Die mobile Computervorrichtung 410 kann auch alternative Formen annehmen, die einen Laptop-Computer, einen Tablet- oder Slate-Computer, einen persönlichen digitalen Assistenten, ein eingebettetes System (z. B. ein Kfz-Navigationssystem), einen Desktop-Personalcomputer oder eine Computer-Workstation enthalten.An example of a visual output mechanism in the form of a display device 412 may take the form of a display device with resistive or capacitive touch capabilities. The display device may serve to display video, graphics, images and text and to coordinate input locations for user touches with the location of the displayed information such that the device 410 can associate the user contact with the item in a location of a displayed item. The mobile computing device 410 may also take alternative forms including a laptop computer, a tablet or slate computer, a personal digital assistant, an embedded system (eg, a car navigation system), a desktop personal computer, or a computer workstation.

Die mobile Computervorrichtung 410 kann zum Bestimmen einer Position eines physikalischen Kontakts mit dem Anzeigevorrichtung 412 mit berührungssensitivem Bildschirm fähig sein (z. B. einer Position des Kontakts durch einen Finger oder einen Griffel). Unter Verwendung des berührungssensitiven Bildschirms 412 können verschiedene ”virtuelle” Eingabemechanismen produziert werden, wo ein Anwender mit einem Element einer grafischen Anwenderschnittstelle, das auf dem berührungssensitiven Bildschirm 512 abgebildet ist, durch Kontaktieren des Elements der grafischen Anwenderschnittstelle interagiert. Ein Beispiel für einen ”virtuellen” Eingabemechanismus ist eine ”Software-Tastatur”, wo eine Tastatur auf dem berührungssensitiven Bildschirm angezeigt wird und ein Anwender Tasten durch Drücken eines Gebiets des berührungssensitiven Bildschirms 412, der jeder Taste entspricht, auswählt.The mobile computing device 410 may be for determining a position of a physical contact with the display device 412 be capable of using a touch-sensitive screen (eg, a position of the contact by a finger or a stylus). Using the touch-sensitive screen 412 Various "virtual" input mechanisms can be produced where a user interacts with an element of a graphical user interface on the touch-sensitive screen 512 is pictured interacting by contacting the element of the graphical user interface. An example of a "virtual" input mechanism is a "software keyboard" where a keyboard is displayed on the touch-sensitive screen and a user pressing keys by pressing an area of the touch-sensitive screen 412 , which corresponds to each key, selects.

Die mobile Computervorrichtung 410 kann mechanische oder berührungssensitive Tasten 418a–d enthalten. Zusätzlich kann die mobile Computervorrichtung Tasten zum Anpassen der Lautstärke, die durch den einen oder die mehreren Lautsprecher 420 ausgegeben wird, und eine Taste zum An- und Abschalten der mobilen Computervorrichtung enthalten. Ein Mikrofon 422 ermöglicht, dass die mobile Computervorrichtung 410 hörbare Töne in ein elektrisches Signal umsetzt, das digital codiert und in einem computerlesbaren Speicher gespeichert oder zu einer weiterem Computervorrichtung übertragen werden kann. Die mobile Computervorrichtung 410 kann außerdem einen digitalen Kompass, einen Beschleunigungsmesser, Näherungssensoren und Umgebungslichtsensoren enthalten.The mobile computing device 410 can be mechanical or touch-sensitive buttons 418a -D included. Additionally, the mobile computing device may have buttons for adjusting the volume through the one or more speakers 420 and a button for turning on and off the mobile computing device. A microphone 422 allows the mobile computing device 410 converts audible tones into an electrical signal that can be digitally encoded and stored in computer readable memory or transmitted to another computing device. The mobile computing device 410 It can also include a digital compass, an accelerometer, proximity sensors, and ambient light sensors.

Ein Betriebssystem kann eine Schnittstelle zwischen der Hardware der mobilen Computervorrichtung (z. B. den Eingabe/Ausgabe-Mechanismen und eines Prozessors, der Anweisungen ausführt, die von einem computerlesbaren Medium abgerufen werden) und Software bereitstellen. Das Betriebssystem kann eine Plattform für die Ausführung von Anwendungsprogrammen bereitstellen, die die Interaktion zwischen der Computervorrichtung und einem Anwender unterstützen.An operating system may provide an interface between the hardware of the mobile computing device (eg, the input / output mechanisms and a processor that executes instructions retrieved from a computer-readable medium) and software. The Operating system may provide a platform for executing application programs that support the interaction between the computing device and a user.

Die mobile Computervorrichtung 410 kann eine grafische Anwenderschnittstelle mit dem berührungssensitiven Bildschirm 412 präsentieren. Eine grafische Anwenderschnittstelle ist eine Sammlung aus einem oder mehreren Elementen der grafischen Anwenderschnittstelle und kann statisch (z. B. die Anzeige scheint über eine Zeitspanne gleich zu bleiben) oder kann dynamisch (z. B. die grafische Anwenderschnittstelle enthält Elemente der grafischen Schnittstelle, die ohne Anwendereingabe animiert sind) sein.The mobile computing device 410 can be a graphical user interface with the touch-sensitive screen 412 present. A graphical user interface is a collection of one or more elements of the graphical user interface and may be static (eg, the display appears to stay the same over a period of time) or may be dynamic (e.g., the graphical user interface includes elements of the graphical interface, the without user input are animated).

Ein Element einer grafischen Schnittstelle kann Text, Linien, Formen, Bilder oder eine Kombinationen daraus sein. Beispielsweise kann ein Element einer grafischen Schnittstelle ein Symbol, das auf dem Desktop angezeigt wird, und der dem Symbol zugeordnete Text sein. In einigen Beispielen ist ein Element einer grafischen Schnittstelle mit einer Anwendereingabe auswählbar. Beispielsweise kann der Anwender ein Element einer grafischen Schnittstelle durch Drücken eines Gebiets des berührungssensitiven Bildschirms, das einer Anzeige des Elements der grafischen Schnittstelle entspricht, auswählen. In einigen Beispielen kann der Anwender einen Trackball manipulieren, um ein einziges Element einer grafischen Schnittstelle so hervorzuheben, dass es den Fokus besitzt. Die Auswahl durch den Anwender eines Elements einer grafischen Schnittstelle kann eine vordefinierte Aktion durch die mobile Computervorrichtung aufrufen. Die Auswahl durch den Anwender einer Taste kann die vordefinierte Aktion aufrufen.An element of a graphical interface may be text, lines, shapes, images, or combinations thereof. For example, an element of a graphical interface may be an icon displayed on the desktop and the text associated with the icon. In some examples, an element of a graphical interface is user-selectable. For example, the user may select an element of a graphical interface by pressing an area of the touch-sensitive screen that corresponds to a display of the element of the graphical interface. In some examples, the user may manipulate a trackball to highlight a single element of a graphical interface that has the focus. Selection by the user of an element of a graphical interface may invoke a predefined action by the mobile computing device. Selection by the user of a key can invoke the predefined action.

Die mobile Computervorrichtung 410 kann andere Anwendungen, Computerteilsysteme und Hardware enthalten. Ein Spracherkennungsdienst 472 kann Sprachkommunikationsdaten empfangen, die durch das Mikrofon 422 der mobilen Computervorrichtung empfangen werden, und die Sprachkommunikation in entsprechende Textdaten umwandeln oder Spracherkennung ausführen. Die verarbeiteten Sprachdaten können in die Befehlsmodelle eingegeben werden, die in den Befehlsmodelldaten 122 gespeichert sind, um zu bestimmen, ob die Spracheingabe, die verwendet wird, um die Sprachdaten zu erzeugen, eine spezielle Aktion für eine spezielle Anwendung aufruft, wie vorstehend beschrieben. Eine oder mehrere aus den nachstehenden Anwendungen, Diensten und Einheiten können entsprechende Aktionen aufweisen, die durch solche Sprachbefehle aufgerufen werden.The mobile computing device 410 may contain other applications, computer subsystems and hardware. A voice recognition service 472 can receive voice communication data through the microphone 422 the mobile computing device, and convert the voice communication into corresponding text data or perform voice recognition. The processed speech data may be input to the command models included in the command model data 122 are stored to determine whether the speech input used to generate the speech data calls a special action for a particular application, as described above. One or more of the applications, services, and devices listed below may have corresponding actions invoked by such voice commands.

Eine Anrufbehandlungseinheit kann eine Angabe eines ankommenden Telefonanrufs empfangen und die Möglichkeit für einen Anwender bereitstellen, den ankommenden Telefonanruf anzunehmen. Ein Mediaplayer kann es einem Anwender ermöglichen, Musik zu hören oder Filme abzuspielen, die in dem lokalen Speicher der mobilen Computervorrichtung 410 gespeichert sind. Die mobile Vorrichtung 410 kann einen digitalen Kamerasensor und entsprechende Bild- und Videoaufnahme- und Aufbereitungs-Software enthalten. Ein Internet-Browser kann es dem Anwender ermöglichen, Inhalt von einer Webseite durch Eintippen einer Adresse, die der Webseite entspricht, oder Auswählen einer Verknüpfung zu der Webseite zu betrachten.A call handling unit may receive an indication of an incoming telephone call and provide the opportunity for a user to accept the incoming telephone call. A media player may allow a user to listen to music or play movies stored in the local memory of the mobile computing device 410 are stored. The mobile device 410 may include a digital camera sensor and corresponding image and video capture and editing software. An internet browser may allow the user to view content from a web page by typing in an address corresponding to the web page or selecting a link to the web page.

Ein Diensteanbieter, der das Netz von Basisstationen betreibt, kann die mobile Computervorrichtung 410 mit dem Netz 450 verbinden, um Kommunikation zwischen der mobilen Computervorrichtung 410 und anderen Computersystemen, die Dienste 460 bereitstellen, zu ermöglichen. Obwohl die Dienste 460 über unterschiedliche Netze (z. B. das interne Netz des Diensteanbieters, das öffentliche Telefonnetz und das Internet) bereitgestellt sein können, ist das Netz 450 als ein einziges Netz dargestellt. Der Diensteanbieter kann ein Server-System 452 betreiben, das Informationspakete und Sprachdaten zwischen der mobilen Computervorrichtung 410 und Computersystemen, die den Diensten 460 zugeordnet sind, routet.A service provider operating the network of base stations may be the mobile computing device 410 with the net 450 connect to communication between the mobile computing device 410 and other computer systems, the services 460 provide, enable. Although the services 460 can be provided via different networks (eg the service provider's internal network, the public telephone network and the Internet) is the network 450 represented as a single network. The service provider may be a server system 452 operate the information packets and voice data between the mobile computing device 410 and computer systems serving the services 460 are assigned routes.

Das Netz 450 kann die mobile Computervorrichtung 410 mit dem öffentlichen Telefonnetz (PSTN) 462 verbinden, um Sprach- oder Fax-Kommunikation zwischen der mobilen Computervorrichtung 410 und einer weiteren Computervorrichtung aufzubauen. Beispielsweise kann das Server-System 452 des Diensteanbieters eine Angabe von dem PSTN 462 über einen ankommenden Anruf für die mobile Computervorrichtung 410 empfangen. Umgekehrt kann die mobile Computervorrichtung 410 eine Kommunikation zu dem Server-System 452 des Diensteanbieters senden, die einen Telefonanruf unter Verwendung einer Telefonnummer, die einer Vorrichtung zugeordnet ist, die über das PSTN 462 zugänglich ist, initiiert.The network 450 can the mobile computing device 410 with the public telephone network (PSTN) 462 connect to voice or fax communication between the mobile computing device 410 and another computer device. For example, the server system 452 the service provider an indication of the PSTN 462 about an incoming call for the mobile computing device 410 receive. Conversely, the mobile computing device 410 a communication to the server system 452 of the service provider who is making a telephone call using a telephone number associated with a device via the PSTN 462 accessible, initiated.

Das Netz 450 kann die mobile Computervorrichtung 410 mit einem Sprache-über-Internet-Protokoll-Dienst (VoIP-Dienst) 464 verbinden, der Sprachkommunikation über ein IP-Netz routet, im Gegensatz zu dem PSTN. Beispielsweise kann ein Anwender der mobilen Computervorrichtung 410 eine VoIP-Anwendung aufrufen und einen Anruf unter Verwendung des Programms initiieren. Das Server-System 452 des Diensteanbieters kann Sprachdaten aus dem Anruf zu einem VoIP-Dienst weiterleiten, der den Anruf über das Internet zu einer entsprechenden Computervorrichtung routen kann, möglicherweise unter Verwendung des PSTN für einen letzten Zweig der Verbindung.The network 450 can the mobile computing device 410 with a voice-over-internet protocol service (VoIP service) 464 which routes voice communication over an IP network, unlike the PSTN. For example, a user of the mobile computing device 410 call a VoIP application and initiate a call using the program. The server system 452 The service provider may forward voice data from the call to a VoIP service that may route the call over the Internet to a corresponding computing device, possibly using the PSTN for a last branch of the call.

Ein Anwendungs-Store 466 kann für einen Anwender der mobilen Computervorrichtung 410 die Möglichkeit bereitstellen, eine Liste entfernt gespeicherter Anwendungsprogramme, die der Anwender über das Netz 450 herunterladen und auf der mobilen Computervorrichtung 410 installieren kann, zu browsen. Der Anwendungs-Store 466 kann als ein Depot für Anwendungen dienen, die durch Entwickler für Anwendungen Dritter entwickelt sind. Ein Anwendungsprogramm, das auf der mobilen Computervorrichtung 410 installiert ist, kann fähig sein, über das Netz 450 mit Server-Systemen zu kommunizieren, die für das Anwendungsprogramm designiert sind. Beispielsweise kann ein VoIP-Anwendungsprogramm aus dem Anwendungs-Store 466 heruntergeladen werden, das dem Anwender ermöglicht, mit dem VoIP-Dienst 464 zu kommunizieren. An application store 466 can for a user of the mobile computing device 410 provide the ability to keep a list of stored application programs that the user has over the network 450 download and on the mobile computing device 410 can install, browse. The application store 466 can serve as a depot for applications developed by third-party developers. An application program running on the mobile computing device 410 installed, can be capable over the network 450 to communicate with server systems designated for the application program. For example, a VoIP application program from the application store 466 be downloaded, which allows the user to use the VoIP service 464 to communicate.

Die mobile Computervorrichtung 410 kann über das Netz 450 auf Inhalt auf dem Internet 468 zugreifen. Beispielsweise kann ein Anwender der mobilen Computervorrichtung 410 eine Webbrowser-Anwendung aufrufen, die Daten von entfernten Computervorrichtungen anfordert, die an designierten universellen Ressourcenorten zugreifbar sind. In verschiedenen Beispielen können einige der Dienste 460 über das Internet zugänglich sein.The mobile computing device 410 can over the network 450 on content on the internet 468 access. For example, a user of the mobile computing device 410 call a web browser application that requests data from remote computing devices that are accessible at designated universal resource locations. In various examples, some of the services 460 accessible via the Internet.

Die mobile Computervorrichtung 410 kann mit einem Personalcomputer 470 kommunizieren. Beispielsweise kann der Personalcomputer 470 ein Heimcomputer für einen Anwender der mobilen Computervorrichtung 410 sein. Somit kann der Anwender imstande sein, Medien von einem Personalcomputer 470 zu streamen. Der Anwender kann außerdem die Dateistruktur seines Personalcomputers 470 ansehen und ausgewählte Dokumente zwischen den Computervorrichtungen übertragen.The mobile computing device 410 can with a personal computer 470 communicate. For example, the personal computer 470 a home computer for a user of the mobile computing device 410 be. Thus, the user may be able to receive media from a personal computer 470 to stream. The user can also view the file structure of his personal computer 470 view and transfer selected documents between the computer devices.

Die mobile Computervorrichtung 410 kann mit einem sozialen Netz 474 kommunizieren. Das soziale Netz kann zahlreiche Mitglieder enthalten, von denen einige zugestimmt haben, als Bekannte verbunden zu sein. Anwendungsprogramme auf der mobilen Computervorrichtung 410 können auf das soziale Netz 474 zugreifen, um Informationen basierend auf den Bekannten des Anwenders der mobilen Computervorrichtung abzurufen. Beispielsweise kann ein Adressbuch”-Anwendungsprogramm Telefonnummern für die Bekannten des Anwenders abrufen. In verschiedenen Beispielen kann Inhalt an die mobile Computervorrichtung 410 basierend auf dem Abstand im sozialen Netz von dem Anwender zu anderen Mitgliedern in einem Mitgliedergraph des sozialen Netzen und Verbindungsbeziehungen geliefert werden. Beispielsweise können Werbung und Nachrichtenartikelinhalt für den Anwender basierend auf einem Interaktionsniveau mit solchem Inhalt durch Mitglieder, die dem Anwender ”nahe” sind (z. B. Mitglieder, die ”Freunde” oder ”Freunde von Freunden” sind) ausgewählt werden.The mobile computing device 410 can with a social network 474 communicate. The social network may contain many members, some of whom have agreed to be connected as acquaintances. Application programs on the mobile computing device 410 can on the social network 474 to retrieve information based on the acquaintances of the user of the mobile computing device. For example, an address book application program can retrieve telephone numbers for the user's acquaintances. In various examples, content may be sent to the mobile computing device 410 be delivered based on the distance in the social network from the user to other members in a member graph of social networks and connection relationships. For example, advertising and news article content may be selected for the user based on an interaction level with such content by members who are "close" to the user (eg, members who are "friends" or "friends of friends").

Die mobile Computervorrichtung 410 kann über das Netz 450 auf eine persönliche Gruppe von Kontakten 476 zugreifen. Jeder Kontakt kann eine Person identifizieren und Informationen über diese Person (z. B. eine Telefonnummer, eine E-Mail-Adresse und einen Geburtstag) enthalten. Weil die Gruppe der Kontakte entfernt zu der mobilen Computervorrichtung 410 gehostet ist, kann der Anwender auf die Kontakte über mehrere Vorrichtungen als eine gemeinsame Gruppe von Kontakten zugreifen und sie pflegen.The mobile computing device 410 can over the network 450 on a personal group of contacts 476 access. Each contact may identify a person and include information about that person (eg, a telephone number, an e-mail address, and a birthday). Because the group of contacts is removed to the mobile computing device 410 is hosted, the user can access and maintain the contacts across multiple devices as a common group of contacts.

Die mobile Computervorrichtung 410 kann auf cloud-basierte Anwendungsprogramme 478 zugreifen. Cloud-Computing stellt Anwendungsprogramme (z. B. ein Textverarbeitungsprogramm oder ein E-Mail-Programm) bereit, die entfernt von der mobilen Computervorrichtung 410 gehostet sind und auf die durch die Vorrichtung 410 unter Verwendung eines Web-Browsers oder eines dedizierten Programms zugegriffen werden kann.The mobile computing device 410 can be based on cloud-based application programs 478 access. Cloud computing provides application programs (eg, a word processing program or an e-mail program) that are remote from the mobile computing device 410 are hosted and passed through the device 410 can be accessed using a web browser or a dedicated program.

Ein Kartendienst 480 kann die mobile Computervorrichtung 410 mit Straßenkarten, Streckenplanungsinformationen und Satellitenbildern versorgen. Der Kartendienst 480 kann auch Anfragen empfangen und ortsspezifische Ergebnisse zurückgeben. Beispielsweise kann die mobile Computervorrichtung 410 einen geschätzten Aufenthaltsort der mobilen Computervorrichtung und eine durch den Anwender eingegebene Anfrage nach ”Pizzerien” an den Kartendienst 480 senden. Der Kartendienst 480 kann eine Straßenkarte mit ”Markierungen”, die der Karte überlagert sind und die geographischen Orte nahegelegener ”Pizzerien” identifizieren, zurückgeben.A map service 480 can the mobile computing device 410 provide with road maps, route planning information and satellite imagery. The map service 480 can also receive requests and return site-specific results. For example, the mobile computing device 410 an estimated location of the mobile computing device and a request by the user for "pizzerias" to the map service 480 send. The map service 480 can return a road map with "markers" superimposed on the map identifying the geographic locations of nearby "pizzerias".

Der Wegbeschreibungsdienst 482 kann die mobile Computervorrichtung 410 mit Wegbeschreibungen zu einem durch den Anwender vorgegebenen Ziel versorgen. Beispielsweise kann der Wegbeschreibungsdienst 482 eine Ansicht auf Straßenebene eines geschätzten Aufenthaltsorts der Vorrichtung zu der Vorrichtung 410 streamen, zusammen mit Daten zum Bereitstellen von Audiobefehlen und Überlagern von Pfeilen, die einen Anwender der Vorrichtung 410 zu dem Ziel führen.The directions service 482 can the mobile computing device 410 provide directions to a user-specified destination. For example, the route description service 482 a road-level view of an estimated location of the device to the device 410 stream, along with data for providing audio commands and overlaying arrows representing a user of the device 410 lead to the goal.

Verschiedene Formen von Streaming-Medien 484 können durch die mobile Computervorrichtung 410 angefordert werden. Beispielsweise kann die Computervorrichtung 410 einen Stream für eine vorab aufgezeichnete Videodatei, ein Live-Fernsehprogramm oder ein Live-Radioprogramm anfordern.Different forms of streaming media 484 can through the mobile computing device 410 be requested. For example, the computing device 410 request a pre-recorded video stream, live TV program, or live radio program.

Ein Mikro-Blogging-Dienst 486 kann von der mobilen Computervorrichtung 410 einen durch den Anwender eingegebenen Post empfangen, der die Empfänger des Posts nicht identifiziert. Der Mikro-Blogging-Dienst 486 kann den Post zu anderen Mitgliedern des Mikro-Blogging-Dienstes 486 verbreiten, die vereinbart haben, den Anwender zu abonnieren.A micro-blogging service 486 can from the mobile computing device 410 receive a post entered by the user, which contains the Recipient of the post not identified. The micro-blogging service 486 can mail to other members of the micro-blogging service 486 who have agreed to subscribe to the user.

Eine Such-Engine 488 kann die von einem Anwender eingegebenen Text- oder verbalen Anfragen von der mobilen Computervorrichtung 410 empfangen, eine Gruppe von über das Internet zugänglichen Dokumenten, die die Anfrage beantworten, bestimmen und für die Vorrichtung 410 Informationen bereitstellen, um eine Liste von Suchergebnissen für die Antwortdokumente anzuzeigen. In Beispielen, in denen eine verbale Anfrage empfangen wird, kann der Spracherkennungsdienst 472 das empfangene Audio in eine Textanfrage umwandeln, die zu der Such-Engine gesendet wird.A search engine 488 may be the textual or verbal requests entered by a user from the mobile computing device 410 receive a set of Internet-accessible documents that answer and determine the request for the device 410 Provide information to display a list of search results for the response documents. In examples in which a verbal request is received, the voice recognition service may 472 convert the received audio into a text request sent to the search engine.

Diese und andere Dienste können in einem Server-System 852 implementiert sein. Ein Server-System kann eine Kombination aus Hardware und Software sein, die einen Dienst oder eine Gruppe von Diensten bereitstellt. Beispielsweise kann eine Gruppe aus physikalisch getrennten und vernetzten Computervorrichtungen als eine logische Server-Systemeinheit zusammenarbeiten, um Operationen zu handhaben, die notwendig sind, um einen Dienst für hunderte von Computervorrichtungen anzubieten. Das Server-System ist hier als auch ein Computersystem bezeichnet.These and other services can be in a server system 852 be implemented. A server system may be a combination of hardware and software that provides a service or group of services. For example, a group of physically separate and networked computing devices may work together as a logical server system unit to handle operations necessary to provide a service to hundreds of computing devices. The server system is referred to here as well as a computer system.

In verschiedenen Implementierungen werden Operationen, die ”in Reaktion auf eine” oder ”als eine Konsequenz einer” weiteren Operation (z. B. einer Bestimmung oder einer Identifizierung) ausgeführt werden, nicht ausgeführt, falls die vorherige Operation nicht erfolgreich ist (z. B. falls die Bestimmung nicht ausgeführt wurde). Operationen, die ”automatisch” ausgeführt werden, sind Operationen, die ohne Eingreifen des Anwenders (z. B. eine eingreifende Anwendereingabe) ausgeführt werden. Merkmale in diesem Dokument, die mit bedingter Sprache beschrieben sind, können Implementierungen beschreiben, die optional sind. In einigen Beispielen enthält ”Übertragen” von einer ersten Vorrichtung zu einer zweiten Vorrichtung, dass die erste Vorrichtung Daten in ein Netz zum Empfang durch die zweite Vorrichtung platziert, muss jedoch nicht enthalten, dass die zweite Vorrichtung die Daten empfängt. Umgekehrt kann ”Empfangen” von einer ersten Vorrichtung das Empfangen der Daten von einem Netz enthalten, muss jedoch nicht enthalten, dass die erste Vorrichtung die Daten überträgt.In various implementations, operations that are performed "in response to" or "as a consequence of another" operation (eg, a determination or an identification) are not performed if the previous operation is unsuccessful (e.g. if the determination was not carried out). Operations that are performed "automatically" are operations that are performed without user intervention (eg, an intrusive user input). Features in this document that are described with conditional language may describe implementations that are optional. In some examples, "transmitting" from a first device to a second device includes having the first device place data in a network for receipt by the second device, but need not include the second device receiving the data. Conversely, "receiving" from a first device may include receiving the data from a network, but need not include the first device transmitting the data.

”Bestimmen” durch ein Computersystem kann enthalten, dass das Computersystem anfordert, dass eine weitere Vorrichtung die Bestimmung ausführt und die Ergebnisse dem Computersystem zuführt. Außerdem kann ”Anzeigen” oder ”Präsentieren” durch ein Computersystem enthalten, dass das Computersystem Daten sendet, um eine weitere Vorrichtung zu veranlassen, die referenzierten Informationen anzuzeigen oder zu präsentieren."Determining" by a computer system may include the computer system requesting another device to perform the determination and to supply the results to the computer system. Additionally, "displaying" or "presenting" by a computer system may include the computer system sending data to cause another device to display or present the referenced information.

Ausführungsformen der Gegenstands und der Operationen, die in dieser Beschreibung beschrieben sind, können in einer digitalen elektronischen Schaltungsanordnung oder in Computer-Software, Firmware oder Hardware, die die Strukturen enthalten, die in dieser Beschreibung offenbart sind, und ihre strukturellen Äquivalente enthalten, oder in Kombinationen aus einem oder mehreren daraus implementiert sein. Ausführungsformen des in dieser Beschreibung beschriebenen Gegenstands können als ein oder mehrere Computerprogramme implementiert sein, d. h. ein oder mehrere Module aus Computerprogrammanweisungen, die auf einem Computerspeichermedium zur Ausführung durch eine oder zur Steuerung des Betriebs einer Datenverarbeitungsvorrichtung codiert sind. Alternativ oder zusätzlich können die Programmanweisungen auf einem künstlich erzeugten verbreiteten Signal codiert sein, z. B. einem maschinenerzeugten elektrischen, optischen oder elektromagnetischen Signal, das erzeugt wird, um Informationen zur Übertragung zu geeigneten Empfängereinrichtungen zur Ausführung durch eine Datenverarbeitungseinrichtung zu codieren. Ein Computerspeichermedium kann eine computerlesbare Speichervorrichtung, ein computerlesbares Speichersubstrat, ein Speicher-Array oder eine Speichervorrichtung für Direktzugriff oder seriellen Zugriff oder eine Kombination aus einem oder mehreren daraus sein oder darin enthalten sein. Außerdem kann, während ein Computerspeichermedium kein verbreitetes Signal ist, ein Computerspeichermedium eine Quelle oder ein Ziel für Computerprogrammanweisungen sein, die in einem künstlich erzeugten verbreiteten Signal codiert sind. Das Computerspeichermedium kann außerdem eine oder mehrere getrennte physikalische Komponenten oder Medien (z. B. mehrere CDs, Platten oder andere Speichervorrichtungen) sein oder darin enthalten sein.Embodiments of the subject matter and the operations described in this specification may be incorporated in a digital electronic circuitry or in computer software, firmware, or hardware including the structures disclosed in this specification and their structural equivalents Combinations of one or more of them can be implemented. Embodiments of the subject matter described in this specification may be implemented as one or more computer programs, i. H. one or more modules of computer program instructions encoded on a computer storage medium for execution by or for controlling the operation of a data processing device. Alternatively or additionally, the program instructions may be encoded on an artificially generated broadcast signal, e.g. A machine-generated electrical, optical or electromagnetic signal generated to encode information for transmission to suitable receiver devices for execution by a data processing device. A computer storage medium may be or may be included in a computer readable storage device, a computer readable storage substrate, a storage array or random access or serial access storage device, or a combination of one or more thereof. In addition, while a computer storage medium is not a propagated signal, a computer storage medium may be a source or destination for computer program instructions encoded in an artificially generated broadcast signal. The computer storage medium may also be or may be included in one or more separate physical components or media (eg, multiple CDs, disks, or other storage devices).

Die in dieser Beschreibung beschriebenen Operationen können als Operationen implementiert sein, die durch eine Datenverarbeitungseinrichtung auf Daten, die in einer oder mehreren computerlesbaren Speichervorrichtungen gespeichert oder von anderen Quellen empfangen werden, ausgeführt werden.The operations described in this specification may be implemented as operations performed by a data processing device on data stored in one or more computer-readable storage devices or received from other sources.

Der Begriff ”Datenverarbeitungseinrichtung” umfasst alle Arten von Einrichtungen, Vorrichtungen und Maschinen zum Verarbeiten von Daten, die als Beispiel einen programmierbaren Prozessor, einen Computer, ein System auf einem Chip, mehrere oder Kombinationen des Vorstehenden enthalten. Die Einrichtung kann eine Spezial-Logikschaltungsanordnung, z. B. ein FGPA (feldprogrammierbares Gatterfeld) oder eine ASIC (anwendungsspezifische integrierte Schaltung), enthalten. Die Vorrichtung kann außerdem zusätzlich zu Hardware Code enthalten, der eine Ausführungsumgebung für das fragliche Computerprogramm erzeugt, z. B. Code, der Prozessor-Firmware, einen Protokollstack, ein Datenbankmanagementsystem, ein Betriebssystem, eine plattformübergreifende Laufzeitumgebung, eine virtuelle Maschine oder eine Kombination aus einem oder mehreren davon bildet. Die Einrichtung und die Ausführungsumgebung können verschiedene unterschiedliche Computermodell-Infrastrukturen wie z. B. Web-Dienste, verteilte Computer- und Grid-Computer-Infrastrukturen realisieren.The term "data processing device" includes all types of devices, devices and machines for processing data, including as an example a programmable processor, a computer, a system on a chip, several or combinations of the foregoing. The device may include special logic circuitry, e.g. As an FGPA (field programmable gate array) or an ASIC ( application specific integrated circuit). The apparatus may also include, in addition to hardware, code that generates an execution environment for the computer program in question, e.g. Code that forms processor firmware, a protocol stack, a database management system, an operating system, a cross-platform runtime environment, a virtual machine, or a combination of one or more thereof. The facility and execution environment may include various different computer model infrastructures, such as: Web services, distributed computing and grid computing infrastructures.

Ein Computerprogramm (auch als ein Programm, Software, Softwareanwendung, Skript oder Code bezeichnet) kann in irgendeiner Form einer Programmiersprache geschrieben sein, die kompilierte oder interpretierte Sprachen, deklarative oder prozedurale Sprachen enthalten, und es kann in irgendeiner Form verteilt werden, die als ein eigenständiges Programm oder als ein Modul, eine Komponente, eine Subroutine, ein Objekt oder eine andere Einheit, die zum Gebrauch in einer Computer-Umgebung geeignet ist, enthält. Ein Computerprogramm kann, muss jedoch nicht, einer Datei in einem Dateisystem entsprechen. Ein Programm kann in einem Abschnitt einer Datei, die andere Programme oder Daten enthält (z. B. ein oder mehrere Skripte, die in einem Auszeichnungssprachen-Dokument gespeichert sind), in einer einzelnen Datei, die für das fragliche Programm dediziert ist, oder in mehreren koordinierten Dateien (z. B. Dateien, die ein oder mehrere Module, Unterprogramme oder Code-Abschnitte speichern) gespeichert sein. Ein Computerprogramm kann verteilt werden, um auf einem Computer oder auf mehreren Computern, die sich an einem Standort oder verteilt über mehrere Standorte befinden und durch ein Kommunikationsnetz miteinander verbunden sind, ausgeführt zu werden.A computer program (also referred to as a program, software, software application, script or code) may be written in any form of programming language containing compiled or interpreted languages, declarative or procedural languages, and may be distributed in any form that may be termed a standalone program or as a module, component, subroutine, object, or other entity suitable for use in a computer environment. A computer program may or may not be equivalent to a file in a file system. A program may be stored in a section of a file containing other programs or data (eg, one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple coordinated files (eg, files that store one or more modules, subroutines or code sections). A computer program may be distributed to run on one computer or on multiple computers located at one site or distributed over multiple sites and interconnected by a communications network.

Die Prozesse und Logikabläufe, die in dieser Beschreibung beschrieben sind, können durch einen oder mehrere programmierbare Prozessoren ausgeführt werden, die ein oder mehrere Computerprogramme ablaufen lassen, um Aktionen durch Arbeiten auf Eingabedaten und Erzeugen von Ausgaben auszuführen. Die Prozesse und Logikabläufe können auch durch eine Spezial-Logikschaltungsanordnung, z. B. ein FGPA (feldprogrammierbares Gatterfeld) oder eine ASIC (anwendungsspezifische integrierte Schaltung) ausgeführt werden, und die Einrichtung kann als solche implementiert sein.The processes and logic operations described in this specification may be performed by one or more programmable processors that run one or more computer programs to perform actions by working on input data and generating outputs. The processes and logic operations may also be implemented by special logic circuitry, e.g. For example, an FGPA (Field Programmable Gate Array) or an ASIC (Application Specific Integrated Circuit) may be implemented, and the device may be implemented as such.

Prozessoren, die für die Ausführung eines Computerprogramms geeignet sind, enthalten als Beispiel sowohl Allzweck- als auch Spezial-Mikroprozessoren und irgendeinen oder mehrere Prozessoren irgendeiner Art eines digitalen Computers. Allgemein wird ein Prozessor Anweisungen und Daten von einem Festwertspeicher oder einem Direktzugriffsspeicher oder beiden empfangen. Die wesentlichen Elemente eines Computers sind ein Prozessor zum Ausführen von Aktionen in Übereinstimmung mit Anweisungen und eine oder mehrere Speichervorrichtungen zum Speichern von Anweisungen und Daten. Im Allgemeinen wird ein Computer auch eine oder mehrere Massenspeichervorrichtungen zum Speichern von Daten, z. B. magnetische, magneto-optische Platten oder optische Platten, enthalten oder betriebstechnisch damit gekoppelt sein, um Daten von ihnen zu empfangen, zu ihnen zu übertragen oder beides. Ein Computer muss jedoch solche Vorrichtungen nicht aufweisen. Außerdem kann ein Computer in eine weitere Vorrichtung eingebettet sein, z. B. in ein Mobiltelefon, einen persönlichen digitalen Assistenten (PDA), ein mobiles Audio- oder Videoabspielgerät, eine Spielkonsole, einen Empfänger des globalen Positionierungssystems (GPS-Empfänger) oder eine tragbare Speichervorrichtung (z. B. ein Flashlaufwerk über den universellen seriellen Bus (USB-Flashlaufwerk), um nur einige wenige zu nennen. Vorrichtungen, die zum Speicher von Computerprogrammanweisungen und Daten geeignet sind, enthalten alle Formen von nichtflüchtigem Speicher, Medien und Speichervorrichtungen, die als Beispiel Halbleiterspeichervorrichtungen, z. B. EPROM, EEPROM und Flash-Speichervorrichtungen; Magnetplatten, z. B. interne Festplatten oder herausnehmbare Platten; magneto-optische Platten; und CD ROM und DVD-ROM-Platten enthalten. Der Prozessor und der Speicher können durch eine Spezial-Logikschaltungsanordnung ergänzt oder darin integriert sein.Processors suitable for executing a computer program include, by way of example, both general purpose and specialty microprocessors and any one or more processors of any type of digital computer. Generally, a processor will receive instructions and data from a read only memory or random access memory or both. The essential elements of a computer are a processor for performing actions in accordance with instructions and one or more memory devices for storing instructions and data. In general, a computer will also have one or more mass storage devices for storing data, e.g. Magnetic, magneto-optical disks or optical disks, or operably coupled thereto to receive, transmit data to, or both. However, a computer need not have such devices. In addition, a computer may be embedded in another device, e.g. In a mobile phone, a personal digital assistant (PDA), a mobile audio or video player, a game console, a global positioning system (GPS) receiver, or a portable storage device (e.g., a flash drive via the universal serial bus (USB flash drive), to name just a few .Means suitable for storing computer program instructions and data include all forms of nonvolatile memory, media, and memory devices exemplifying semiconductor memory devices, such as EPROM, EEPROM, and Flash Magnetic disks, such as internal hard disks or removable disks; magneto-optical disks; and CD ROM and DVD-ROM disks. The processor and memory may be supplemented or integrated with special logic circuitry.

Um die Interaktion mit einem Anwender zu ermöglichen, können Ausführungsformen des in dieser Beschreibung beschriebenen Gegenstands auf einem Computer implementiert sein, der eine Anzeigevorrichtung, z. B. einen CRT-(Kathodenstrahlröhren-) oder LCD-Monitor (Flüssigkristallanzeige-Monitor) zum Anzeigen von Informationen für den Anwender und eine Tastatur und eine Zeigevorrichtung, z. B. eine Maus oder einen Trackball, durch die der Anwender Eingaben für den Computer bereitstellen kann, aufweist. Andere Arten von Vorrichtungen können verwendet werden, um ebenfalls Interaktion mit einem Anwender zu ermöglichen; beispielsweise kann eine für den Anwender bereitgestellte Rückmeldung irgendeine Form sensorischer Rückmeldung sein, z. B. eine visuelle Rückmeldung, eine hörbare Rückmeldung oder eine tastbare Rückmeldung; und eine Eingabe von dem Anwender kann in irgendeiner Form empfangen werden, die akustische, Sprach- oder tastbare Eingabe enthält. Zusätzlich kann ein Computer mit einem Anwender durch Senden von Dokumenten zu einer Vorrichtung und Empfangen von Dokumenten von einer Vorrichtung, die durch den Anwender verwendet wird, interagieren; beispielsweise durch Senden von Web-Seiten zu einem Web-Browser auf einer Anwendervorrichtung eines Anwenders in Reaktion auf Anforderungen, die von dem Web-Browser empfangen werden.To facilitate interaction with a user, embodiments of the subject matter described in this specification may be implemented on a computer having a display device, e.g. A CRT (cathode ray tube) or LCD (liquid crystal display) monitor for displaying information to the user and a keyboard and a pointing device, e.g. A mouse or trackball through which the user can provide input to the computer. Other types of devices may be used to also allow interaction with a user; For example, feedback provided to the user may be some form of sensory feedback, e.g. A visual feedback, an audible feedback or a tactile feedback; and an input from the user may be received in any form that includes audio, voice or tactile input. In addition, a computer may interact with a user by sending documents to a device and receiving documents from a device used by the user; for example, by sending web pages to a web browser on a user device of a user in response to requests received from the web browser.

Ausführungsformen des in dieser Beschreibung beschriebenen Gegenstands können in einem Computersystem implementiert sein, das eine Backend-Komponente, z. B. als einen Daten-Server, enthält oder das eine Middleware-Komponente, z. B. einen Anwendungsserver, enthält, oder der eine Frontend-Komponente, z. B. einen Anwendercomputer, enthält, der eine grafische Anwenderschnittstelle oder einen Web-Browser aufweist, durch die/den ein Anwender mit einer Implementierung des in dieser Beschreibung beschriebenen Gegenstands interagieren kann, oder irgendeine Kombination eines oder mehrerer solcher Backend-, Middleware- oder Frontend-Komponenten. Die Komponenten des Systems können durch irgendeine Form oder irgendein Medium zur digitalen Datenkommunikation, z. B. ein Kommunikationsnetz, miteinander verbunden sein. Beispiele für Kommunikationsnetze enthalten ein lokales Netz (”LAN”) und ein Weitbereichsnetz (”WAN”), ein Inter-Netz (z. B. das Internet) und Peer-to-Peer-Netze (z. B. Ad hoc-Peer-to-Peer-Netze).Embodiments of the subject matter described in this specification may be implemented in a computer system having a backend component, e.g. As a data server or that contains a middleware component, e.g. As an application server contains, or a front-end component, for. A user computer having a graphical user interface or web browser through which a user can interact with an implementation of the subject matter described in this specification, or any combination of one or more such backend, middleware or frontend components. The components of the system may be replaced by any form or medium for digital data communication, e.g. As a communication network, be connected to each other. Examples of communication networks include a local area network ("LAN") and a wide area network ("WAN"), an inter-network (eg, the Internet), and peer-to-peer networks (eg, ad hoc peer -to-peer networks).

Das Computersystem kann Anwender und Server enthalten. Ein Anwender und ein Server sind im Allgemeinen voneinander entfernt und interagieren typischerweise über ein Kommunikationsnetz. Die Beziehung von Anwender und Server entsteht aufgrund der Computerprogramme, die auf den jeweiligen Computern laufen und eine Anwender-Server-Beziehung zueinander aufweisen. In einigen Ausführungsformen sendet ein Server Daten (z. B. eine HTML-Seite) zu einer Anwendervorrichtung (z. B. zum Zweck der Anzeige der Daten für einen Anwender und Empfangen von Anwendereingabe von einem Anwender, der mit der Anwendervorrichtung interagiert). Daten, die in der Anwendervorrichtung erzeugt werden (z. B. ein Ergebnis einer Anwenderinteraktion), können in dem Server von der Anwendervorrichtung empfangen werden.The computer system may include users and servers. A user and a server are generally distant from each other and typically interact over a communications network. The relationship between user and server arises because of the computer programs running on the respective computers and having a user-server relationship with each other. In some embodiments, a server sends data (eg, an HTML page) to a user device (eg, for the purpose of displaying the data to a user and receiving user input from a user interacting with the user device). Data generated in the user device (eg, a result of user interaction) may be received at the server by the user device.

Obwohl diese Beschreibung viele spezifische Einzelheiten der Implementierung beinhaltet, sollten diese nicht als Einschränkungen für den Schutzbereich irgendwelcher Erfindungen oder dessen, das beansprucht sein kann, gedeutet werden, sondern vielmehr als Beschreibungen der Merkmale, die für spezielle Ausführungsformen spezieller Erfindungen spezifisch sind. Spezielle Merkmale, die in dieser Beschreibung im Kontext getrennter Ausführungsformen beschrieben sind, können auch in Kombination in einer einzigen Ausführungsform implementiert sein. Umgekehrt können verschiedene Merkmale, die im Kontext einer einzigen Ausführungsform beschrieben sind, auch in mehreren Ausführungsformen getrennt oder in irgendeiner geeigneten Unterkombination implementiert sein. Außerdem können, obwohl Merkmale vorstehend als in speziellen Kombinationen arbeitend beschrieben und anfangs sogar als solche beansprucht sein können, ein oder mehrere Merkmale aus einer beanspruchten Kombination in einigen Fällen aus der Kombination herausgenommen sein, und die beanspruchte Kombination kann sich auf eine Unterkombination oder eine Variation einer Unterkombination richten.While this description includes many specific details of the implementation, these should not be construed as limitations on the scope of any inventions or claims that may be claimed, but rather as descriptions of the features specific to particular embodiments of particular inventions. Specific features described in this specification in the context of separate embodiments may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented separately in several embodiments or implemented in any suitable subcombination. In addition, although features may be described above as being operable in specific combinations and may be claimed as such at the outset, one or more features of a claimed combination may, in some instances, be removed from the combination, and the claimed combination may be a subcombination or variation to a subcombination.

Ähnlich sollte, obwohl Operationen in den Zeichnungen in einer speziellen Reihenfolge abgebildet sind, dieses nicht so verstanden werden, dass es erforderlich ist, dass solche Operationen in der speziellen gezeigten Reihenfolge oder in sequentieller Reihenfolge ausgeführt werden oder dass alle dargestellten Operationen ausgeführt werden, um wünschenswerte Ergebnisse zu erreichen. Unter speziellen Umständen können Multitasking und Parallelverarbeitung vorteilhaft sein. Außerdem sollte die Trennung verschiedener Systemkomponenten in den vorstehend beschriebenen Ausführungsformen nicht so verstanden werden, dass eine solche Trennung in allen Ausführungsformen erforderlich ist, und es sollte verstanden werden, dass die beschriebenen Programmkomponenten und Systeme im Allgemeinen gemeinsam in einem einzigen Software-Produkt integriert oder in mehrere Software-Produkte paketiert sein können.Similarly, although operations in the drawings are depicted in a particular order, this should not be construed as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations are performed to be desirable To achieve results. Under special circumstances, multitasking and parallel processing can be beneficial. Moreover, the separation of various system components in the embodiments described above should not be construed to require such separation in all embodiments, and it should be understood that the described program components and systems are generally integrated together in a single software product or integrated into a single software product several software products can be packaged.

Somit sind spezielle Ausführungsformen des Gegenstands beschrieben worden. Andere Ausführungsformen sind innerhalb des Schutzbereichs der folgenden Ansprüche. In einigen Fällen können die Aktionen, die in den Ansprüchen vorgetragen sind, in einer anderen Reihenfolge ausgeführt werden und immer noch wünschenswerte Ergebnisse erreichen. Zusätzlich erfordern die in den begleitenden Figuren abgebildeten Prozesse nicht notwendigerweise die spezielle gezeigte Reihenfolge oder sequentielle Reihenfolge, um wünschenswerte Ergebnisse zu erreichen. In speziellen Implementierungen können Multitasking und Parallelverarbeitung vorteilhaft sein.Thus, specific embodiments of the subject matter have been described. Other embodiments are within the scope of the following claims. In some cases, the actions recited in the claims may be performed in a different order and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order or sequential order shown to achieve desirable results. In specific implementations, multitasking and parallel processing may be beneficial.

Claims (13)

Anwendervorrichtung, die umfasst: eine Datenverarbeitungseinrichtung; eine Anzeigevorrichtung; und ein nicht-transitorisches computerlesbares Speichermedium in Datenkommunikation mit der Datenverarbeitungseinrichtung, das Anweisungen speichert, die durch die Datenverarbeitungseinrichtung ausführbar sind und bei einer solchen Ausführung bewirken, dass die Datenverarbeitungseinrichtung Operationen ausführt, die umfassen: Anzeigen auf einer Anwendervorrichtung der Anwendervorrichtung einer speziellen Umgebungsinstanz einer nativen Anwendung, die mehrere unterschiedliche Umgebungsinstanzen anzeigen kann, wobei die native Anwendung eine Anwendung ist, die arbeitet, um die Umgebungsinstanzen zur Anzeige innerhalb der nativen Anwendung auf der Anwendervorrichtung zu erzeugen, und unabhängig von einer Browser-Anwendung arbeitet, die auf der Anwendervorrichtung arbeiten kann; Empfangen in der Anwendervorrichtung und während die spezielle Umgebungsinstanz ein aktiver Fokus der Anwendervorrichtung ist, eines einzelnen eingegebenen Betriebssystembefehls, der ein Befehl ist, der unabhängig von der nativen Anwendung aufgerufen wird; in Reaktion auf den einzelnen eingegebenen Betriebssystembefehl: Anzeigen auf der Anzeigevorrichtung einer Kontextinformationskarte, die einen Teilen-Befehl enthält; in Reaktion auf eine Auswahl des Teilen-Befehls: Bestimmen einer Empfängeradresse, die eine Empfängervorrichtung spezifiziert, die von der Anwendervorrichtung getrennt ist; Erzeugen eines Bilds der speziellen Umgebungsinstanz der nativen Anwendung; Auswählen eines einheitlichen Ressourcenbezeichners der speziellen Umgebungsinstanz der nativen Anwendung; Erzeugen einer Nachricht, die das Bild der speziellen Umgebungsinstanz und den einheitlichen Ressourcenbezeichner enthält; und Senden der Nachricht, die das Bild der speziellen Umgebungsinstanz und den einheitlichen Ressourcenbezeichner enthält, zu der Empfängeradresse.A user device comprising: a data processing device; a display device; and a non-transitory computer-readable storage medium in data communication with the data processing device that stores instructions executable by the data processing device and, in such an embodiment, causes the data processing device to perform operations including: displaying on a user device the user device a particular native instance environment instance Application that can display multiple different environment instances, where the native application is an application that works, to create the environment instances for display within the native application on the user device, and operates independently of a browser application that can operate on the user device; Receiving in the user device and while the particular environment instance is an active focus of the user device, a single input operating system command that is a command invoked independently of the native application; in response to the single input operating system command: displaying on the display device a context information map containing a sharing command; in response to a selection of the share command: determining a recipient address that specifies a recipient device that is separate from the user device; Generating an image of the native environment instance of the native application; Selecting a unique resource identifier of the native environment instance of the native application; Generating a message containing the image of the specific environment instance and the uniform resource identifier; and sending the message containing the image of the specific environment instance and the uniform resource identifier to the recipient address. Anwendervorrichtung nach Anspruch 1, wobei das Erzeugen der Nachricht, die das Bild der speziellen Umgebungsinstanz und den einheitlichen Ressourcenbezeichner enthält, Einbetten des einheitlichen Ressourcenbezeichners in Bildmetadaten des Bilds umfasst, wobei in Reaktion auf einen Navigationsbefehl auf dem Bild an einer Anwendervorrichtung, die die Nachricht empfängt, die Anwendervorrichtung die native Anwendung an der speziellen Umgebungsinstanz, die durch den einheitlichen Ressourcenbezeichner adressiert ist, instanziieren wird.The user device of claim 1, wherein generating the message including the image of the specific environment instance and the uniform resource identifier includes embedding the uniform resource identifier in image metadata of the image, in response to a navigation command on the image at a user device receiving the message The user device will instantiate the native application to the specific environment instance addressed by the unified resource identifier. Anwendervorrichtung nach Anspruch 1, wobei das Erzeugen der Nachricht, die das Bild der speziellen Umgebungsinstanz und den einheitlichen Ressourcenbezeichner enthält, Aufnehmen des einheitlichen Ressourcenbezeichners und der Bildmetadaten des Bilds als getrennte Elemente, die getrennt angezeigt werden, umfasst, und wobei in Reaktion auf einen Navigationsbefehl auf dem einheitlichen Ressourcenbezeichner an einer Anwendervorrichtung, die die Nachricht empfängt, die Anwendervorrichtung die native Anwendung an der speziellen Umgebungsinstanz, die durch den einheitlichen Ressourcenbezeichner adressiert ist, instanziieren wird.The user device of claim 1, wherein generating the message including the image of the specific environment instance and the uniform resource identifier includes capturing the uniform resource identifier and the image metadata of the image as separate elements displayed separately, and wherein in response to a navigation command on the unified resource identifier at a user device receiving the message, the user device will instantiate the native application at the specific environment instance addressed by the unified resource identifier. Anwendervorrichtung nach einem der Ansprüche 1 bis 3, wobei das Auswählen des einheitlichen Ressourcenbezeichners der speziellen Umgebungsinstanz der nativen Anwendung Auswählen des einheitlichen Ressourcenbezeichners aus einem Cache der Anwendervorrichtung der zuletzt verwendeten einheitlichen Ressourcenbezeichner umfasst.The user device of any of claims 1 to 3, wherein selecting the native resource identifier of the native environment instance of the native application comprises selecting the unique resource identifier from a user device cache of the most recently used common resource identifiers. Anwendervorrichtung nach einem der Ansprüche 1 bis 3, wobei das Auswählen des einheitlichen Ressourcenbezeichners der speziellen Umgebungsinstanz der nativen Anwendung Anfordern durch das Betriebssystem der Anwendervorrichtung und von der nativen Anwendung des einheitlichen Ressourcenbezeichners der speziellen Umgebungsinstanz umfasst.The user device of any of claims 1 to 3, wherein selecting the native resource identifier of the native environment specific instance of the native application comprises requesting by the operating system of the user device and by the native application of the unique resource identifier of the specific environment instance. Anwendervorrichtung nach einem der Ansprüche 1 bis 5, wobei: in Reaktion auf den einzelnen eingegebenen Betriebssystembefehl die Anwendervorrichtung eine abfrageunabhängige Anforderung für Kontextinformationen, die für die native Anwendung relevant sind, erzeugt; und die Kontextinformationskarte Kontextinformationen enthält, die von einem Suchsystem empfangen werden und die die Antwort zu der abfrageunabhängigen Anforderung für Kontextinformationen sind.A user device according to any one of claims 1 to 5, wherein: in response to the single input operating system command, the user device generates a query-independent request for contextual information relevant to the native application; and the context information map contains contextual information received from a search system and which is the answer to the query-independent request for context information. Anwendervorrichtung nach Anspruch 6, wobei das Erzeugen der Nachricht Aufnehmen mit dem Bild der speziellen Umgebungsinstanz und dem einheitlichen Ressourcenbezeichner der Kontextinformationen enthält.The user device of claim 6, wherein generating the message includes capturing with the image of the specific environment instance and the unified resource identifier the context information. Nicht-transitorisches computerlesbares Speichermedium, das Anweisungen speichert, die durch eine Anwendervorrichtung ausführbar sind und bei einer solchen Ausführung bewirken, dass die Anwendervorrichtung Operationen ausführt, die umfassen: Anzeigen auf einer Anwendervorrichtung der Anwendervorrichtung einer speziellen Umgebungsinstanz einer nativen Anwendung, die mehrere unterschiedliche Umgebungsinstanzen anzeigen kann, wobei die native Anwendung eine Anwendung ist, die arbeitet, um die Umgebungsinstanzen zur Anzeige innerhalb der nativen Anwendung auf der Anwendervorrichtung zu erzeugen, und unabhängig von einer Browser-Anwendung arbeitet, die auf der Anwendervorrichtung arbeiten kann; Empfangen in der Anwendervorrichtung und während die spezielle Umgebungsinstanz ein aktiver Fokus der Anwendervorrichtung ist eines einzelnen eingegebenen Betriebssystembefehls, der ein Befehl ist, der unabhängig von der nativen Anwendung aufgerufen wird; in Reaktion auf den einzelnen eingegebenen Betriebssystembefehl: Anzeigen auf der Anzeigevorrichtung einer Kontextinformationskarte, die einen Teilen-Befehl enthält; in Reaktion auf eine Auswahl des Teilen-Befehls: Bestimmen einer Empfängeradresse, die eine Empfängervorrichtung spezifiziert, die von der Anwendervorrichtung getrennt ist; Erzeugen eines Bilds der speziellen Umgebungsinstanz der nativen Anwendung; Auswählen eines einheitlichen Ressourcenbezeichners der speziellen Umgebungsinstanz der nativen Anwendung; Erzeugen einer Nachricht, die das Bild der speziellen Umgebungsinstanz und den einheitlichen Ressourcenbezeichner enthält; und Senden der Nachricht, die das Bild der speziellen Umgebungsinstanz und den einheitlichen Ressourcenbezeichner enthält, zu der Empfängeradresse.A non-transitory computer-readable storage medium that stores instructions executable by a user device and, in such an embodiment, causes the user device to perform operations including: displaying on a user device the user device a specific native instance environment instance indicating multiple different environment instances wherein the native application is an application that operates to generate the environment instances for display within the native application on the user device, and operates independently of a browser application that can operate on the user device; Receiving in the user device and while the particular environment instance is an active user device focus is a single input operating system command that is a command invoked independently of the native application; in response to the single input operating system command: displaying on the display device a context information map containing a sharing command; in response to a selection of the share command: Determining a recipient address that specifies a recipient device that is separate from the user device; Generating an image of the native environment instance of the native application; Selecting a unique resource identifier of the native environment instance of the native application; Generating a message containing the image of the specific environment instance and the uniform resource identifier; and sending the message containing the image of the specific environment instance and the uniform resource identifier to the recipient address. Nicht-transitorisches computerlesbares Speichermedium nach Anspruch 8, wobei das Erzeugen der Nachricht, die das Bild der speziellen Umgebungsinstanz und den einheitlichen Ressourcenbezeichner enthält, Einbetten des einheitlichen Ressourcenbezeichners in Bildmetadaten des Bilds umfasst, wobei in Reaktion auf einen Navigationsbefehl auf dem Bild an einer Anwendervorrichtung, die die Nachricht empfängt, die Anwendervorrichtung die native Anwendung an der speziellen Umgebungsinstanz, die durch den einheitlichen Ressourcenbezeichner adressiert ist, instanziieren wird.The non-transitory computer-readable storage medium of claim 8, wherein generating the message including the image of the specific environment instance and the uniform resource identifier includes embedding the uniform resource identifier in image metadata of the image, wherein in response to a navigation command on the image at a user device, receiving the message, the user device will instantiate the native application at the particular environment instance addressed by the uniform resource identifier. Nicht-transitorisches computerlesbares Speichermedium nach Anspruch 8, wobei das Erzeugen der Nachricht, die das Bild der speziellen Umgebungsinstanz und den einheitlichen Ressourcenbezeichner enthält, Aufnehmen des einheitlichen Ressourcenbezeichners und der Bildmetadaten des Bilds als getrennte Elemente, die getrennt angezeigt werden, umfasst, und wobei in Reaktion auf einen Navigationsbefehl auf dem einheitlichen Ressourcenbezeichner an einer Anwendervorrichtung, die die Nachricht empfängt, die Anwendervorrichtung die native Anwendung an der speziellen Umgebungsinstanz, die durch den einheitlichen Ressourcenbezeichner adressiert ist, instanziieren wird.The non-transitory computer-readable storage medium of claim 8, wherein generating the message including the image of the specific environment instance and the uniform resource identifier includes capturing the uniform resource identifier and the image metadata of the image as separate elements displayed separately, and wherein Responsive to a navigation command on the unified resource identifier at a user device receiving the message, the user device will instantiate the native application at the specific environment instance addressed by the unified resource identifier. Nicht-transitorisches computerlesbares Speichermedium nach einem der Ansprüche 8 bis 10, wobei das Auswählen des einheitlichen Ressourcenbezeichners der speziellen Umgebungsinstanz der nativen Anwendung Auswählen des einheitlichen Ressourcenbezeichners aus einem Cache der Anwendervorrichtung der zuletzt verwendeten einheitlichen Ressourcenbezeichner umfasst.The non-transitory computer-readable storage medium of any of claims 8 to 10, wherein selecting the native resource identifier of the native application native environment instance comprises selecting the unique resource identifier from a user device cache of the most recently used common resource identifiers. Nicht-transitorisches computerlesbares Speichermedium nach einem der Ansprüche 8 bis 10, wobei das Auswählen des einheitlichen Ressourcenbezeichners der speziellen Umgebungsinstanz der nativen Anwendung Anfordern durch das Betriebssystem der Anwendervorrichtung und von der nativen Anwendung des einheitlichen Ressourcenbezeichners der speziellen Umgebungsinstanz umfasst.The non-transitory computer-readable storage medium of any of claims 8 to 10, wherein selecting the native resource identifier of the native environment instance of the native application comprises requesting by the operating system of the user device and the native application of the unique resource identifier native environment instance. Nicht-transitorisches computerlesbares Speichermedium nach einem der Ansprüche 8 bis 12, wobei: in Reaktion auf den einzelnen eingegebenen Betriebssystembefehl die Anwendervorrichtung eine abfrageunabhängige Anforderung für Kontextinformationen, die für die native Anwendung relevant sind, erzeugt; und die Kontextinformationskarte Kontextinformationen enthält, die von einem Suchsystem empfangen werden und die die Antwort zu der abfrageunabhängigen Anforderung nach Kontextinformationen sind.The non-transitory computer-readable storage medium of any of claims 8 to 12, wherein: in response to the single input operating system command, the user device generates a query-independent request for contextual information relevant to the native application; and the context information map contains context information received from a search system and which is the answer to the query-independent request for context information.
DE202017105336.9U 2016-09-19 2017-09-05 Uniform resource identifier and sharing of images for context information display Active DE202017105336U1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/269,238 2016-09-19
US15/269,238 US10212113B2 (en) 2016-09-19 2016-09-19 Uniform resource identifier and image sharing for contextual information display

Publications (1)

Publication Number Publication Date
DE202017105336U1 true DE202017105336U1 (en) 2018-02-14

Family

ID=59858792

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202017105336.9U Active DE202017105336U1 (en) 2016-09-19 2017-09-05 Uniform resource identifier and sharing of images for context information display

Country Status (5)

Country Link
US (3) US10212113B2 (en)
EP (1) EP3516831B1 (en)
CN (2) CN109964457B (en)
DE (1) DE202017105336U1 (en)
WO (1) WO2018052720A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11165726B2 (en) * 2019-10-23 2021-11-02 Sap Se Contextual sharing for screen share
US11714872B2 (en) * 2021-06-29 2023-08-01 Microsoft Technology Licensing, Llc Efficiently accessing references to recently used resources

Family Cites Families (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010053968A1 (en) 2000-01-10 2001-12-20 Iaskweb, Inc. System, method, and computer program product for responding to natural language queries
US20130024812A1 (en) * 2011-07-13 2013-01-24 Z124 Foreground/background assortment of hidden windows
US7389181B2 (en) 2004-08-31 2008-06-17 Visre, Inc. Apparatus and method for producing video drive-by data corresponding to a geographic location
US7996419B2 (en) 2004-03-31 2011-08-09 Google Inc. Query rewriting with entity detection
US8606781B2 (en) 2005-04-29 2013-12-10 Palo Alto Research Center Incorporated Systems and methods for personalized search
US7788266B2 (en) 2005-08-26 2010-08-31 Veveo, Inc. Method and system for processing ambiguous, multi-term search queries
US20070060114A1 (en) 2005-09-14 2007-03-15 Jorey Ramer Predictive text completion for a mobile communication facility
KR100828539B1 (en) 2005-09-20 2008-05-13 후지제롯쿠스 가부시끼가이샤 Detection method of two dimensional code, detection device thereof, and storage medium having detection program storaged therein
US7917286B2 (en) 2005-12-16 2011-03-29 Google Inc. Database assisted OCR for street scenes and other images
US20070192734A1 (en) 2006-02-16 2007-08-16 Viktors Berstis Methods and arrangements to control pop-up windows
US7818315B2 (en) 2006-03-13 2010-10-19 Microsoft Corporation Re-ranking search results based on query log
US7818332B2 (en) 2006-08-16 2010-10-19 Microsoft Corporation Query speller
US7689613B2 (en) 2006-10-23 2010-03-30 Sony Corporation OCR input to search engine
US8254568B2 (en) * 2007-01-07 2012-08-28 Apple Inc. Secure booting a computing device
US20080270110A1 (en) 2007-04-30 2008-10-30 Yurick Steven J Automatic speech recognition with textual content input
US8407605B2 (en) * 2009-04-03 2013-03-26 Social Communications Company Application sharing
US8321406B2 (en) 2008-03-31 2012-11-27 Google Inc. Media object query submission and response
US9383911B2 (en) 2008-09-15 2016-07-05 Palantir Technologies, Inc. Modal-less interface enhancements
US8391618B1 (en) 2008-09-19 2013-03-05 Adobe Systems Incorporated Semantic image classification and search
US20100229045A1 (en) * 2009-03-09 2010-09-09 Quantia Communications, Inc. Computer Method and Apparatus Providing Invocation of Device-Specific Application Through a Generic HTTP Link
US20100306249A1 (en) 2009-05-27 2010-12-02 James Hill Social network systems and methods
US9135277B2 (en) 2009-08-07 2015-09-15 Google Inc. Architecture for responding to a visual query
US8670597B2 (en) 2009-08-07 2014-03-11 Google Inc. Facial recognition with social network aiding
US9087059B2 (en) 2009-08-07 2015-07-21 Google Inc. User interface for presenting search results for multiple regions of a visual query
US8528066B2 (en) * 2009-08-25 2013-09-03 Microsoft Corporation Methods and apparatus for enabling context sharing
US8515185B2 (en) 2009-11-25 2013-08-20 Google Inc. On-screen guideline-based selective text recognition
US8977639B2 (en) 2009-12-02 2015-03-10 Google Inc. Actionable search results for visual queries
US20110128288A1 (en) 2009-12-02 2011-06-02 David Petrou Region of Interest Selector for Visual Queries
US9852156B2 (en) 2009-12-03 2017-12-26 Google Inc. Hybrid use of location sensor data and visual query to return local listings for visual query
US8543675B1 (en) * 2009-12-17 2013-09-24 Amazon Technologies, Inc. Consistent link sharing
US8421766B2 (en) * 2010-02-12 2013-04-16 Acer Incorporated Visualized information conveying system
US9135305B2 (en) 2010-03-24 2015-09-15 Google Inc. Ranking object search results
US8392435B1 (en) 2010-04-14 2013-03-05 Google Inc. Query suggestions for a document based on user history
US8316019B1 (en) 2010-06-23 2012-11-20 Google Inc. Personalized query suggestions from profile trees
US8583795B2 (en) * 2010-08-09 2013-11-12 Mskynet Inc. URI service system and method
US8788434B2 (en) 2010-10-28 2014-07-22 Google Inc. Search with joint image-audio queries
US8473433B2 (en) 2010-11-04 2013-06-25 At&T Intellectual Property I, L.P. Systems and methods to facilitate local searches via location disambiguation
US20120191745A1 (en) 2011-01-24 2012-07-26 Yahoo!, Inc. Synthesized Suggestions for Web-Search Queries
WO2012103191A2 (en) 2011-01-26 2012-08-02 Veveo, Inc. Method of and system for error correction in multiple input modality search engines
US20130055078A1 (en) * 2011-08-24 2013-02-28 Salesforce.Com, Inc. Systems and methods for improved navigation of a multi-page display
EP2752073A4 (en) * 2011-08-30 2015-06-03 Nokia Corp Method and apparatus for phonebook-based application sharing
US20130111001A1 (en) 2011-10-31 2013-05-02 Brocade Communications Systems, Inc. System And Method For Creating And Communicating Freely Associated Collection To Share Information
TWI544350B (en) 2011-11-22 2016-08-01 Inst Information Industry Input method and system for searching by way of circle
US20130207982A1 (en) * 2012-02-14 2013-08-15 Appgyver Oy Method and System for Rendering an Application View on a Portable Communication Device
WO2013134616A1 (en) * 2012-03-09 2013-09-12 RAPsphere, Inc. Method and apparatus for securing mobile applications
KR101899548B1 (en) 2012-04-16 2018-09-17 삼성전자 주식회사 Method and apparatus for collecting of feed information in a portable terminal
US8984012B2 (en) 2012-06-20 2015-03-17 Microsoft Technology Licensing, Llc Self-tuning alterations framework
US8935246B2 (en) 2012-08-08 2015-01-13 Google Inc. Identifying textual terms in response to a visual query
US9699271B2 (en) * 2013-01-29 2017-07-04 Blackberry Limited Method and apparatus for suspending screen sharing during confidential data entry
CN104052762B (en) * 2013-03-11 2019-02-12 腾讯科技(深圳)有限公司 The method, apparatus and system of data sharing
US9116952B1 (en) 2013-05-31 2015-08-25 Google Inc. Query refinements using search data
US9135346B2 (en) * 2013-06-07 2015-09-15 Google Inc. Index data for native applications
US9342567B2 (en) 2013-08-23 2016-05-17 International Business Machines Corporation Control for persistent search results and iterative searching
KR102108069B1 (en) 2014-01-22 2020-05-08 엘지전자 주식회사 Mobile terminal and method for controlling the same
US10430487B2 (en) * 2014-04-04 2019-10-01 Paypal, Inc. System and method to share content utilizing universal link format
CN104978117B (en) * 2014-04-11 2018-11-09 阿里巴巴集团控股有限公司 A kind of method and apparatus for realizing screenshotss
US9830391B1 (en) 2014-06-24 2017-11-28 Google Inc. Query modification based on non-textual resource context
WO2016057188A1 (en) * 2014-10-09 2016-04-14 Wrap Media, LLC Active receipt wrapped packages accompanying the sale of products and/or services
US10203933B2 (en) 2014-11-06 2019-02-12 Microsoft Technology Licensing, Llc Context-based command surfacing
US10228831B2 (en) * 2015-07-09 2019-03-12 Samsung Electronics Co., Ltd. Sharing cards to a target application
US10747418B2 (en) * 2015-07-24 2020-08-18 Coscreen, Inc. Frictionless interface for virtual collaboration, communication and cloud computing
US20170185617A1 (en) * 2015-12-29 2017-06-29 Quixey, Inc. Data Object Based Application State Sharing Methods for User Devices
US10237621B2 (en) * 2016-03-24 2019-03-19 Dish Technologies Llc Direct capture and sharing of screenshots from video programming

Also Published As

Publication number Publication date
CN109964457B (en) 2021-04-06
CN113127671A (en) 2021-07-16
EP3516831B1 (en) 2021-10-06
US11425071B2 (en) 2022-08-23
CN109964457A (en) 2019-07-02
US20190140992A1 (en) 2019-05-09
EP3516831A1 (en) 2019-07-31
US20180083900A1 (en) 2018-03-22
US10880247B2 (en) 2020-12-29
US20210099410A1 (en) 2021-04-01
US10212113B2 (en) 2019-02-19
WO2018052720A1 (en) 2018-03-22

Similar Documents

Publication Publication Date Title
US9577912B2 (en) In-product micro-blogging for design sharing
US9531803B2 (en) Content sharing interface for sharing content in social networks
DE112011101724T5 (en) Automatic routing using search results
KR102340228B1 (en) Message service providing method for message service linking search service and message server and user device for performing the method
US8819536B1 (en) System and method for forming multi-user collaborations
KR20080102166A (en) Refined search user interface
DE102016125804A1 (en) Including selectable application links in conversations with personal assistance modules
DE212015000245U1 (en) Assistive browsing using context
CN111104583B (en) Live broadcast room recommendation method, storage medium, electronic equipment and system
JP6644171B2 (en) Enable efficient searches using conversation threads
CN109791545A (en) The contextual information of resource for the display including image
US11425071B2 (en) Uniform resource identifier and image sharing for contextual information display
US20170116291A1 (en) Network caching of search result history and interactions
US10503763B2 (en) Methods and systems for executing functions in a text field
DE112015005293T5 (en) Presentation of information cards for events associated with entities
Jain et al. PALTask Chat: A personalized automated context aware web resources listing tool
DE102017116159A1 (en) Context information for a notification
DE202017104272U1 (en) Context information for a notification

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: BETTEN & RESCH PATENT- UND RECHTSANWAELTE PART, DE

R207 Utility model specification
R150 Utility model maintained after payment of first maintenance fee after three years
R151 Utility model maintained after payment of second maintenance fee after six years