DE202017106558U1 - Anwendungserweiterung zum Erzeugen automatischer Suchabfragen - Google Patents

Anwendungserweiterung zum Erzeugen automatischer Suchabfragen Download PDF

Info

Publication number
DE202017106558U1
DE202017106558U1 DE202017106558.8U DE202017106558U DE202017106558U1 DE 202017106558 U1 DE202017106558 U1 DE 202017106558U1 DE 202017106558 U DE202017106558 U DE 202017106558U DE 202017106558 U1 DE202017106558 U1 DE 202017106558U1
Authority
DE
Germany
Prior art keywords
search
computing device
subset
application
graphical
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
DE202017106558.8U
Other languages
English (en)
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 DE202017106558U1 publication Critical patent/DE202017106558U1/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3322Query formulation using system suggestions
    • 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/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Computerprogrammprodukt, das Anweisungen beinhaltet, die, wenn sie durch einen oder mehrere Prozessoren ausgeführt werden, den einen oder die mehreren Prozessoren veranlassen, ein computerimplementiertes Verfahren auszuführen, das Verfahren umfassend:Ausgeben, durch eine auf einem Computergerät ausgeführte Anwendung, zur Anzeige, einer grafischen Tastatur, die eine Vielzahl von Tasten umfasst;Bestimmen, durch eine Anwendungserweiterung der Anwendung, basierend auf dem Computergerät zugeordneten Kontextinformationen, einer Teilgruppe von einer oder mehreren Suchabfragen aus einem vordefinierten Satz von zwei oder mehr Suchabfragen;Ausgeben, durch die Anwendungserweiterung, zur Anzeige, eines entsprechenden grafischen Elements, das jeder Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen zugeordnet ist, anstelle zumindest eines Teils der grafischen Tastatur;Empfangen, durch die Anwendungserweiterung, eines Hinweises auf eine Benutzereingabe, über die das entsprechende grafische Element ausgewählt wird, das einer bestimmten Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen zugeordnet ist;Ausführen, basierend auf der bestimmten Suchabfrage, einer Suche; undAusgeben, durch die Anwendungserweiterung, zur Anzeige, eines grafischen Hinweises auf ein oder mehrere mittels der Suche bestimmte Suchergebnisse anstelle zumindest des Teils der grafischen Tastatur.

Description

  • HINTERGRUND
  • Obwohl einige mobile Computergeräte in der Lage sind, mehrere Anwendungen gleichzeitig auszuführen, können manche mobile Computergeräte nur eine grafische Benutzeroberfläche (GUI) einer einzelnen Anwendung auf einmal darstellen. Ein Benutzer eines mobilen Computergeräts muss vielleicht eine Eingabe bereitstellen, um zwischen mehreren verschiedenen Anwendungs-GUIs hin- und herzuschalten, um eine bestimmte Aufgabe auszuführen. Ein Benutzer eines mobilen Computergeräts muss beispielsweise unter Umständen aufhören, Text in eine Messaging-Anwendung einzugeben, eine Eingabe bereitstellen, um das Gerät zu veranlassen, zu einer Suchanwendung zu wechseln, eine möglicherweise lange Suchabfrage in die Sucheingabe eingeben und dann sogar eine zusätzliche Eingabe auf einer GUI der Suchanwendung bereitstellen, um nach einer bestimmten Information zu suchen, die der Benutzer unter Umständen verwenden möchte, um eine Nachricht fertigzustellen oder anderweitig Text in die Messaging-Anwendung einzugeben. Die Bereitstellung mehrerer Eingaben, die von einigen Computergeräten benötigt werden, um verschiedene Aufgaben auszuführen, kann mühsam, sich wiederholend und zeitaufwendig sein.
  • KURZDARSTELLUNG
  • Im Allgemeinen bezieht sich diese Offenbarung auf Techniken, die es ermöglichen, dass eine Anwendungserweiterung in einer Anwendung ausgeführt wird, die eine grafische Tastatur eines Computergeräts zum automatischen Vorhersagen nutzt, basierend auf Kontextinformationen, die dem Computergerät und der Anwendung zugeordnet sind, von potenziellen Suchabfragen aus einem Satz an vorbestimmten Suchabfragen und Anzeigen von grafischen Elementen (wie Symbole, Bilder oder andere Arten von grafischen Elementen), die die vorhergesagten Suchabfragen in der grafischen Tastatur anzeigen. Die Anwendungserweiterung analysiert die Kontextinformationen, die bei der Suchabfragevorhersage verwendet werden sollen, unter Umständen nur dann, wenn sie eine ausdrückliche Erlaubnis dazu von einem Benutzer des Computergeräts empfängt. Die Anwendungserweiterung kann eine Suche ausführen oder veranlasst werden, eine Suche auszuführen, die auf einer vorhergesagten Suchabfrage basiert, in Reaktion darauf, dass das Computergerät eine Benutzereingabe erfasst, über die direkt in der grafischen Tastatur das grafische Element ausgewählt wird, das mit der vorhergesagten Suchabfrage verknüpft ist.
  • Die Anwendungserweiterung kann automatisch ein oder mehrere Ergebnisse der ausgeführten Suche in zumindest einem Teil der grafischen Tastatur erzeugen und anzeigen. Nach Anzeige der Suchergebnisse kann das Computergerät eine weitere Benutzereingabe (z. B. Spracheingabe, Berührungseingabe usw.) empfangen, mit der eines der angezeigten Suchergebnisse ausgewählt wird. In Reaktion auf die weitere Benutzereingabe kann die Anwendungserweiterung das Computergerät veranlassen, weitere mit dem Ergebnis verknüpfte Informationen anzuzeigen und/oder das Ergebnis in eine Nachricht einzufügen, die möglicherweise später an ein Empfänger-Computergerät gesendet wird, um den Benutzer des Computergeräts in die Lage zu versetzen, Suchergebnisse schnell und einfach mit Benutzern anderer Computergeräte auszutauschen.
  • Durch die Möglichkeit, eine Anwendungserweiterung mit integrierten Suchabfragevorhersagen auszuführen, kann ein exemplarisches Computergerät einen Benutzer in die Lage versetzen, schnell Suchergebnisse zu erhalten, die für die verschiedenen mit dem Computergerät verknüpften Kontexte relevant sind, ohne zwischen mehreren verschiedenen Anwendungen wechseln, manuell über die grafische Tastatur lange Suchabfragen eingeben oder selbst eine relevante Suchabfrage ausdenken zu müssen. Auf diese Weise können Techniken aus dieser Offenbarung die Zeit und die Anzahl an Benutzereingaben reduzieren, die nötig sind, um relevante Suchergebnisse zu erhalten, was die Benutzererfahrung vereinfachen und den Stromverbrauch des Computergeräts verringern kann.
  • In einem Beispiel beinhaltet ein Verfahren das Ausgeben, durch eine an einem Computergerät ausgeführten Anwendung, zur Anzeige, einer grafischen Tastatur, die eine Vielzahl von Tasten umfasst. Das Verfahren beinhaltet ferner das Bestimmen, durch eine Anwendungserweiterung der Anwendung, basierend auf dem Computergerät zugeordneten Kontextinformationen, einer Teilgruppe von einer oder mehreren Suchabfragen aus einem vordefinierten Satz von zwei oder mehr Suchabfragen. Das Verfahren beinhaltet ferner das Ausgeben, durch die Anwendungserweiterung, zur Anzeige anstelle zumindest eines Teils der grafischen Tastatur, eines entsprechenden grafischen Elements, das jeder Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen zugeordnet ist oder dafür repräsentativ ist. Das Verfahren beinhaltet ferner das Empfangen, durch die Anwendungserweiterung, eines Hinweises auf eine Benutzereingabe, über die das entsprechende grafische Element ausgewählt wird, das mit einer bestimmten Suchabfrage aus der Teilgruppe einer oder mehreren Suchabfragen zugeordnet ist oder dafür repräsentativ ist. Das Verfahren beinhaltet ferner das Ausführen, basierend auf der bestimmten Suchabfrage, einer Suche und Ausgeben, durch die Anwendungserweiterung, zur Anzeige, anstelle zumindest eines Teils der grafischen Tastatur, eines grafischen Hinweises auf ein oder mehrere Suchergebnisse, die von der Suche bestimmt werden.
  • In einem anderen Beispiel beinhaltet ein mobiles Gerät eine präsenzempfindliche Anzeigekomponente, mindestens einen Prozessor und einen Speicher, der mit einer Anwendung verknüpfte Anweisungen speichert. Bei Ausführung veranlassen die Anweisungen den mindestens einen Prozessor, eine grafische Tastatur, die eine Vielzahl von Tasten umfasst, zur Anzeige auf der präsenzempfindlichen Anzeigekomponente auszugeben. Die Anweisungen veranlassen den mindestens einen Prozessor ferner, durch eine Anwendungserweiterung der Anwendung, basierend auf dem Computergerät zugeordneten Kontextinformationen, eine Teilgruppe von einer oder mehreren Suchabfragen aus einem vordefinierten Satz von zwei oder mehr Suchabfragen zu bestimmen. Die Anweisungen veranlassen den mindestens einen Prozessor ferner, durch die Anwendungserweiterung, zur Anzeige auf der präsenzempfindlichen Anzeigekomponente anstelle mindestens eines Teils der grafischen Tastatur, ein entsprechendes grafisches Element auszugeben, das jeder Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen zugeordnet ist oder dafür repräsentativ ist. Die Anweisungen veranlassen den mindestens einen Prozessor ferner, durch die Anwendungserweiterung, zur Anzeige auf der präsenzempfindlichen Anzeigekomponente, einen Hinweis auf eine Benutzereingabe zu empfangen, über die das entsprechende grafische Element ausgewählt wird, das einer bestimmten Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen zugeordnet ist oder dafür repräsentativ ist. Die Anweisungen veranlassen den mindestens einen Prozessor ferner, basierend auf der bestimmten Suchabfrage eine Suche auszuführen und, durch die Anwendungserweiterung, zur Anzeige auf der präsenzempfindlichen Anzeigekomponente anstelle zumindest eines Teils der grafischen Tastatur, einen grafischen Hinweis auf ein oder mehrere Suchergebnisse auszugeben, die von der Suche bestimmt werden.
  • In einem anderen Beispiel speichert ein nicht flüchtiges computerlesbares Speichermedium mit einer Anwendung verknüpfte Anweisungen, die bei Ausführung mindestens einen Prozessor eines Computergeräts veranlassen, zur Anzeige eine grafische Tastatur auszugeben, die eine Vielzahl von Tasten umfasst. Die Anweisungen veranlassen den mindestens einen Prozessor ferner, durch eine Anwendungserweiterung der Anwendung, basierend auf dem Computergerät zugeordneten Kontextinformationen, eine Teilgruppe von einer oder mehreren Suchabfragen aus einem vordefinierten Satz von zwei oder mehr Suchabfragen zu bestimmen. Die Anweisungen veranlassen den mindestens einen Prozessor ferner, durch die Anwendungserweiterung, zur Anzeige an der präsenzempfindlichen Anzeigekomponente anstelle zumindest eines Teils der grafischen Tastatur, ein entsprechendes grafisches Element auszugeben, das mit jeder Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist oder dafür repräsentativ ist. Die Anweisungen veranlassen den mindestens einen Prozessor ferner, durch die Anwendungserweiterung, zur Anzeige auf der präsenzempfindlichen Anzeigekomponente, einen Hinweis auf eine Benutzereingabe zu empfangen, über die das entsprechende grafische Element ausgewählt wird, das einer bestimmten Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen zugeordnet ist oder dafür repräsentativ ist. Die Anweisungen veranlassen den mindestens einen Prozessor ferner, basierend auf der bestimmten Suchabfrage eine Suche auszuführen und, durch die Anwendungserweiterung, zur Anzeige auf der präsenzempfindlichen Anzeigekomponente anstelle zumindest des Teils der grafischen Tastatur, einen grafischen Hinweis auf ein oder mehrere Suchergebnisse auszugeben, die von der Suche bestimmt werden.
  • In einem anderen Beispiel beinhaltet eine Vorrichtung Mittel zum Ausgeben, durch eine Anwendung, zur Anzeige, einer grafischen Tastatur, die eine Vielzahl von Tasten umfasst. Die Vorrichtung beinhaltet ferner Mittel zum Bestimmen, durch eine Anwendungserweiterung der Anwendung, basierend auf dem Computergerät zugeordneten Kontextinformationen, einer Teilgruppe von einer oder mehreren Suchabfragen aus einem vordefinierten Satz von zwei oder mehr Suchabfragen. Die Vorrichtung beinhaltet ferner Mittel zum Ausgeben, durch die Anwendungserweiterung, zur Anzeige, eines entsprechenden grafischen Elements, das mit jeder Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist oder dafür repräsentativ ist, anstelle zumindest eines Teils der grafischen Tastatur. Die Vorrichtung beinhaltet ferner Mittel zum Empfangen, durch die Anwendungserweiterung, eines Hinweises auf eine Benutzereingabe, über die das entsprechende grafische Element ausgewählt wird, das mit einer bestimmten Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist oder dafür repräsentativ ist. Die Vorrichtung beinhaltet ferner Mittel zum Ausführen, basierend auf der bestimmten Suchabfrage, einer Suche und Ausgeben, durch die Anwendungserweiterung, eines grafischen Hinweises auf ein oder mehrere Suchergebnisse, die von der Suche bestimmt werden, zur Anzeige, anstelle zumindest des Teils der grafischen Tastatur.
  • Die Details von einem oder mehreren Beispielen der Offenbarung werden in den begleitenden Zeichnungen und in der nachfolgenden Beschreibung dargelegt. Andere Merkmale, Gegenstände und Vorteile der Erfindung werden aus der Beschreibung und den Zeichnungen sowie aus den Ansprüchen ersichtlich.
  • Figurenliste
    • 1 ist ein konzeptionelles Diagramm, das ein exemplarisches Computergerät veranschaulicht, das eine Anwendungserweiterung ausführt, wobei diese Anwendungserweiterung konfiguriert ist, eine Teilgruppe von vorbestimmten Suchabfragen dynamisch zu bestimmen, gemäß einem oder mehreren Aspekten der vorliegenden Offenbarung.
    • 2 ist ein Blockdiagramm, das ein exemplarisches Computergerät veranschaulicht, das eine Anwendungserweiterung ausführt, wobei diese Anwendungserweiterung konfiguriert ist, eine Teilgruppe von vorbestimmten Suchabfragen dynamisch zu bestimmen, gemäß einem oder mehreren Aspekten der vorliegenden Offenbarung.
    • 3 zeigt ein Blockdiagramm, das ein exemplarisches Computergerät veranschaulicht, das grafischen Inhalt zur Anzeige auf einem entfernten Gerät ausgibt, gemäß einer oder mehreren Techniken der vorliegenden Offenbarung.
    • 4A-4C sind konzeptionelle Diagramme, die exemplarische grafische Benutzeroberflächen von einem exemplarischen Computergerät veranschaulichen, die eine Anwendungserweiterung ausführen, wobei diese Anwendungserweiterung konfiguriert ist, eine Teilgruppe von vorbestimmten Suchabfragen dynamisch zu bestimmen, gemäß einem oder mehreren Aspekten der vorliegenden Offenbarung.
    • 5 ist ein Flussdiagramm, das exemplarische Operationen von einem Computergerät veranschaulicht, das eine Anwendungserweiterung ausführt, die konfiguriert ist, eine Teilgruppe von vorbestimmten Suchabfragen dynamisch zu bestimmen, gemäß einem oder mehreren Aspekten der vorliegenden Offenbarung.
  • AUSFÜHRLICHE BESCHREIBUNG
  • 1 ist ein konzeptionelles Diagramm, das ein exemplarisches Computergerät 10 veranschaulicht, das eine Anwendungserweiterung 23 ausführt, wobei diese Anwendungserweiterung konfiguriert ist, eine Teilgruppe von vorbestimmten Suchabfragen dynamisch zu bestimmen, gemäß einem oder mehreren Aspekten der vorliegenden Offenbarung. Computergerät 10 kann ein Mobilgerät, wie z. B. ein Smartphone, ein Tablet-Computer, ein Laptop-Computer, eine computergestützte Uhr, eine computergestützte Brille, computergestützte Handschuhe oder eine andere Art von tragbarem Computergerät sein. Zusätzliche Beispiele von Computergerät 10 beinhalten Desktop-Computer, Fernseher, persönliche digitale Assistenten (PDA), tragbare Spielsysteme, Mediaplayer, E-Book-Reader, mobile Fernsehplattformen, Navigations- und Entertainmentsysteme in Autos, Cockpitanzeigen in Fahrzeugen (z. B. Autos, Flugzeuge oder andere Fahrzeuge) oder jedwede andere Art von tragbaren und nicht tragbaren, mobilen oder nicht mobilen Computergeräten, die eine grafische Tastatur zur Anzeige ausgeben können.
  • Computergerät 10 beinhaltet eine präsenzempfindliche Anzeige (PSD) 12, ein Benutzeroberflächen(UI)-Modul 20 und ein Anwendungsmodul 22. Anwendungsmodul 22 beinhaltet ein Anwendungserweiterungsmodul 23 (nachfolgend der Einfachheit halber als „Anwendungserweiterung 23“ bezeichnet). Module 20, 22 und 23 können beschriebene Operationen unter Verwendung von Software, Hardware, Firmware oder einer Kombination aus Software, Hardware und Firmware ausführen, die in Computergerät 10 resident ist und/oder darauf ausgeführt wird. Ein oder mehrere Prozessoren von Computergerät 10 können Anweisungen ausführen, die in einem Speicher oder einem nicht flüchtigen Speichermedium von Computergerät 10 gespeichert sind, um die Operationen der Module 20 und 22 auszuführen. Computergerät 10 kann die Module 20, 22 und 23 als virtuelle Maschinen, die auf zugrundeliegender Hardware ausgeführt werden, ausführen. Module 20, 22, und 23 können als ein oder mehrere Dienste eines Betriebssystems oder einer Computerplattform ausgeführt werden. Module 20, 22 und 23 können als ein oder mehrere ausführbare Programme auf einer Anwendungsebene einer Computerplattform ausgeführt werden. Anwendungserweiterung 23 kann eine weitere Anwendung sein, die auf Computergerät 10 installiert ist und über Anwendungsmodul 22 ausführbar ist. In einigen Instanzen, wie im Beispiel von 1, kann die Anwendungserweiterung 23 ein Add-on oder ein Teil von Anwendungsmodul 22 sein. In anderen Instanzen kann die Anwendungserweiterung 23 eine separate Anwendung sein, die von Computergerät 10 während der Ausführung von Anwendungsmodul 22 ausgeführt wird.
  • PSD 12 von Computergerät 10 kann als entsprechendes Eingabe- und/oder Ausgabegerät für Computergerät 10 fungieren. PSD 12 kann unter Verwendung verschiedener Technologien implementiert werden. PSD 12 kann beispielsweise unter Verwendung von präsenzempfindlichen Eingabebildschirmen, wie z. B. resistiven Touchscreens, SAW-Touchscreens (Surface Acoustic Wave, akustische Oberflächenwelle), kapazitiven Touchscreens, projektiv-kapazitiven Touchscreens, druckempfindlichen Bildschirmen, APR-Touchscreens (Acoustic Pulse Recognition, akustische Impulserkennung) oder anderer präsenzempfindlicher Anzeigetechnologie als Eingabegerät fungieren. PSD 12 kann auch unter Verwendung eines oder mehrerer Anzeigegeräte wie LCDs (Liquid Crystal Display, Flüssigkristallanzeige), Punktmatrixanzeigen, LED-Anzeigen (Light Emitting Diode, Leuchtdiode), OLED-Anzeigen (Organic Light Emitting Diode, organische Leuchtdiode), E-Papier-Anzeigen oder ähnlichen Monochrom- oder Farbanzeigen, die sichtbare Informationen für einen Benutzer von Computergerät 10 ausgeben können, als Ausgabegerät (z. B. als Anzeige) fungieren.
  • PSD 12 kann Eingaben (z. B. Touch- und berührungslose Eingaben) von einem Benutzer des jeweiligen Computergeräts 10 erkennen. PSD 12 kann Hinweise auf eine Eingabe erkennen, indem sie eine oder mehrere Gesten von einem Benutzer erkennt (z. B. von dem Benutzer, der mit einem Finger oder einem Stift einen oder mehrere Bereiche von PSD 12 berührt, darauf zeigt und/oder darüber wischt). PSD 12 kann als Benutzeroberfläche (z. B. Benutzeroberfläche 14A und/oder 14B), die möglicherweise mit von Computergerät 10 bereitgestellter Funktionalität verknüpft ist, Informationen für einen Benutzer ausgeben. Die Benutzeroberflächen können mit Computerplattformen, Betriebssystemen, Anwendungen und/oder Diensten verbunden sein, die auf Computergerät 10 ausgeführt werden oder auf die von diesem zugegriffen werden kann (z. B. elektronische Textnachrichten-Anwendungen, Chat-Anwendungen, Internetbrowser-Anwendungen, mobile oder Desktop-Betriebssysteme, Anwendungen sozialer Medien, elektronische Spiele und andere Arten von Anwendungen). Zum Beispiel kann die PSD 12, wie in 1 gezeigt, die Benutzeroberflächen 14A und 14B darstellen, die grafische Benutzeroberflächen einer Chat-Anwendung sind, die auf Computergerät 10 ausgeführt wird und verschiedene grafische Elemente beinhaltet, die an verschiedenen Stellen von PSD 12 angezeigt werden.
  • Wie in 1 gezeigt, ist Benutzeroberfläche 14A eine Chat-Benutzeroberfläche. Jedoch kann Benutzeroberfläche 14Ajede grafische Benutzeroberfläche sein, die eine grafische Tastatur mit integrierten Suchfunktionen beinhaltet. Benutzeroberfläche 14A beinhaltet einen Ausgabebereich 18, eine grafische Tastatur 19Aund ein Suchtaste 16. Ein Benutzer von Computergerät 10 kann eine Eingabe auf der grafischen Tastatur 19A vornehmen, um Textzeichen innerhalb von einem Bearbeitungsbereich zu erzeugen, die den Inhalt der elektronischen Nachrichten bilden, die innerhalb von Ausgabebereich 18 angezeigt werden. Die innerhalb von Ausgabebereich 18 angezeigten Nachrichten bilden eine Chat-Konversation zwischen einem Benutzer von Computergerät 10 und einem Benutzer von einem anderen Computergerät.
  • UI-Modul 20 verwaltet Benutzerinteraktionen mit der PSD 12 und anderen Komponenten von Computergerät 10. Mit anderen Worten, UI-Modul 20 kann als Vermittler zwischen verschiedenen Komponenten von Computergerät 10 agieren, um Bestimmungen basierend auf einer von der PSD 12 erkannten Benutzereingabe vorzunehmen und Ausgaben, z. B. in Reaktion auf die Benutzereingabe, an der PSD 12 zu erzeugen. UI-Modul 20 kann Anweisungen von einer Anwendung, einem Dienst, einer Plattform oder einem anderen Modul von Computergerät 10 empfangen, um die PSD 12 dazu zu veranlassen, eine Benutzeroberfläche (z. B. Benutzeroberfläche 14A) auszugeben. UI-Modul 20 kann Eingaben verwalten, die durch Computergerät 10 empfangen werden, während ein Benutzer die auf der PSD 12 dargestellte Benutzeroberfläche betrachtet und mit ihr interagiert, und die Benutzeroberfläche in Reaktion auf das Empfangen zusätzlicher Anweisungen von der Anwendung, dem Dienst, der Plattform oder dem anderen Modul von Computergerät 10 aktualisieren, das die Benutzereingabe verarbeitet.
  • Anwendungsmodul 22 repräsentiert eine Anwendung, einen Dienst oder eine Komponente, die/der auf Computergerät 10 ausgeführt wird oder auf die/den von diesem zugegriffen werden kann und die/der Computergerät 10 eine grafische Tastatur bereitstellt, die, wenn zudem Anwendungserweiterung 23 auf Computergerät 10 installiert ist, auch integrierte Suchfunktionen bietet, die eine Suchabfragevorhersage und -ausführung beinhalten. Anwendungsmodul 22 kann beispielsweise eine Messaging-Anwendung, eine Chat-Anwendung oder jegliche andere Anwendung sein, die möglicherweise eine grafische Tastatur im Rahmen ihrer Funktionalität nutzt. Anwendungsmodul 22 kann zwischen dem Betrieb im Texteingabemodus, in dem Anwendungsmodul 22 ähnliche Funktionen wie eine herkömmliche grafische Tastatur beinhaltet, oder dem Betrieb im Suchmodus umschalten, in dem Computergerät 10 des Weiteren Anwendungsmodul 23 ausführt, um eine Teilgruppe von Suchabfragen aus einem Satz von vorbestimmten Suchabfragen basierend auf mit Computergerät 10 oder Anwendungsmodul 22 verknüpften Kontextinformationen zu bestimmen, und verschiedene integrierte Suchfunktionen und bildbasierte Suchfunktionen ausführt oder eine Verbindung zu einer oder mehreren Such- und bildbasierten Suchanwendungen oder -funktionen herstellt.
  • In einigen Beispielen kann Computergerät 10 Anwendungserweiterung 23 von einer Anwendungserweiterungs-Verteilungsplattform herunterladen. In diesen Beispielen kann Anwendungsmodul 22 vor der Ausführung etwaiger in diesem Dokument beschriebenen Techniken Anwendungserweiterung 23 auf Computergerät 10 und Anwendungsmodul 22 installieren.
  • In einigen Beispielen kann Anwendungsmodul 22 eine eigenständige Anwendung, ein eigenständiger Dienst oder ein eigenständiges Modul sein, die/der/das auf Computergerät 10 ausgeführt wird, und in anderen Beispielen kann Anwendungsmodul 22 eine Subkomponente sein, die als Dienst für andere Anwendungen oder Gerätefunktionen agiert. Zum Beispiel kann Anwendungsmodul 22 in eine Chat- oder Messaging-Anwendung integriert sein, die auf Computergerät 10 ausgeführt wird, während in anderen Beispielen Anwendungsmodul 22 eine eigenständige Anwendung oder Subroutine sein kann, die von einer Anwendung oder einer Betriebsplattform von Computergerät 10 jedes Mal dann aufgerufen wird, wenn eine Anwendung oder eine Betriebsplattform eine Eingabefunktionalität mit einer grafischen Tastatur benötigt. In einigen Beispielen kann Computergerät 10 Anwendungsmodul 22 von einer Anwendungsverteilungsplattform wie einem Anwendungs-Repository eines Dienstanbieters (z. B. über Internet) herunterladen und installieren. In anderen Beispielen kann Anwendungsmodul 22 während der Produktion von Computergerät 10 oder der Installation eines Betriebssystems von Computergerät 10 vorgeladen werden.
  • Bei Betrieb im Texteingabemodus kann Anwendungsmodul 22 von Computergerät 10 die grafische Tastatur 19A verwenden, um herkömmliche Operationen einer zur Texteingabe verwendeten grafischen Tastatur durchzuführen, wie z. B.: Erzeugen eines grafischen Tastatur-Layouts zur Anzeige auf der PSD 12, Verknüpfen von auf der PSD 12 erkannten Eingaben mit Auswahlen von grafischen Tasten, Bestimmen von Zeichen basierend auf den ausgewählten Tasten und Vorhersagen oder Autokorrigieren von Wörtern und/oder Textphrasen basierend auf den Zeichen, die von den ausgewählten Tasten bestimmt werden.
  • Die grafische Tastatur 19A beinhaltet grafische Elemente, die als grafische Tasten angezeigt werden. Tastaturanwendung 22 kann Informationen an UI-Modul 20 ausgeben, die das Layout der grafischen Tastatur 19A in Benutzeroberfläche 14 spezifizieren. Zum Beispiel können die Informationen Anweisungen beinhalten, die Positionen, Größen, Farben und andere Eigenschaften der verschiedenen grafischen Tasten spezifizieren. Basierend auf den von Anwendungsmodul 22 empfangenen Informationen kann UI-Modul 20 die PSD 12 dazu veranlassen, die grafische Tastatur 19A als Teil von Benutzeroberfläche 14 anzuzeigen.
  • Jede Taste von den grafischen Tasten der grafischen Tastatur 19A kann einem oder mehreren entsprechenden Zeichen (z. B. einem Buchstaben, einer Zahl, einem Interpunktionszeichen oder einem anderen Zeichen) zugeordnet sein, die innerhalb der Taste angezeigt werden. Ein Benutzer von Computergerät 10 kann eine Eingabe an Positionen von PSD 12 vornehmen, an denen eine oder mehrere grafische Tasten angezeigt werden, um Inhalte (z. B. Zeichen, Suchergebnisse usw.) in einem Bearbeitungsbereich einzugeben (z. B. zum Verfassen von Nachrichten, die verschickt und in Ausgabebereich 18 angezeigt werden, oder zum Eingeben einer bildbasierten Suchabfrage, die Computergerät 10 von innerhalb der grafischen Tastatur 19A ausführt). Anwendungsmodul 22 kann Informationen von UI-Modul 20 empfangen, die auf Positionen hinweisen, die mit einer von PSD 12 erkannten Eingabe verknüpft sind und die in Bezug zu den Positionen von jeder der grafischen Tasten stehen. Unter Verwendung eines Raum- und/oder Sprachmodells kann Anwendungsmodul 22 die Eingaben in Auswahlen von Tasten und Zeichen, Wörtern und/oder Sätzen übersetzen.
  • Während der Ausführung von Anwendungsmodul 22 kann Computergerät 10 eine grafische Tastatur 19A zur Anzeige an PSD 12 ausgeben. Anwendungsmodul 22 kann in einem Speicher von Computergerät 10 als ausführbarer Code gespeichert werden, der verschiedene Funktionen der grafischen Tastatur 19A implementiert. In einigen Instanzen kann Anwendungserweiterung 23 ebenfalls in dem Speicher von Computergerät 10 als ausführbarer Code gespeichert werden, der von Modul 20 und Modul 22 ausgeführt werden kann. In einigen Instanzen kann Anwendungserweiterung 23 eine Subanwendung in Anwendungsmodul 22 sein, die bei Ausführung Anwendungsmodul 22 so konfiguriert, dass weitere Funktionalität wie zum Beispiel eine Suchfunktionalität für das Anwendungsmodul 22 bereitgestellt wird. In anderen Instanzen kann Anwendungserweiterung 23 eine separate Anwendung von Anwendungsmodul 22 sein.
  • Im Allgemeinen kann Anwendungserweiterung 23 jede ausführbare Anwendungserweiterung mit einer Funktionalität sein, auf die ein Benutzer von innerhalb der grafischen Tastatur 19A zugreifen kann, um weitere Funktionalität für die grafische Tastatur 19A bereitzustellen. PSD 12 kann beispielsweise Benutzereingaben erkennen, während ein Benutzer von Computergerät 10 Benutzereingaben (z. B. Benutzergesten) an oder in der Nähe einer Position von PSD 12 vornimmt, an der PSD 12 die grafische Tastatur 19A darstellt. Der Benutzer kann Tippgesten oder Nicht-Tippgesten (z. B. ein kontinuierliches Wischen) an PSD 12 ausführen, um eine Eingabe an der grafischen Tastatur 19A bereitzustellen, um den Satz „Wie sieht das Wetter in deiner Nähe aus?“ im Bearbeitungsbereich einzugeben. UI-Modul 20 kann von PSD 12 einen Hinweis auf die von der PSD 12 erkannte Benutzereingabe empfangen und Informationen über die Benutzereingabe an Anwendungsmodul 22 ausgeben. Informationen über die Benutzereingabe können einen Hinweis auf eine oder mehrere Berührungsereignisse beinhalten (z. B. Positionen und andere Informationen über die Eingabe), die von PSD 12 erkannt werden.
  • Basierend auf den von UI-Modul 20 empfangenen Informationen kann Anwendungsmodul 22 erkannte Eingaben an PSD 12 mit Auswahlen von grafischen Tasten der grafischen Tastatur 19A verknüpfen, Zeichen basierend auf den ausgewählten Tasten bestimmen und Wörter und/oder Sätze vorhersagen oder autokorrigieren, die basierend auf den mit den ausgewählten Tasten verknüpften Zeichen bestimmt werden. Zum Beispiel kann Anwendungsmodul 22 ein Raummodell beinhalten, das basierend auf den Positionen von den ausgewählten Tasten und auf den Informationen über die Eingabe die am wahrscheinlichsten ausgewählte(n) Taste oder Tasten bestimmen kann. In Reaktion auf das Bestimmen der am wahrscheinlichsten ausgewählten Taste(n) kann Anwendungsmodul 22 ein oder mehrere Zeichen, Wörter und/oder Sätze bestimmen. Zum Beispiel kann jede der einen oder mehreren Tasten, die über eine Benutzereingabe an PSD 12 ausgewählt werden, ein einzelnes Zeichen oder eine Tastaturoperation darstellen. Anwendungsmodul 22 kann eine Zeichenfolge bestimmen, die basierend auf der einen oder der mehreren ausgewählten Tasten ausgewählt wird. In einigen Beispielen kann Anwendungsmodul 22 ein Sprachmodell auf die Zeichenfolge anwenden, um einen oder mehrere wahrscheinliche mögliche Buchstaben, Morpheme, Wörter und/oder Sätze zu bestimmen, die ein Benutzer einzugeben versucht, basierend auf der Auswahl der Tasten. Im Beispiel von 1 kann Anwendungsmodul 22 bestimmen, dass die Zeichenfolge den Buchstaben aus dem Satz „Wie sieht das Wetter in deiner Nähe aus?“ entspricht.
  • Anwendungsmodul 22 kann die Zeichenfolge und/oder die Folge von möglichen Wörtern und Sätzen (z. B. „Wie sieht das Wetter in deiner Nähe aus?“) an UI-Modul 20 senden, und UI-Modul 20 kann PSD 12 dazu veranlassen, die Zeichen und/oder möglichen Wörter, die aus einer Auswahl von einer oder mehreren Tasten der grafischen Tastatur 19A bestimmt werden, als Text im Bearbeitungsbereich darzustellen. In einigen Beispielen, wenn eine herkömmliche Tastatur zur Durchführung von Texteingabe-Operationen beinhaltet ist, kann als Reaktion auf das Empfangen einer Benutzereingabe an den grafischen Tasten (z. B. wenn ein Benutzer auf der grafischen Tastatur 19A schreibt, um Text im Bearbeitungsbereich einzugeben) Anwendungsmodul 22 UI-Modul 20 dazu veranlassen, die möglichen Wörter und/oder Sätze als einen oder mehrere auswählbare Rechtschreibkorrekturen und/oder auswählbare Wort- oder Satzvorschläge anzuzeigen.
  • Zusätzlich zum Durchführen herkömmlicher Operationen einer grafischen Tastatur, die zur Texteingabe verwendet werden, bietet Anwendungsmodul 22 von Computergerät 10 in Abhängigkeit von Anwendungserweiterung 23 auch eine integrierte Suchfunktion. Das bedeutet, dass anstatt dass ein Benutzer von Computergerät 10 Benutzeroberfläche 14 verlassen muss, die eine grafische Tastatur 19A bereitstellt (z. B. um zu einer anderen Anwendung oder einem anderen Dienst zu navigieren, die/der von Computergerät 10 ausgeführt wird oder auf die/den von diesem zugegriffen wird) Anwendungserweiterung 23 Anwendungsmodul 22 in die Lage versetzt, im Suchmodus zu operieren, um Suchoperationen auszuführen, wie z. B. Vorhersagen von vorbestimmten Suchabfragen basierend auf mit Computergerät 10 oder Anwendungsmodul 22 (z. B. einem Benutzerkonto auf Anwendungsmodul 22 oder einem Inhaltsverlauf von Anwendungsmodul 22) verknüpften Kontextinformationen und Präsentieren der vorhergesagten Suchabfragen z. B. in demselben Bereich von PSD 12, in dem die grafische Tastatur 19A angezeigt wird. PSD 12 kann beispielsweise einen Hinweis auf eine Benutzereingabe an Suchtaste 16 empfangen, um Anwendungsmodul 22 zu veranlassen, Anwendungserweiterung 23 zu aktivieren und zwischen dem Standard-Texteingabemodus und dem Suchmodus zu wechseln.
  • Wie oben angegeben, kann Anwendungsmodul 22 als eigenständige Anwendung, eigenständiger Dienst oder eigenständiges Modul, die/der/das auf Computergerät 10 ausgeführt wird, oder als einzelne integrierte Subkomponente davon ausgeführt werden. Wenn also Anwendungsmodul 22 einen Teil einer Chat- oder Messaging-Anwendung bildet, die auf Computergerät 10 ausgeführt wird, kann Anwendungsmodul 22 der Chat- oder Messaging-Anwendung eine Texteingabemöglichkeit sowie Suchmöglichkeit bereitstellen. Wenn zum Beispiel Anwendungsmodul 22 eine eigenständige Anwendung oder Subroutine ist, die durch eine Anwendung oder Betriebsplattform von Computergerät 10 immer dann aufgerufen wird, wenn eine Anwendung oder Betriebsplattform eine grafische Tastatureingabefunktionalität benötigt, kann Anwendungsmodul 22 der aufrufenden Anwendung oder Betriebsplattform eine Texteingabemöglichkeit sowie Suchmöglichkeit bereitstellen.
  • Bei Betrieb im Suchmodus kann Anwendungsmodul 22 Anwendungserweiterung 23 ausführen, um verschiedene suchspezifische Funktionen auszuführen. Anwendungserweiterung 23 kann beispielsweise Suchen basierend auf vorbestimmten Suchabfragen ausführen, die in Computergerät 10 gespeichert sind, deren Ergebnisse Standard-Internetsuchen, bildbasierte Suchen, Emoji-Suchen, Übersetzungen und andere suchspezifischen Funktionen sind. Während Anwendungsmodul 22 und Anwendungserweiterung 23 an derselben Position wie die grafische Tastatur 19A angezeigt werden können, können Anwendungsmodul 22 und Anwendungserweiterung 23 vollständig unabhängige Prozesse mit verschiedenen Funktionen und Beschränkungen sein und separat verteilt werden.
  • In Übereinstimmung mit den Techniken in dieser Offenbarung und wie zuvor beschrieben kann UI-Modul 20 Anwendungsmodul 22 ausführen, um anfänglich, zur Anzeige an PSD 12, eine grafische Tastatur 19A auszugeben. In diesen Instanzen kann Anwendungsmodul 22 anfänglich konfiguriert sein, Eingaben zu empfangen, die zur Eingabe von Text führen, der in Nachrichten eingefügt werden soll, die in Ausgabebereich 18 angezeigt werden. Während UI-Modul 20 eine grafische Tastatur 19A zur Anzeige an PSD 12 ausgibt, kann Anwendungsmodul 22 Anwendungserweiterung 23 aktivieren, um Anwendungsmodul 22 von einem Texteingabemodus in einen Suchmodus zu versetzen. In einigen Instanzen kann Anwendungsmodul 22 Anwendungserweiterung 23 in Reaktion auf Empfangen eines Hinweises auf eine Benutzereingabe, wie z. B. eine Auswahl von Suchtaste 16, aktivieren. In anderen Instanzen kann Anwendungsmodul 22 automatisch Anwendungserweiterung 23 aktivieren, nachdem Anwendungsmodul 22 ausgeführt wurde.
  • In dem Beispiel von 1 kann ein Benutzer von Computergerät 10 Textnachrichten mit einem anderen Benutzer mit einem zweiten Computergerät austauschen. Computergerät 10 kann eine erste Textnachricht an das zweite Computergerät senden, die die Nachricht „Wie sieht das Wetter in deiner Nähe aus?“ beinhaltet. Etwas später empfängt Computergerät 10 möglicherweise eine zweite Textnachricht von dem zweiten Computergerät, die die Nachricht „Es schneit, ... und bei dir?“ beinhaltet. UI-Modul 20 kann grafische Hinweise auf diese Textnachrichten zur Anzeige in Ausgabebereich 18 ausgeben.
  • Vor der Erfassung von Kontextinformationen fordert Computergerät 10 einen Benutzer von Computergerät 10 möglicherweise auf, die Erfassung von Kontextinformationen ausdrücklich zu erlauben. Die Kontextinformationen können u. a. Kalenderdaten, Nachrichtendaten, eine aktuelle Zeit, einen aktuellen Ort, einen Suchverlauf, ein Benutzerkonto von Anwendungsmodul 22 und Nachrichten-Empfängerdaten beinhalten. Vor dem Erfassen von Kontextinformationen, die mit dem Benutzer von Computergerät 10 oder Anwendungsmodul 22 verknüpft sind, kann UI-Modul 20 beispielsweise eine Benutzeroberfläche über PSD 12 präsentieren, die einen Benutzer auffordert, ein Kästchen auszuwählen, eine Schaltfläche anzuklicken, eine Spracheingabe anzugeben oder anderweitig eine spezifische Eingabe auf der Benutzeroberfläche bereitzustellen, die von Computergerät 10 als eindeutige, bestätigende Erlaubnis dafür interpretiert wird, dass Anwendungserweiterung 23 persönliche Informationen des Benutzers und die Kontextinformationen erfassen und nutzen darf. An diesem Punkt kann Computergerät 10 fortfahren, den Rest der hierin beschriebenen Techniken auszuführen. Nachdem Computergerät 10 zum Beispiel eine Benutzereingabe empfängt, die angibt, dass der Benutzer das Erfassen der Kontextinformationen über den Benutzer und von Geräteinformationen erlaubt, die Computergerät 10 oder eine benachbarte Umgebung von Computergerät 10 beschreiben, kann Computergerät 10 mit dem Erfassen der Kontextinformationen fortfahren.
  • In Reaktion auf das Aktivieren durch Anwendungsmodul 22 und nach dem Empfangen der ausdrücklichen Erlaubnis dazu kann Anwendungserweiterung 23 basierend auf mit Computergerät 10 oder Anwendungsmodul 22 verknüpften Kontextinformationen eine Teilgruppe von einer oder mehreren Suchabfragen aus einem vorbestimmten Satz von zwei oder mehr Suchabfragen bestimmen. Der vorbestimmte Satz an Suchabfragen kann irgendwelche vorgeladenen oder vom Benutzer erstellten Suchabfragen beinhalten, die im Speicher auf Computergerät 10 gespeichert sind. Die Suchabfragen können eine kürzlich durchgeführte Suchabfrage, eine Abfrage nach nahegelegenen Lebensmittelläden und Restaurants, eine allgemeine Abfrage, was sich in der Nähe des aktuellen Standorts von Computergerät 10 befindet, eine Abfrage nach nahegelegenen Unterhaltungsangeboten, eine Abfrage nach nahegelegenen Aktivitätsangeboten, ein Abfrage nach aktuellen Trendthemen auf einer Social Media-Plattform, eine Abfrage nach kürzlich aufgenommenen Videos, eine Abfrage nach nahegelegenen Bars, eine Abfrage nach dem aktuellen Wetter, eine Abfrage nach aktuellen Kinofilmen, die in nahegelegenen Kinos gezeigt werden, eine Abfrage nach aktuellen Ergebnissen von Sportveranstaltungen oder jede andere vom Benutzer oder anderweitig erstellte Abfrage beinhalten, die relevant für einen Benutzer in einer Textnachrichtenkonversation sein kann. Anwendungserweiterung 23 kann eine oder mehrere vorbestimmte Suchabfragen basierend auf den zuvor erfassten Kontextinformationen auswählen, um eine Teilgruppe von einer oder mehreren Suchabfragen zu erzeugen.
  • In dem Beispiel von 1 kann Anwendungserweiterung 23 die Nachrichtendaten der Textnachrichten, die zuvor zwischen Computergerät 10 und dem zweiten Computergerät ausgetauscht wurden, und eine aktuelle Zeit analysieren, um eine Teilgruppe von Suchabfragen zu bestimmen. Anwendungserweiterung 23 kann bestimmen, dass beide Textnachrichten, die zwischen Computergerät 10 und dem zweiten Computergerät ausgetauscht wurden, Kommentare bezüglich des Wetters beinhalten, einschließlich einer Frage vom zweiten Computergerät bezüglich der aktuellen Wetterbedingungen in der Nähe von Computergerät 10. Als solches kann eine der ausgewählten Suchabfragen aus dem vorbestimmten Satz eine Abfrage nach dem aktuellen Wetter sein. Anwendungserweiterung 23 kann ferner bestimmen, dass eine der vom Benutzer gesendeten Textnachrichten die Wörter „in deiner Nähe“ beinhalten. Als solches kann eine andere ausgewählte Suchabfrage aus dem vorbestimmten Satz eine allgemeine Abfrage sein, was sich in der Nähe des aktuellen Standorts von Computergerät 10 befindet. Letztendlich kann eine aktuelle Zeit eine ungefähre Zeit sein, zu der der Benutzer von Computergerät 10 in der Regel zu Abend isst. Als solches kann eine dritte ausgewählte Suchabfrage aus dem vorbestimmten Satz eine Abfrage nach nahegelegenen Lebensmittelläden und Restaurants sein.
  • In Reaktion auf das Bestimmen der Teilgruppe von Suchabfragen durch Anwendungserweiterung 23 kann Anwendungserweiterung 23 über UI-Modul 20, zur Anzeige an PSD 12, ein entsprechendes grafisches Element 28A-28C, das jeweils mit einer Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist, anstelle von mindestens einem Teil der grafischen Tastatur 19A ausgeben. In dem Beispiel von 1 hat Anwendungserweiterung 23 beispielsweise bestimmt, dass die Teilgruppe von Suchabfragen aus einer Abfrage nach dem aktuellen Wetter, einer allgemeinen Abfrage, was sich in der Nähe des aktuellen Standorts von Computergerät 10 befindet, und einer Abfrage nach nahegelegenen Lebensmittelläden und Restaurants besteht. Anwendungserweiterung 23 kann UI-Modul 20 verwenden, um die grafische Benutzeroberfläche 14B auszugeben, die die grafische Tastatur 19A durch die Suchoberfläche 19B ersetzt, die eine benutzerdefinierte Suchleiste 26 und grafische Elemente 28A-28C beinhalten kann. In einigen Instanzen fügt UI-Modul 20 unter Umständen keine benutzerdefinierte Suchleiste 26 auf der ausgegebenen Suchoberfläche hinzu, sondern nur grafische Elemente 28A-28C. In dem Beispiel von 1 kann das grafische Element 28A mit der Abfrage nach dem aktuellen Wetter, das grafische Element 28B mit der allgemeinen Anfrage, was sich in der Nähe des aktuellen Standorts von Computergerät 10 befindet, und das grafische Element 28C mit der Abfrage nach nahegelegenen Lebensmittelläden und Restaurants verknüpft sein.
  • Über die Benutzeroberfläche 14B kann Computergerät 10 eine Suche ausführen, die auf einer Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen basiert. Computergerät 10 kann beispielsweise einen Hinweis auf eine Benutzereingabe empfangen, über die ein entsprechendes grafisches Element der grafischen Elemente 28A-28C ausgewählt wird, das mit einer bestimmten Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist. Computergerät 10 kann eine Suche basierend auf der bestimmten Suchabfrage ausführen und, zur Anzeige an PSD 12, einen grafischen Hinweis auf ein oder mehrere Suchergebnisse, die von der ausgeführten Suche bestimmt werden, anstelle von mindestens dem Teil der grafischen Tastatur 19A ausgeben. In einigen Instanzen kann Anwendungserweiterung 23 von Computergerät 10 die Suche ausführen. In anderen Instanzen kann eine andere Suchanwendung letztendlich die Suche ausführen, wie zum Beispiel Anwendungsmodul 22, eine auf Computergerät 10 ausgeführte Suchanwendung oder eine auf einem entfernten Computergerät (z. B. einem Server) ausgeführte Suchanwendung, auf die Computergerät 10 (z. B. über eine Netzwerkverbindung) zugreifen kann.
  • Anwendungserweiterung 23 kann beispielsweise einen Hinweis auf eine Benutzereingabe empfangen, über die das grafische Element 28A ausgewählt wird, das mit der Abfrage nach dem aktuellen Wetter verknüpft ist. In Reaktion auf Empfangen dieser Auswahl kann Anwendungserweiterung 23 die Suchabfrage nach dem aktuellen Wetter entweder über eine Websuche nach dem aktuellen Wetter oder durch Abrufen von in Computergerät 10 gespeicherten Daten, die das aktuelle Wetter definieren, ausführen. Bei Ausführen der Suchabfrage kann Anwendungsmodul 22 ein oder mehrere Suchergebnisse für das aktuelle Wetter aus dem Internet oder von Computergerät 10 erhalten. Die Suchergebnisse könnten eine Webseite mit einer aktuellen Wettervorhersage oder ein grafische Karte mit Temperatur- und Wettervorhersagedaten beinhalten. In Reaktion auf Empfangen dieser Suchergebnisse kann Anwendungserweiterung 23 UI-Modul 20 verwenden, um einen entsprechenden grafischen Hinweis auf jedes des einen oder der mehreren Suchergebnisse zur Anzeige an PSD 12 und zwar anstatt der grafischen Tastatur 19A und der Suchoberfläche 19B auszugeben.
  • In einigen Instanzen kann Anwendungserweiterung 23 einen weiteren Hinweis auf eine Benutzereingabe empfangen, über die einer der grafischen Hinweise auf ein bestimmtes Suchergebnis ausgewählt wird. Als Reaktion auf diese Auswahl kann Computergerät 10 eine Nachricht an das zweite Computergerät senden, die das bestimmte Suchergebnis beinhaltet, sodass Computergerät 10 effektiv Inhalte mit anderen Computergeräten austauschen kann, ohne zwischen Anwendungen umschalten oder zusätzliche Eingaben bereitstellen zu müssen. Auf diese Weise können Techniken aus dieser Offenbarung die Zeit und die Anzahl von Benutzereingaben reduzieren, die nötig sind, um relevante Suchergebnisse zu erhalten und zu verteilen, was die Benutzererfahrung vereinfachen und den Stromverbrauch von Computergerät 10 verringern kann.
  • 2 ist ein Blockdiagramm, das ein exemplarisches Computergerät 10 veranschaulicht, welches eine Anwendungserweiterung ausführt, wobei diese Anwendungserweiterung konfiguriert ist, eine Teilgruppe von vorbestimmten Suchabfragen dynamisch zu bestimmen, gemäß einem oder mehreren Aspekten der vorliegenden Offenbarung. Computergerät 10 aus 2 wird im Folgenden als Beispiel von Computergerät 10 aus 1 beschrieben. 2 veranschaulicht nur ein bestimmtes Beispiel von Computergerät 10 und viele andere Beispiele von Computergerät 10 können in anderen Instanzen verwendet werden und eine Teilgruppe der Komponenten beinhalten, die im exemplarischen Computergerät 10 enthalten sind, oder zusätzliche Komponenten beinhalten, die in 2 nicht dargestellt sind.
  • Wie im Beispiel von 2 dargestellt, beinhaltet Computergerät 10 eine PSD 12, einen oder mehrere Prozessoren 40, eine oder mehrere Eingabekomponenten 42, eine oder mehrere Kommunikationseinheiten 44, eine oder mehrere Ausgabekomponenten 46 und ein oder mehrere Speichergeräte 48. Die präsenzempfindliche Anzeige 12 beinhaltet eine Anzeigekomponente 54 und eine präsenzempfindliche Eingabekomponente 56. Speichergeräte 48 von Computergerät 10 beinhalten ein UI-Modul 20 und ein Anwendungsmodul 22. Anwendungsmodul 22 kann ein Kontextmodul 30 und ein Abfragemodul 32 beinhalten. Speichergeräte 48 können auch einen Nachrichtenverlauf 34, Kalenderereignisse 36 und eine Abfrageliste 38 beinhalten. Kommunikationskanäle 50 können mit jeder der Komponenten 12, 40, 44, 42, 46 und 48 zwecks Kommunikation zwischen den Komponenten (physisch, kommunikativ und/oder operativ) verbunden sein. In einigen Beispielen können die Kommunikationskanäle 50 einen Systembus, eine Netzwerkverbindung, eine prozessübergreifende Kommunikationsdatenstruktur oder ein beliebiges anderes Verfahren zur Kommunikation von Daten beinhalten.
  • Eine oder mehrere Kommunikationseinheiten 44 von Computergerät 10 können über ein oder mehrere drahtgebundene und/oder drahtlose Netzwerke mit externen Geräten kommunizieren, indem sie Netzwerksignale über das eine oder die mehreren Netzwerke senden und/oder empfangen. Beispiele von Kommunikationseinheiten 44 können eine Netzwerkschnittstellenkarte (z. B. eine Ethernetkarte), einen optischen Sendeempfänger, einen Hochfrequenz-Sendeempfänger, einen GPS-Empfänger oder jede andere Art von Gerät beinhalten, die Informationen senden und/oder empfangen kann. Andere Beispiele von Kommunikationseinheiten 44 können Kurzwellenradios, Mobilfunkdatenradios, drahtlose Netzwerkradios sowie Universal Serial Bus (USB)-Controller, beinhalten.
  • Eine oder mehrere Eingabekomponenten 42 von Computergerät 10 können eine Eingabe empfangen. Beispiele einer Eingabe sind taktile, auditive und Videoeingaben. Eingabekomponenten 42 von Computergerät 10 können in einem Beispiel ein präsenzempfindliches Eingabegerät (z. B. einen berührungsempfindlichen Bildschirm, eine PSD), eine Maus, eine Tastatur, ein Sprachreaktionssystem, eine Videokamera, ein Mikrofon oder jedwede andere Art von Gerät zum Erkennen einer Eingabe von Mensch oder Maschine beinhalten. In einigen Beispielen können die Eingabekomponenten 42 eine oder mehrere Sensorkomponenten, einen oder mehrere Standortsensoren (GPS-Komponenten, WLAN-Komponenten, Mobilfunkkomponenten), einen oder mehrere Temperatursensoren, einen oder mehrere Bewegungssensoren (z. B. Geschwindigkeitssensoren, Gyroskope), einen oder mehrere Drucksensoren (z. B. Barometer), einen oder mehrere Umgebungslichtsensoren und einen oder mehrere andere Sensoren (z. B. Mikrofon, Kamera, Infrarot-Näherungssensor, Hygrometer und Ähnliches) beinhalten. Andere Sensoren können einen Herzfrequenzsensor, ein Magnetometer, einen Glukosesensor, einen Hygrometer-Sensor, einen olfaktorischen Sensor, einen Kompass-Sensor, einen Schrittzähler-Sensor beinhalten, um nur einige nicht einschränkende Beispiele aufzuführen.
  • Eine oder mehrere Ausgabekomponenten 46 von Computergerät 10 können Ausgaben erzeugen. Beispiele von Ausgaben sind taktile, Audio- und Videoausgaben. Ausgabekomponenten 46 von Computergerät 10 können in einem Beispiel eine PSD, eine Soundkarte, eine Videografikadapterkarte, einen Lautsprecher, einen Kathodenstrahlröhren (CRT)-Monitor, eine Flüssigkristallanzeige (LCD) oder jedwede andere Art von Gerät zum Erzeugen von Ausgaben für Mensch oder Maschine beinhalten.
  • PSD 12 von Computergerät 10 kann der PSD 12 von Computergerät 10 ähnlich sein und eine Anzeigekomponente 54 und eine präsenzempfindliche Eingabekomponente 56 beinhalten. Anzeigekomponente 54 kann ein Bildschirm sein, auf dem Informationen von PSD 12 angezeigt werden, und die präsenzempfindliche Eingabekomponente 56 kann ein Objekt an und/oder in der Nähe von Anzeigekomponente 54 erkennen. Als ein exemplarischer Bereich kann die präsenzempfindliche Eingabekomponente 56 ein Objekt, wie z. B. einen Finger oder einen Stylus-Stift, erkennen, das sich in einem Abstand von zwei Zoll oder weniger zu Anzeigekomponente 54 befindet. Die präsenzempfindliche Eingabekomponente 56 kann eine Position (z. B. eine [x, y]-Koordinate) auf Anzeigekomponente 54 ermitteln, an der das Objekt erkannt wurde. In einem anderen exemplarischen Bereich kann die präsenzempfindliche Eingabekomponente 56 ein Objekt erfassen, das sechs Zoll oder weniger von der Anzeigekomponente 54 entfernt ist, wobei andere Bereiche ebenfalls möglich sind. Die präsenzempfindliche Eingabekomponente 56 kann die Position auf Anzeigekomponente 54, die durch den Finger des Benutzers ausgewählt wurde, unter Verwendung von kapazitiven, induktiven und/oder optischen Erkennungstechniken bestimmen. In einigen Beispielen stellt die präsenzempfindliche Eingabekomponente 56, wie in Bezug auf Anzeigekomponente 54 beschrieben, auch eine Ausgabe für einen Benutzer unter Verwendung von taktilen, Audio- oder Video-Stimuli bereit. Im Beispiel aus 2 kann PSD 12 eine Benutzeroberfläche (wie z. B. die grafischen Benutzeroberflächen 14Aund 14B aus 1) darstellen.
  • Obwohl als eine interne Komponente von Computergerät 10 veranschaulicht, kann PSD 12 auch eine externe Komponente repräsentieren, die sich einen Datenpfad mit Computergerät 10 zum Übertragen und/oder Empfangen von Eingaben und Ausgaben teilt. In einem Beispiel stellt PSD 12 beispielsweise eine integrierte Komponente von Computergerät 10 dar, die innerhalb der externen Verpackung von Computergerät 10 (z. B. ein Bildschirm eines Mobiltelefons) angeordnet und physisch damit verbunden ist. In einem weiteren Beispiel repräsentiert PSD 12 eine externe Komponente von Computergerät 10, die außerhalb der Verpackung oder des Gehäuses von Computergerät 10 angeordnet und physisch davon getrennt ist (z. B. ein Monitor, ein Projektor usw., der einen drahtgebundenen und/oder drahtlosen Datenpfad mit Computergerät 10 teilt).
  • PSD 12 von Computergerät 10 kann zweidimensionale und/oder dreidimensionale Gesten als Eingabe von einem Benutzer von Computergerät 10 erkennen. Ein Sensor von PSD 12 kann beispielsweise die Bewegung eines Benutzers (z. B. die Bewegung einer Hand, eines Arms, eines Stiftes usw.) innerhalb eines Grenzabstands des Sensors der PSD 12 erkennen. PSD 12 kann eine zwei- oder dreidimensionale Vektordarstellung der Bewegung bestimmen und die Vektordarstellung mit einer Gesteneingabe (z. B. ein Winken mit der Hand, ein Zusammenführen der Finger, ein Klatschen, eine Stiftberührung usw.) korrelieren, die über mehrere Dimensionen verfügt. Mit anderen Worten, PSD 12 kann eine multidimensionale Geste erkennen, ohne dass der Benutzer diese Gesten auf oder in der Nähe von einem Bildschirm oder einer Oberfläche, auf dem bzw. der PSD 12 Informationen zur Anzeige ausgibt, ausführen muss. Stattdessen kann PSD 12 eine multidimensionale Geste erkennen, die an einem Sensor oder in der Nähe eines Sensors ausgeführt wird, der sich in der Nähe des Bildschirms bzw. der Oberfläche befinden kann oder nicht, auf dem bzw. der PSD 12 Informationen zum Anzeigen ausgibt.
  • Ein oder mehrere Prozessoren 40 können Funktionen implementieren und/oder mit Computergerät 10 verknüpfte Anweisungen ausführen. Beispiele von Prozessoren 40 beinhalten Anwendungsprozessoren, Anzeige-Controller, Zusatzprozessoren, ein oder mehrere Sensorhubs und jegliche andere Hardware, die dafür konfiguriert ist, als Prozessor, Verarbeitungseinheit oder Verarbeitungsgerät zu fungieren. Die Module/Anwendungen 20, 22 und 23 können durch die Prozessoren 40 betriebsfähig sein, verschiedene Aktionen, Operationen oder Funktionen von Computergerät 10 auszuführen. Prozessoren 40 von Computergerät 10 können beispielsweise Befehle abrufen und ausführen, die durch Speichergeräte 48 gespeichert werden, welche die Prozessoren 40 veranlassen, die Operationen der Module 20, 22 und 23 auszuführen. Bei Ausführung durch die Prozessoren 40 veranlassen die Anweisungen das Computergerät 10 dazu, Informationen in den Speichergeräten 48 zu speichern.
  • Ein oder mehrere Speichergeräte 48 innerhalb von Computergerät 10 können Informationen für die Verarbeitung während des Betriebs von Computergerät 10 speichern (z. B. kann Computergerät 10 Daten speichern, auf die die Module/Anwendungen 20, 22 und 23 und Datenspeicher 34, 36 und 38 während der Ausführung auf Computergerät 10 zugreifen können). In einigen Beispielen ist Speichergerät 48 ein temporärer Speicher, was bedeutet, dass der Hauptzweck von Speichergerät 48 nicht in der Langzeitspeicherung besteht. Speichergeräte 48 von Computergerät 10 können zur Kurzzeitspeicherung von Informationen als flüchtige Speicher konfiguriert sein, weshalb, wenn diese ausgeschaltet werden, die gespeicherten Inhalte verloren gehen. Beispiele von flüchtigen Speichern beinhalten Arbeitsspeicher (RAM), dynamische Arbeitsspeicher (DRAM), statische Arbeitsspeicher (SRAM) und andere Formen von flüchtigen Speichern, die auf dem Fachgebiet bekannt sind.
  • Speichergeräte 48 beinhalten in einigen Beispielen auch ein oder mehrere computerlesbare Speichermedien. Speichergeräte 48 beinhalten in einigen Beispielen ein oder mehrere nicht flüchtige computerlesbare Speichermedien. Speichergeräte 48 können zur Speicherung größerer Mengen an Informationen konfiguriert sein, als in der Regel in flüchtigen Speichern gespeichert wird. Speichergeräte 48 können weiterhin zur Langzeitspeicherung von Informationen als nicht flüchtiger Speicherplatz und zum Beibehalten von Informationen nach Stromeinschalt-/Ausschaltzyklen konfiguriert sein. Beispiele von nicht flüchtigen Speichern beinhalten magnetische Festplatten, optische Festplatten, Disketten, Flashspeicher oder Formen von elektrisch programmierbaren Speichern (EPROM) oder von elektrisch überschreibbaren und programmierbaren (EEPROM) Speichern. Speichergeräte 48 können Programmanweisungen und/oder Informationen (z. B. Daten) speichern, die mit den Modulen/Anwendungen 20, 22 und 23 und Datenspeichern 34, 36 und 38 verknüpft sind. Speichergeräte 48 können einen Speicher beinhalten, der so konfiguriert ist, dass er Daten oder andere Informationen speichert, die mit den Modulen/Anwendungen 20, 22 und 23 und Datenspeichern 34, 36 und 38 verknüpft sind.
  • UI-Modul 20 kann alle Funktionen von UI-Modul 20 von Computergerät 10 aus 1 beinhalten und es kann ähnliche Operationen wie UI-Modul 20 für das Verwalten einer Benutzeroberfläche (z. B. Benutzeroberfläche 14) durchführen, die von Computergerät 10 an der präsenzempfindlichen Anzeige 12 für die Handhabung von Eingaben von einem Benutzer bereitstellt. Zum Beispiel kann UI-Modul 20 von Computergerät 10 eine Anfrage nach einem Tastatur-Layout (z. B. eine englischsprachiges QWERTY-Tastatur usw.) an Anwendungsmodul 22 stellen. UI-Modul 20 kann eine Anfrage nach einem Tastatur-Layout über die Kommunikationskanäle 50 an Anwendungsmodul 22 übermitteln. Anwendungsmodul 22 kann die Anfrage empfangen und dem UI-Modul 20 mit Daten antworten, die mit dem Tastatur-Layout verknüpft sind. UI-Modul 20 kann die Tastatur-Layoutdaten über die Kommunikationskanäle 50 empfangen und die Daten benutzen, um eine Benutzeroberfläche zu erstellen. UI-Modul 20 kann einen Anzeigebefehl und Daten über die Kommunikationskanäle 50 übermitteln, um PSD 12 dazu zu veranlassen, die Benutzeroberfläche auf PSD 12 darzustellen.
  • In einigen Beispielen kann UI-Modul 20 einen Hinweis auf eine oder mehrere an PSD 12 erkannte Benutzereingaben empfangen und Informationen zu den Benutzereingaben an Anwendungsmodul 22 ausgeben. PSD 12 kann beispielsweise eine Benutzereingabe erkennen und Daten über die Benutzereingabe an UI-Modul 20 senden. UI-Modul 20 kann ein oder mehrere Berührungsereignisse basierend auf der erkannten Eingabe erzeugen. Ein Berührungsereignis kann Informationen beinhalten, die die Benutzereingabe, wie z. B. eine Ortskomponente (z. B. [x,y]-Koordinaten) der Benutzereingabe, eine Zeitkomponente (z. B. wann die Benutzereingabe empfangen wurde), eine Kraftkomponente (z. B. ein Druck, der durch die Benutzereingabe ausgeübt wurde) oder andere Daten (z. B. Geschwindigkeit, Beschleunigung, Richtung, Dichte usw.) über die Benutzereingabe charakterisieren.
  • Basierend auf Ortsinformationen der Berührungsereignisse, die aus der Benutzereingabe erzeugt wurden, kann UI-Modul 20 bestimmen, dass die erkannte Benutzereingabe mit der grafischen Tastatur verknüpft ist. UI-Modul 20 kann einen Hinweis auf das eine oder die mehreren Berührungsereignisse zur weiteren Interpretation an Anwendungsmodul 22 senden. Anwendungsmodul 22 kann basierend auf den von UI-Modul 20 empfangenen Berührungsereignissen bestimmen, dass die erkannte Benutzereingabe eine anfängliche Auswahl einer oder mehrerer Tasten der grafischen Tastatur darstellt.
  • Anwendungsmodul 22 kann die gesamte Funktionalität von Anwendungsmodul 22 von Computergerät 10 aus 1 beinhalten und kann ähnliche Operationen wie Anwendungsmodul 22 ausführen, um eine grafische Tastatur bereitzustellen, die integrierte Suchfunktionen besitzt. Tastaturanwendung 22 kann verschiedene Submodule, wie z. B. Anwendungserweiterung 23, beinhalten, die die Funktionalität von Anwendungsmodul 22 ausführen können.
  • Nachrichtenverlauf 34 kann ein Datenspeicher sein, der mit Nachrichten verknüpfte Daten enthält, die zwischen einem Benutzer von Computergerät 10 und einem Benutzer eines zweiten Computergeräts versendet wurden. In einigen Instanzen kann Nachrichtenverlauf 34 mit Nachrichten verknüpfte Daten beinhalten, die zwischen einem Benutzer von Computergerät 10 und vielen anderen Benutzern von vielen anderen entsprechenden Computergeräten versendet wurden. Die mit den Nachrichten verknüpften Daten könnten Angaben zu der Zeit, dem Nachrichteninhalt, der Nachrichtensendehäufigkeit, der Anzahl der Nachrichtenantworten und andere mit Nachrichten verknüpfte Informationen beinhalten.
  • Kalenderereignisse 36 können ein Datenspeicher mit Daten sein, die mit einer Kalenderanwendung verknüpft sind, die auf Computergerät 10 ausgeführt wird. In einigen Instanzen beinhalten die mit der Kalenderanwendung verknüpften Daten Hinweise auf Startzeiten von Ereignissen, Hinweise auf Endzeiten von Ereignissen, die Standorte von Ereignissen und eine Beschreibung des jeweiligen Ereignisses. Auch wenn sie in 2 als Datenspeicher in Speichergeräten 48 in Computergerät 10 dargestellt sind, könnten Kalenderereignisse 36 in einigen anderen Beispielen Cloud-Daten sein, die in einem Netzwerkkalenderdienst gespeichert sind, auf den Computergerät 10 über die Kommunikationseinheiten 44 zugreifen kann.
  • Abfrageliste 38 kann ein Datenspeicher sein, der eine oder mehrere vordefinierte Suchabfragen enthält, die Anwendungserweiterung 23 gemäß den Techniken in dieser Offenbarung ausführen kann. Beispiele von in Abfrageliste 38 gespeicherten Abfragen können eine kürzlich durchgeführte Suchabfrage, eine Abfrage nach nahegelegenen Lebensmittelläden und Restaurants, eine allgemeine Abfrage, was sich in der Nähe des aktuellen Standorts von Computergerät 10 befindet, eine Abfrage nach nahegelegenen Unterhaltungsangeboten, eine Abfrage nach nahegelegenen Aktivitätsangeboten, ein Abfrage nach aktuellen Trendthemen auf einer Social Media-Plattform, eine Abfrage nach kürzlich aufgenommenen Videos, eine Abfrage nach nahegelegenen Bars, eine Abfrage nach dem aktuellen Wetter, eine Abfrage nach aktuellen Kinofilmen, die in nahegelegenen Kinos gezeigt werden, eine Abfrage nach aktuellen Ergebnisse von Sportveranstaltungen oder jede andere vom Benutzer oder anderweitig erstellte Abfrage beinhalten, die relevant für einen Benutzer in einer Textnachrichtenkonversation sein kann. In einigen Instanzen können diese Abfragen von einem Benutzer von Computergerät 10 vorbestimmt und/oder vorausgewählt sein, um sie einem vorbestimmten Satz von zwei oder mehr Suchabfragen hinzuzufügen. Ein Benutzer von Computergerät 10 kann auch benutzerdefinierte Abfragen erstellen, um sie Abfrageliste 38 und dem vorbestimmten Satz von zwei oder mehr Suchabfragen hinzuzufügen.
  • In Übereinstimmung mit den Techniken in dieser Offenbarung kann UI-Modul 20 Anwendungsmodul 22 ausführen, um anfänglich, zur Anzeige an PSD 12, eine grafische Tastatur auszugeben. In diesen Instanzen kann Anwendungsmodul 22 anfänglich zum Empfangen von Eingaben konfiguriert sein, die zur Eingabe von Text führen, der in Nachrichten eingefügt werden soll, die in einem Ausgabebereich von PSD 12 angezeigt und in Nachrichtenverlauf 34 gespeichert werden. Während UI-Modul 20 eine grafische Tastatur zur Anzeige an PSD 12 ausgibt, kann Anwendungsmodul 22 Anwendungserweiterung 23 aktivieren, um Anwendungsmodul 22 von einem Texteingabemodus in einen Suchmodus zu versetzen. In einigen Instanzen kann Anwendungsmodul 22 Anwendungserweiterung 23 in Reaktion auf Empfangen eines Hinweises auf eine Benutzereingabe, wie z. B. eine Auswahl einer Suchtaste in der grafischen Tastatur, aktivieren. In anderen Instanzen kann Anwendungsmodul 22 automatisch Anwendungserweiterung 23 aktivieren, nachdem Anwendungsmodul 22 ausgeführt wurde.
  • In dem Beispiel von 2 kann ein Benutzer von Computergerät 10 Textnachrichten mit einem anderen Benutzer mit einem zweiten Computergerät austauschen. Computergerät 10 kann eine erste Textnachricht an das zweite Computergerät senden, die die Nachricht „Hast du schon mitbekommen, was gerade viral verbreitet wird?“ beinhaltet. Etwas später empfängt Computergerät 10 möglicherweise eine zweite Textnachricht von dem zweiten Computergerät, die die Nachricht „Nein, ich war den ganzen Tag über in einer Besprechung. Was ist passiert?“ beinhaltet. UI-Modul 20 kann grafische Hinweise auf diese Textnachrichten zur Anzeige in einem Ausgabebereich von PSD 12 ausgeben.
  • Vor der Erfassung von Kontextinformationen fordert Computergerät 10 einen Benutzer von Computergerät 10 möglicherweise auf, die Erfassung von Kontextinformationen ausdrücklich zu erlauben. Die Kontextinformationen können u. a. eine oder mehrere der Kalenderinformationen in den Kalenderereignissen 36, Nachrichteninformationen in Nachrichtenverlauf 34, eine aktuelle Zeit, einen aktuellen Standort, einen Suchverlauf, einen Suchverlauf verknüpft mit einem Benutzer des Computergeräts, ein Benutzerkonto verknüpft mit Anwendungsmodul 22, einen Crowdsourcing-Suchverlauf verknüpft mit Benutzern von anderen Computergeräten und Nachrichtenempfängerdaten in Nachrichtenverlauf 34 beinhalten. Vor dem Erfassen von Kontextinformationen, die mit dem Benutzer von Computergerät 10 verknüpft sind, kann UI-Modul 20 beispielsweise eine Benutzeroberfläche über PSD 12 präsentieren, die einen Benutzer auffordert, ein Kästchen auszuwählen, eine Schaltfläche anzuklicken, eine Spracheingabe anzugeben oder anderweitig eine spezifische Eingabe auf der Benutzeroberfläche bereitzustellen, die von Computergerät 10 als eindeutige, bestätigende Erlaubnis dafür interpretiert wird, dass Anwendungserweiterung 23 persönliche Informationen des Benutzers und die Kontextinformationen erfassen und nutzen darf. An diesem Punkt kann Computergerät 10 fortfahren, den Rest der hierin beschriebenen Techniken auszuführen. Nachdem Computergerät 10 zum Beispiel eine Benutzereingabe empfängt, die angibt, dass der Benutzer das Erfassen der Kontextinformationen über den Benutzer und von Geräteinformationen erlaubt, die Computergerät 10 oder eine benachbarte Umgebung von Computergerät 10 beschreiben, kann Computergerät 10 mit dem Erfassen der Kontextinformationen fortfahren.
  • In Reaktion auf das Aktivieren durch Anwendungsmodul 22 und nach dem Empfangen der ausdrücklichen Erlaubnis dazu kann Anwendungserweiterung 23 basierend auf mit Computergerät 10 oder Anwendungsmodul 22 verknüpften Kontextinformationen eine Teilgruppe von einer oder mehreren Suchabfragen aus einem vorbestimmten Satz von zwei oder mehr Suchabfragen bestimmen. Der vorbestimmte Satz von Suchabfragen kann irgendwelche vorgeladenen oder vom Benutzer erstellten Suchabfragen beinhalten, die in Abfrageliste 38 auf Computergerät 10 gespeichert sind. Die Abfrageliste 38 kann eine kürzlich durchgeführte Suchabfrage, eine Abfrage nach nahegelegenen Lebensmittelläden und Restaurants, eine allgemeine Abfrage, was sich in der Nähe des aktuellen Standorts von Computergerät 10 befindet, eine Abfrage nach nahegelegenen Unterhaltungsangeboten, eine Abfrage nach nahegelegenen Aktivitätsangeboten, ein Abfrage nach aktuellen Trendthemen auf einer Social Media-Plattform, eine Abfrage nach kürzlich aufgenommenen Videos, eine Abfrage nach nahegelegenen Bars, eine Abfrage nach dem aktuellen Wetter, eine Abfrage nach aktuellen Kinofilmen, die in nahegelegenen Kinos gezeigt werden, eine Abfrage nach kürzlich erschienenen Nachrichtenartikeln, eine Abfrage nach aktuellen Ergebnissen von Sportveranstaltungen oder jede andere vom Benutzer oder anderweitig erstellte Abfrage beinhalten, die relevant für einen Benutzer in einer Textnachrichtenkonversation sein kann. Anwendungserweiterung 23 kann eine oder mehrere vorbestimmte Suchabfragen basierend auf den zuvor erfassten Kontextinformationen auswählen, um eine Teilgruppe von einer oder mehreren Suchabfragen zu erzeugen.
  • In dem Beispiel von 2 kann, zum Bestimmen der Teilgruppe von Suchabfragen, Anwendungserweiterung 23 die Nachrichtendaten der Textnachrichten, die zuvor zwischen Computergerät 10 und dem zweiten Computergerät ausgetauscht wurden, in Nachrichtenverlauf 34, einen aktuellen Standort von Computergerät 10 und eine aktuelle Zeit analysieren. Mit anderen Worten, ein Maschinenlernsystem oder ein anderes System künstlicher Intelligenz von Anwendungserweiterung 23 kann Nachrichtendaten, Standortdaten und Zeitdaten als Eingaben verwenden und als Reaktion darauf einen Satz von Suchabfragen in Zusammenhang mit den Nachrichtendaten, Standortdaten und Zeitdaten ausgeben.
  • Anwendungserweiterung 23 kann bestimmen, dass die Textnachrichtenkonversation zwischen Computergerät 10 und dem zweiten Computergerät mit einer allgemeinen Frage bezüglich einem „viralen“ Thema begonnen hat. Dies ist ein umgangssprachlicher Begriff für eine Neuigkeit, die sich in Windeseile über eine Social Media-Plattform verbreitete. Als Reaktion auf das Identifizieren des Begriffs „viral“ als ein Thema der Konversation kann Anwendungserweiterungsmodul 23 bestimmen, dass eine der ausgewählten Suchabfragen aus dem vorbestimmten Satz eine Abfrage nach „aktuellen Trendthemen“ (z. B. auf einer Social Media-Plattform) mit Fokus auf den aktuellen Standort zur aktuellen Zeit von Computergerät 10 ist. Eine andere ausgewählte Suchabfrage aus dem vorbestimmten Satz kann eine kürzlich durchgeführte Suchabfrage sein, da das virale Thema ein Thema sein kann, nach dem Computergerät 10 kürzlich gesucht hat. Letztendlich kann Anwendungserweiterung 23 bestimmen, dass die Textnachrichtenkonversation den Teilsatz „den ganzen Tag über in einer Besprechung“ beinhaltet. Als solches kann Anwendungserweiterung 23 bestimmen, dass eine dritte ausgewählte Suchabfrage aus dem vorbestimmten Satz eine benutzerdefinierte Abfrage nach Kalenderereignissen aus den Kalenderereignissen 36 sein kann.
  • In einigen Instanzen kann Anwendungserweiterung 23 einen Relevanzwert für jede Suchabfrage im vorbestimmten Satz von zwei oder mehr Suchabfragen erzeugen. Anwendungserweiterung 23 kann dann bestimmen, dass die Teilgruppe von einer oder mehreren Suchabfragen aus der einen oder den mehreren Suchabfragen in dem vorbestimmten Satz von zwei oder mehr Suchabfragen besteht, die über die höchsten entsprechenden Relevanzwerte verfügen. Wie zuvor beschrieben können die Kontextinformationen in dem Beispiel von 2 beispielsweise die Nachrichtendaten der Textnachrichten, die zuvor zwischen Computergerät 10 und dem zweiten Computergerät ausgetauscht wurden, in Nachrichtenverlauf 34, einen aktuellen Standort und eine aktuelle Zeit beinhalten. Die Nachrichtendaten beinhalten eine Konversation über Nachrichten und Besprechungen. Als solches kann die Anwendungserweiterung 23 bestimmen, dass eine Abfrage nach nahegelegenen Bars einen niedrigen Relevanzwert hat, da die Nachrichtendaten keine Konversation über Bars beinhalten. Anwendungserweiterung 23 kann jedoch bestimmen, dass eine Abfrage nach aktuellen Trendthemen auf einer Social Media-Plattform mit einem Fokus auf den aktuellen Standort zur aktuellen Zeit von Computergerät 10 einen hohen Relevanzwert hat, da die Nachrichtendaten kürzlich gesendete Daten bezüglich aktueller Themen und aktueller Ereignisse beinhalten. Anwendungserweiterung 23 kann diesen Prozess für jede der Suchabfragen in dem vorbestimmten Satz von zwei oder mehr Suchabfragen wiederholen und bestimmen, dass die zur Anzeige an PSD 12 auszugebende Teilgruppe von Suchabfragen aus den Suchabfragen mit den höchsten Relevanzwerten besteht, wie zum Beispiel die Suchabfragen, die mit den höchsten Relevanzwerten verknüpft sind (z. B. die höchsten zwei, drei, vier oder sonstige Anzahl an Suchabfragen).
  • In einigen Instanzen analysiert Anwendungserweiterung 23 den Suchverlauf, der mit dem Benutzer von Computergerät 10 verknüpft ist, zum Bestimmen der Teilgruppe von einer oder mehreren Abfragen. Auch wenn der Benutzer von Computergerät 10 zum Beispiel möglicherweise eine Nachricht über ein „virales“ Thema an den Benutzer des zweiten Computergeräts gesendet hat, bevorzugt der Benutzer von Computergerät 10 möglicherweise, nach aktuellen Nachrichtenartikeln anstatt nach Einträgen in sozialen Medien zu suchen. Als solches kann Anwendungserweiterung 23 eine Abfrage nach kürzlich erschienenen Nachrichtenartikeln anstatt die Abfrage nach aktuellen Trendthemen auf einer Social Media-Plattform auswählen.
  • Eine derartige Nutzung des Suchverlaufs versetzt Anwendungserweiterung 23 in die Lage, Maschinenlerntechniken in die Auswahl von Suchabfragen zu implementieren. Falls Anwendungserweiterung 23 eine Benutzereingabe empfängt, über die ein mit einer bestimmten Suchabfrage verknüpftes grafisches Element ausgewählt wird, kann Anwendungserweiterung 23 den Suchverlauf basierend auf der Auswahl der bestimmten Suchabfrage aktualisieren. Wenn Anwendungserweiterung 23 später aktiviert wird und eine der zwei Suchabfragen auswählen muss, kann Anwendungserweiterung 23 den dynamisch aktualisierten Suchverlauf nutzen, um die häufiger von dem Benutzer ausgewählte Suchabfrage auszuwählen.
  • Anwendungserweiterung 23 kann ebenso den Crowdsourcing-Suchverlauf verwenden, der mit Benutzern von anderen Computergeräten verknüpft ist, um Abfragen zu bestimmen. Anwendungserweiterung 23 kann zum Beispiel bestimmen, dass zwei Suchabfragen eine gleiche Wahrscheinlichkeit haben, ausgewählt zu werden, basierend auf anderen mit Computergerät 10 verknüpften Kontextinformationen. In diesen Instanzen kann Anwendungserweiterung 23 die Suchabfrage auswählen, die von Benutzern von anderen Computergeräten häufiger ausgewählt wurde, wie vom Crowdsourcing-Suchverlauf angezeigt. In anderen Instanzen kann Anwendungserweiterung 23 bestimmen, dass eine Suchabfrage eine höhere Wahrscheinlichkeit hat, ausgewählt zu werden, als eine zweite Suchabfrage, basierend auf anderen mit Computergerät 10 verknüpften Kontextinformationen. Wenn der Crowdsourcing-Suchverlauf jedoch anzeigt, dass die zweite Suchabfrage häufiger als die erste Suchabfrage von Benutzern von anderen Computergeräten ausgewählt wurde, kann Anwendungserweiterung 23 die zweite Suchabfrage anstatt der ersten Suchabfrage auswählen. Anwendungserweiterung 23 kann regelmäßig Aktualisierungen für den Crowdsourcing-Suchverlauf empfangen, was bedeutet, dass Anwendungserweiterung 23 Maschinenlerntechniken in größerem Umfang als beim Suchverlauf nutzen kann, der nur mit dem Benutzer von Computergerät 10 verknüpft ist.
  • In Reaktion auf das Bestimmen der Teilgruppe von Suchabfragen durch Anwendungserweiterung 23 kann Anwendungserweiterung 23 über UI-Modul 20, zur Anzeige an PSD 12, ein entsprechendes grafisches Element, das jeweils mit einer Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist, anstelle von mindestens einem Teil der grafischen Tastatur ausgeben. In dem Beispiel von 2 hat Anwendungserweiterung 23 beispielsweise bestimmt, dass die Teilgruppe von Suchabfragen aus einer Abfrage nach aktuellen Trendthemen auf einer Social Media-Plattform mit Fokus auf den aktuellen Standort zur aktuellen Zeit von Computergerät 10, einer kürzlich ausgeführten Abfrage und einer benutzerdefinierten Abfrage nach Kalenderereignissen besteht. Anwendungserweiterung 23 kann UI-Modul 20 verwenden, um eine grafische Benutzeroberfläche auszugeben, die die grafische Tastatur durch eine Suchoberfläche ersetzt, die eine benutzerdefinierte Suchleiste und die entsprechenden grafischen Elemente beinhalten kann. In einigen Instanzen fügt UI-Modul 20 unter Umständen keine benutzerdefinierte Suchleiste auf der ausgegebenen Suchoberfläche hinzu, sondern nur die grafischen Elemente.
  • In den Beispielen, in denen Anwendungserweiterung 23 die Teilgruppe basierend auf Relevanzwerten bestimmt, kann Anwendungserweiterung 23 ferner eine Reihenfolge für die eine oder die mehreren Suchabfragen in der Teilgruppe von einer oder mehreren Suchabfragen basierend auf dem entsprechenden Relevanzwert für jede Suchabfrage in der Teilgruppe von einer oder mehreren Suchabfragen bestimmen. UI-Modul 20 kann dann die entsprechenden mit den einzelnen Suchabfragen verknüpften grafischen Elemente gemäß der bestimmten Reihenfolge ausgeben. In dem Beispiel von 2 hat Anwendungserweiterung 23 beispielsweise bestimmt, dass die Teilgruppe von Suchabfragen aus einer Abfrage nach aktuellen Trendthemen auf einer Social Media-Plattform mit Fokus auf den aktuellen Standort zur aktuellen Zeit von Computergerät 10, einer kürzlich ausgeführten Abfrage und einer benutzerdefinierten Abfrage nach Kalenderereignissen besteht. Die kürzlich im Nachrichtenverlauf 34 gespeicherten Nachrichtendaten geben an, dass sich die kürzlich geführte Konversation direkt auf „virale“ Themen und aktuelle Veranstaltungsereignisse bezog. Als solches kann Anwendungserweiterung 23 bestimmen, dass die Abfrage nach aktuellen Trendthemen auf einer Social Media-Plattform mit Fokus auf den aktuellen Standort von Computergerät 10 zur aktuellen Zeit den höchsten Relevanzwert hat, und UI-Modul 20 kann das grafische Element, das mit dieser Abfrage verknüpft ist, an oberster Position oder ganz links ausgeben. Die kürzlich gespeicherten Nachrichtendaten beinhalten auch einen Teilsatz über Besprechungen. Als solches kann Anwendungserweiterung 23 bestimmen, dass die benutzerdefinierte Abfrage nach Kalenderereignissen den zweithöchsten Relevanzwert hat, und UI-Modul 20 kann das grafische Element, das mit diese Abfrage verknüpft ist, in der mittleren Position ausgeben. Zu guter Letzt können die kürzlich gespeicherten Daten auch nur indirekt anzeigen, dass eine kürzlich durchgeführte Suchabfrage relevant für den Benutzer sein kann, da die Nachrichtendaten nicht direkt Nachrichten bezüglich einer kürzlich durchgeführten Suchabfrage enthalten. Als solches kann Anwendungserweiterung 23 bestimmen, dass die kürzlich durchgeführte Abfrage den niedrigsten Relevanzwert hat, und UI-Modul 20 kann das grafische Element, das mit diese Abfrage verknüpft ist, an unterster Position oder ganz rechts ausgeben.
  • In einigen Instanzen hat jedes entsprechende grafische Element, das mit jeweils einer Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist, eine eindeutige visuelle Eigenschaft, die indikativ für die entsprechende Suchabfrage ist. Mit anderen Worten, die bestimmte Suchabfrage, die mit dem entsprechenden grafischen Element verknüpft ist, wird unter Umständen durch das Design des entsprechenden grafischen Elements ersichtlich. In 2 hat Anwendungserweiterung 23 beispielsweise bestimmt, dass die Teilgruppe von Suchabfragen aus einer Abfrage nach aktuellen Trendthemen auf einer Social Media-Plattform mit Fokus auf den aktuellen Standort zur aktuellen Zeit von Computergerät 10, einer kürzlich ausgeführten Abfrage und einer benutzerdefinierten Abfrage nach Kalenderereignissen besteht. Ein grafisches Element, das mit der Abfrage nach aktuellen Trendthemen auf der Social Media-Plattform verknüpft ist, kann das Logo der Social Media-Plattform oder einer Zeitung beinhalten. Ein grafisches Element, das mit der kürzlich durchgeführten Suchabfrage verknüpft ist, kann das Design einer Uhr haben. Ferner kann ein grafisches Element, das mit der benutzerdefinierten Abfrage nach Kalenderereignissen verknüpft ist, ein Bild oder ein Design einer Tages- oder Monats-Kalenderseite beinhalten.
  • Über die Suchoberfläche kann Computergerät 10 eine Suche ausführen, die auf einer Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen basiert. Computergerät 10 kann beispielsweise einen Hinweis auf eine Benutzereingabe empfangen, über die ein entsprechendes grafisches Element ausgewählt wird, das mit einer bestimmten Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist. Computergerät 10 kann eine Suche basierend auf der bestimmten Suchabfrage ausführen und, zur Anzeige an PSD 12, einen grafischen Hinweis auf ein oder mehrere Suchergebnisse, die von der ausgeführten Suche bestimmt werden, anstelle von mindestens dem Teil der grafischen Tastatur ausgegeben. In einigen Instanzen kann Anwendungserweiterung 23 von Computergerät 10 die Suche ausführen. In anderen Instanzen kann eine andere Suchanwendung letztendlich die Suche ausführen, wie zum Beispiel Anwendungsmodul 22, eine auf Computergerät 10 ausgeführte Suchanwendung oder eine auf einem entfernten Computergerät (z. B. einem Server) ausgeführte Suchanwendung, auf die Computergerät 10 (z. B. über eine Netzwerkverbindung über Kommunikationseinheiten 44) zugreifen kann.
  • Anwendungserweiterung 23 kann beispielsweise einen Hinweis auf eine Benutzereingabe empfangen, über die ein grafisches Element ausgewählt wird, das mit der Abfrage nach aktuellen Trendthemen auf einer Social Media-Plattform mit Fokus auf den aktuellen Standort von Computergerät 10 zur aktuellen Zeit verknüpft ist. Als Reaktion auf Empfangen dieser Auswahl kann Anwendungserweiterung 23 die Suchabfrage nach aktuellen Trendthemen auf einer Social Media-Plattform mit Fokus auf den aktuellen Standort von Computergerät 10 zur aktuellen Zeit über eine Websuche durchführen, die die Domäne der Social Media-Plattform beinhaltet. Bei Ausführung der Suchabfrage kann Anwendungsmodul 22 ein oder mehrere Suchergebnisse für aktuelle Trendthemen auf einer Social Media-Plattform mit Fokus auf den aktuellen Standort von Computergerät 10 zur aktuellen Zeit über das Internet erhalten. Die Suchergebnisse könnten eine Webseite mit einer Trendnachricht oder eine Liste mit Beiträgen auf der Social Media-Plattform bezüglich des Trendthemas beinhalten. In Reaktion auf Empfangen dieser Suchergebnisse kann Anwendungserweiterung 23 UI-Modul 20 verwenden, um einen entsprechenden grafischen Hinweis auf jedes des einen oder der mehreren Suchergebnisse zur Anzeige an PSD 12 und zwar anstatt der grafischen Tastatur und der Suchoberfläche auszugeben.
  • Auf welche Weise UI-Modul 20 die grafischen Hinweise auf die Suchergebnisse in PSD 12 anzeigt, kann von einer physischen Ausrichtung von Computergerät 10 abhängen. UI-Modul 20 kann beispielsweise bestimmen, ob sich Computergerät 10 im Hochformat-Anzeigemodus (d. h. die vertikale Länge von PSD 12 ist größer als die horizontale Länge von PSD 12) oder in einem Querformat-Anzeigemodus (d. h. die horizontale Länge von PSD 12 ist größer als die vertikale Länge von PSD 12) befindet. Wenn sich Computergerät 10 im Hochformat-Anzeigemodus befindet, kann UI-Modul 20 die grafischen Hinweise auf das eine oder die mehreren Suchergebnisse, die durch die Suche bestimmt wurden, in einer vertikalen Ausrichtung ausgeben (d. h. die Ergebnisse können vertikal durchblättert werden). Wenn sich Computergerät 10 im Querformat-Anzeigemodus befindet, kann UI-Modul 20 die grafischen Hinweise auf das eine oder die mehreren Suchergebnisse, die durch die Suche bestimmt wurden, in einer horizontalen Ausrichtung ausgeben (d. h. die Ergebnisse können horizontal in einem Karussellformat durchblättert werden).
  • In einigen Instanzen kann Anwendungserweiterung 23 einen weiteren Hinweis auf eine Benutzereingabe empfangen, über die einer der grafischen Hinweise auf ein bestimmtes Suchergebnis ausgewählt wird. Als Reaktion auf diese Auswahl kann Computergerät 10 eine Nachricht an das zweite Computergerät senden, die das bestimmte Suchergebnis beinhaltet, sodass Computergerät 10 effektiv Inhalte mit anderen Computergeräten austauschen kann, ohne zwischen Anwendungen umschalten oder zusätzliche Eingaben bereitstellen zu müssen. Auf diese Weise können Techniken aus dieser Offenbarung die Zeit und die Anzahl von Benutzereingaben reduzieren, die nötig sind, um relevante Suchergebnisse zu erhalten und zu verteilen, was die Benutzererfahrung vereinfachen und den Stromverbrauch von Computergerät 10 verringern kann.
  • 3 zeigt ein Blockdiagramm, das ein exemplarisches Computergerät 10 veranschaulicht, das grafische Inhalte zur Anzeige auf einem entfernten Gerät gemäß einer oder mehreren Techniken der vorliegenden Offenbarung ausgibt. Grafische Inhalte können im Allgemeinen jedwede visuellen Informationen beinhalten, die zur Anzeige ausgegeben werden können, wie z. B. Text, Bilder, eine Gruppe von bewegten Bildern, um nur einige Beispiele zu nennen. Das in 3 gezeigte Beispiel beinhaltet ein Computergerät 10, eine PSD 12, eine Kommunikationseinheit 44, ein mobiles Gerät 86 und eine visuelle Anzeigekomponente 90. In einigen Beispielen kann die PSD 12, wie in 1-2 beschrieben, eine präsenzempfindliche Anzeige sein. Obwohl in 1 und 2 exemplarisch als eigenständiges Computergerät 10 dargestellt, kann ein Computergerät, wie z. B. Computergerät 10, im Allgemeinen eine beliebige Komponente oder ein beliebiges System sein, das einen Prozessor oder eine andere geeignete Computerumgebung zum Ausführen von Softwareanweisungen beinhaltet, und es muss z. B. keine präsenzempfindliche Anzeige beinhalten.
  • Wie im Beispiel von 3 dargestellt, kann Computergerät 10 ein Prozessor sein, der die in Bezug auf Prozessoren 40 in 2 beschriebene Funktionalität beinhaltet. In solchen Beispielen kann Computergerät 10 mit der PSD 12 durch einen Kommunikationskanal 62A, der ein Systembus oder eine andere geeignete Verbindung sein kann, operativ verbunden sein. Computergerät 10 kann außerdem mit Kommunikationseinheit 44, die nachfolgend näher beschrieben wird, durch einen Kommunikationskanal 62B, der auch ein Systembus oder eine andere geeignete Verbindung sein kann, operativ gekoppelt sein. Obwohl in 3 separat als Beispiel dargestellt, kann Computergerät 10 mit der PSD 12 und Kommunikationseinheit 44 durch eine beliebige Anzahl von einem oder mehreren Kommunikationskanälen operativ verbunden sein.
  • In anderen Beispielen kann sich, wie z. B. zuvor durch das Computergerät 10 in 1-2 veranschaulicht, ein Computergerät auf ein tragbares oder mobiles Gerät, wie z. B. Mobiltelefone (einschließlich Smartphones), Laptop-Computer usw. beziehen. In einigen Beispielen kann ein Computergerät ein Desktop-Computer, ein Tablet-Computer, eine intelligente Fernsehplattform, eine Kamera, ein persönlicher digitaler Assistent (PDA), ein Server oder Mainframe sein.
  • PSD 12 beinhaltet eine Anzeigekomponente 54 und eine präsenzempfindliche Eingabekomponente 56. Die Anzeigekomponente 54 kann z. B. Daten von Computergerät 10 empfangen und die grafischen Inhalte anzeigen. In einigen Beispielen kann die präsenzempfindliche Eingabekomponente 56 eine oder mehrere Benutzereingaben (z. B. ununterbrochene Gesten, Mehrfachberührungsgesten, Einzelberührungsgesten usw.) an PSD 12 mithilfe kapazitiver, induktiver und/oder optischer Erkennungstechniken bestimmen und Hinweise auf solche Benutzereingaben unter Verwendung von Kommunikationskanal 62A an Computergerät 10 senden. In einigen Beispielen kann die präsenzempfindliche Eingabekomponente 56 physisch oben auf der Anzeigekomponente 54 positioniert sein, sodass, wenn ein Benutzer eine Eingabeeinheit über einem grafischen Element positioniert, das durch Anzeigekomponente 54 angezeigt wird, die Position, an der sich die präsenzempfindliche Eingabekomponente 56 befindet, der Position der Anzeigekomponente 54 entspricht, an der das grafische Element angezeigt wird.
  • Wie in 3 dargestellt, kann Computergerät 10 außerdem Kommunikationseinheit 44 beinhalten und/oder operativ mit ihr gekoppelt sein. Kommunikationseinheit 44 kann Funktionen von Kommunikationseinheit 44 beinhalten, wie in 2 beschrieben. Beispiele von Kommunikationseinheit 44 können eine Netzwerkschnittstellenkarte, eine Ethernetkarte, einen optischen Sender-Empfänger, einen Hochfrequenz-Sender-Empfänger oder eine beliebige andere Art von Gerät beinhalten, das Informationen senden und empfangen kann. Andere Beispiele solcher Kommunikationseinheiten können Bluetooth, 3G und WLAN-Radios, Universal Serial Bus (USB)-Schnittstellen usw. beinhalten. Computergerät 10 kann zudem ein oder mehrere andere Geräte beinhalten (z. B. Eingabegeräte, Ausgabegeräte, Arbeitsspeicher, Datenspeichergeräte usw.), die in 3 der Kürze und Veranschaulichung halber nicht dargestellt sind, oder operativ mit denselben verbunden sein.
  • 3 veranschaulicht auch das mobile Gerät 86 und die visuelle Anzeigekomponente 90. Das mobile Gerät 86 und die visuelle Anzeigekomponente 90 können jeweils Rechen- und Konnektivitätsmöglichkeiten beinhalten. Beispiele für das mobile Gerät 86 können e-Reader-Geräte, konvertierbare Notebook-Geräte, Hybridschreibtafelgeräte usw. beinhalten. Beispiele für die visuelle Anzeigekomponente 90 können andere Geräte, wie z. B. Fernseher, Computerbildschirme usw., beinhalten. In einigen Beispielen kann die visuelle Anzeigekomponente 90 eine Fahrzeug-Cockpitanzeige oder eine Navigationsanzeige (z. B. in einem Auto, Flugzeug oder einem anderen Fahrzeug) sein. In einigen Beispielen kann die visuelle Anzeigekomponente 90 eine Heimautomatisierungsanzeige oder eine andere Art von Anzeige sein, die von Computergerät 10 getrennt ist.
  • Wie in 3 dargestellt, kann das mobile Gerät 86 eine präsenzempfindliche Anzeige 88 beinhalten. Die visuelle Anzeigekomponente 90 kann eine präsenzempfindliche Anzeige 92 beinhalten. Die präsenzempfindlichen Anzeigen 88 und 92 können, wie in dieser Offenbarung beschrieben, eine Teilgruppe von Funktionen oder die gesamte Funktionalität der präsenzempfindlichen Anzeige 12, 12 und/oder 12 beinhalten. In einigen Beispielen können die präsenzempfindlichen Anzeigen 88 und 92 Zusatzfunktionalität beinhalten. In jedem Fall kann die präsenzempfindliche Anzeige 92 z. B. Daten von Computergerät 10 empfangen und die grafischen Inhalte anzeigen. In einigen Beispielen kann die präsenzempfindliche Anzeige 92 eine oder mehrere Benutzereingaben (z. B. ununterbrochene Gesten, Mehrfachberührungsgesten, Einzelberührungsgesten usw.) an einem Projektorbildschirm unter Verwendung kapazitiver, induktiver und/oder optischer Erkennungstechniken ermitteln und Hinweise auf solche Benutzereingaben unter Verwendung einer oder mehrerer Kommunikationseinheiten an Computergerät 10 senden.
  • Wie oben in einigen Beispielen beschrieben, kann Computergerät 10 grafische Inhalte zur Anzeige an PSD 12 ausgeben, die mit Computergerät 10 durch einen Systembus oder einen anderen geeigneten Kommunikationskanal verbunden ist. Computergerät 10 kann zudem grafische Inhalte zur Anzeige an einem oder mehreren entfernten Geräten, wie z. B. dem mobilen Gerät 86 und der visuellen Anzeigekomponente 90, ausgeben. Computergerät 10 kann beispielsweise eine oder mehrere Anweisungen zum Erzeugen und/oder Modifizieren von grafischen Inhalten gemäß Techniken der vorliegenden Offenbarung ausführen. Computergerät 10 kann die Daten, die die grafischen Inhalte beinhalten, an eine Kommunikationseinheit von Computergerät 10, wie z. B. Kommunikationseinheit 44, ausgeben. Kommunikationseinheit 44 kann die Daten an ein oder mehrere der entfernten Geräte, wie z. B. ein mobiles Gerät 86 und/oder eine visuelle Anzeigekomponente 90, ausgeben. Auf diese Weise kann Computergerät 10 die grafischen Inhalte zur Anzeige an ein oder mehrere der entfernten Geräte ausgeben. In einigen Beispielen können ein oder mehrere der Remote-Geräte die grafischen Inhalte an eine präsenzempfindliche Anzeige ausgeben, die in den jeweiligen entfernten Geräten enthalten und/oder operativ mit denselben gekoppelt ist.
  • In einigen Beispielen kann Computergerät 10 möglicherweise keine grafischen Inhalte an PSD 12 ausgeben, die operativ mit Computergerät 10 verbunden ist. In anderen Beispielen kann Computergerät 10 grafische Inhalte zur Anzeige an sowohl die PSD 12, die mit Computergerät 10 über Kommunikationskanal 62A operativ verbunden ist, als auch an ein oder mehrere entfernte Geräten ausgeben. In diesen Beispielen können die grafischen Inhalte im Wesentlichen gleichzeitig auf jedem jeweiligen Gerät angezeigt werden. In einigen Beispielen können sich grafische Inhalte, die von Computergerät 10 erzeugt und zur Anzeige an PSD 12 ausgegeben wurden, von der Ausgabe zur Anzeige von grafischen Inhalten, die zur Anzeige an ein oder mehrere entfernte Geräte ausgegeben wurde, unterscheiden.
  • Computergerät 10 kann Daten unter Verwendung jeder geeigneten Kommunikationstechnik senden und empfangen. Computergerät 10 kann beispielsweise mittels der Netzwerkverbindung 73A operativ mit dem externen Netzwerk 74 gekoppelt sein. Jedes der in 3 veranschaulichten entfernten Geräte kann durch eine der jeweiligen Netzwerkverbindungen 73B oder 73C operativ mit dem externen Netzwerk 74 verbunden sein. Das externe Netzwerk 74 kann Netzwerk-Hubs, Netzwerkschalter, Netzwerk-Router usw. beinhalten, die operativ miteinander gekoppelt sind, wodurch sie den Austausch von Informationen zwischen Computergerät 10 und den in 3 veranschaulichten entfernten Geräten ermöglichen. In einigen Beispielen können die Netzwerkverbindungen 73A-73C Ethernet-, ATM- oder andere Netzwerkverbindungen sein. Bei diesen Verbindungen kann es sich um drahtlose und/oder drahtgebundene Verbindungen handeln.
  • In einigen Beispielen kann Computergerät 10 mittels der direkten Gerätekommunikation 78 operativ mit einem oder mehreren der in 3 enthaltenen entfernten Geräte gekoppelt sein. Die direkte Gerätekommunikation 78 kann Kommunikationen beinhalten, durch die Computergerät 10 Daten mittels drahtgebundener oder drahtloser Kommunikation direkt mit einem entfernten Gerät sendet und empfängt. Das heißt, dass in einigen Bespielen von direkter Gerätekommunikation 78 Daten, die direkt durch Computergerät 10 gesendet werden, möglicherweise nicht durch ein oder mehrere zusätzliche Geräte weitergeleitet werden, bevor sie am entfernten Gerät empfangen werden, und umgekehrt. Beispiele für direkte Gerätekommunikation 78 können Bluetooth, Nahbereichskommunikation, universeller serieller Bus, WiFi, Infrarot usw. beinhalten. Eines oder mehrere der entfernten Geräte, die in 3 veranschaulicht werden, können mit Computergerät 10 operativ über die Kommunikationsverbindungen 76A-76C verbunden sein. In einigen Beispielen können die Kommunikationsverbindungen 76A-76C Verbindungen unter Verwendung von Bluetooth, Nahfeldkommunikation, Universal Serial Bus, Infrarot usw. sein. Bei diesen Verbindungen kann es sich um drahtlose und/oder drahtgebundene Verbindungen handeln.
  • Gemäß den Techniken der Offenbarung kann Computergerät 10 unter Verwendung des externen Netzwerks 74 operativ mit der visuellen Anzeigekomponente 90 verbunden sein. Computergerät 10 kann eine grafische Tastatur zur Anzeige an PSD 92 ausgeben. Computergerät 10 kann zum Beispiel Daten an Kommunikationseinheit 44 senden, die eine Darstellung der grafischen Tastatur beinhalten. Kommunikationseinheit 44 kann die Daten, die die Darstellung der grafischen Tastatur beinhalten, unter Verwendung des externen Netzwerks 74 an die visuelle Anzeigekomponente 90 senden. Die visuelle Anzeigekomponente 90 kann, als Reaktion auf das Empfangen der Daten und unter Verwendung des externen Netzwerks 74, PSD 92 dazu veranlassen, die grafische Tastatur auszugeben.
  • Computergerät 10 kann unter Verwendung einer Anwendungserweiterung von einer auf Computergerät 10 ausgeführten Anwendung, basierend auf mit dem Computergerät verknüpften Kontextinformationen, eine Teilgruppe von einer oder mehreren Suchabfragen aus einem vordefinierten Satz von zwei oder mehr Suchabfragen bestimmen. Computergerät 10 kann unter Verwendung der Anwendungserweiterung, zur Anzeige an PSD 92 anstatt von mindestens einem Teil der grafischen Tastatur, ein entsprechendes grafisches Element ausgeben, das mit der jeweiligen Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist. Computergerät 10 kann unter Verwendung der Anwendungserweiterung, an PSD 92, einen Hinweis auf eine Benutzereingabe empfangen, über die das entsprechende grafische Element ausgewählt wird, das mit einer bestimmten Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist. Computergerät 10 kann basierend auf der bestimmten Suchabfrage eine Suche ausführen. Computergerät 10 kann, durch die Anwendungserweiterung, zur Anzeige an PSD 92 anstatt von mindestens einem Teil der grafischen Tastatur, einen grafischen Hinweis auf ein oder mehrere Suchergebnisse ausgeben, die von der Suche bestimmt werden.
  • 4A-4C sind konzeptionelle Diagramme, die exemplarische grafische Benutzeroberflächen von einem exemplarischen Computergerät veranschaulichen, die eine Anwendungserweiterung ausführen, wobei diese Anwendungserweiterung konfiguriert ist, eine Teilgruppe von vorbestimmten Suchabfragen dynamisch zu bestimmen, gemäß einem oder mehreren Aspekten der vorliegenden Offenbarung. 4A-4C veranschaulichen entsprechend exemplarische grafische Benutzeroberflächen 114A-114F (zusammen die Benutzeroberflächen 114). In anderen Fällen können jedoch auch viele andere Beispiele von grafischen Benutzeroberflächen verwendet werden. Jede der grafischen Benutzeroberflächen 114 kann einer grafischen Benutzeroberfläche entsprechen, die von Computergerät 10 aus 1 und 2 angezeigt wird. 4A-4F sind nachfolgend in Zusammenhang mit Computergerät 10 beschrieben.
  • Computergerät 10 kann eine Anwendung nutzen, um eine grafische Benutzeroberfläche 114A auszugeben. Im Beispiel von 4A beinhaltet die grafische Benutzeroberfläche einen Ausgabebereich 118A, eine Suchtaste 116 und eine grafische Tastatur 119A. Ausgabebereich 118A kann eine erste Textnachricht beinhalten, die von einem Benutzer von Computergerät 10 an einen Benutzer von einem zweiten Computergerät gesendet wurde und die Nachricht „Wollen wir heute Abend essen gehen?“ beinhaltet.
  • Irgendwann nach Senden der ersten Textnachricht an den Benutzer des zweiten Computergeräts kann Computergerät 10 einen Hinweis auf eine Benutzereingabe empfangen, über die Suchtaste 116 ausgewählt und so eine Anwendungserweiterung in Computergerät 10 aktiviert wird. Als Reaktion auf Empfangen des Hinweises auf eine Benutzereingabe kann Computergerät 10 die Anwendungserweiterung zur Ausgabe der grafischen Benutzeroberfläche 114B verwenden. Die grafische Benutzeroberfläche 114B kann einen Ausgabebereich 118A, eine Suchtaste 116 und eine Suchoberfläche 119B beinhalten. In dem Beispiel von 4A beinhaltet die Suchoberfläche 119B ferner eine benutzerdefinierte Suchleiste 126 und grafische Elemente 128A-128C.
  • Die Anwendungserweiterung von Computergerät 10 kann eine Teilgruppe von einer oder mehreren Suchabfragen aus einem vorbestimmten Satz von zwei oder mehr Suchabfragen basierend auf mit dem Computergerät 10 verknüpften Kontextinformationen bestimmen. Nach Empfangen der ausdrücklichen Erlaubnis dazu kann die Anwendungserweiterung die von Computergerät 10 gesendete Nachricht analysieren, in der das Wert „Abendessen“ erwähnt wird. In Übereinstimmung der hierin beschriebenen Techniken kann die Anwendungserweiterung bestimmen, dass die Teilgruppe von einer oder mehreren Abfragen eine Abfrage nach nahegelegenen Lebensmittelläden oder Restaurants, eine Abfrage nach nahegelegenen Bars und eine kürzlich durchgeführte Abfrage beinhaltet.
  • Computergerät 10 kann grafische Elemente 128A-128C basierend auf der vorbestimmten Teilgruppe von einer oder mehreren Suchabfragen ausgeben. Computergerät 10 kann beispielsweise das grafische Element 128A ausgeben, das mit der vorbestimmten Abfrage nach nahegelegenen Lebensmittelläden und Restaurants verknüpft ist. Computergerät 10 kann ferner das grafische Element 128B ausgeben, das mit der vorbestimmten Abfrage nach nahegelegenen Bars verknüpft ist. Zu guter Letzt kann Computergerät 10 das grafische Element 128C ausgeben, das mit der vorbestimmten kürzlich durchgeführten Abfrage verknüpft ist.
  • Zu einem späteren Zeitpunkt, nach Empfangen einer folgenden Textnachricht von dem Benutzer des zweiten Computergeräts, kann Computergerät 10 erneut die Anwendung zur Ausgabe der grafischen Benutzeroberfläche 114C nutzen. Im Beispiel von 4B beinhaltet die grafische Benutzeroberfläche 114C einen Ausgabebereich 118B, eine Suchtaste 116 und eine grafische Tastatur 119A. Ausgabebereich 118B kann die erste Textnachricht, die von einem Benutzer von Computergerät 10 an den Benutzer des zweiten Computergeräts gesendet wurde, sowie die folgende Textnachricht vom Benutzer des zweiten Computergeräts beinhalten, die „Tatsächlich habe ich schon gegessen. Wie wär's mit Kino?“ lautet.
  • Irgendwann nach Empfangen der folgenden Textnachricht vom Benutzer des zweiten Computergeräts kann Computergerät 10 einen anderen Hinweis auf eine Benutzereingabe empfangen, über die Suchtaste 116 ausgewählt und so die Anwendungserweiterung in Computergerät 10 aktiviert wird. Als Reaktion auf Empfangen des Hinweises auf eine Benutzereingabe kann Computergerät 10 die Anwendungserweiterung zur Ausgabe der grafischen Benutzeroberfläche 114D verwenden. Die grafische Benutzeroberfläche 114D kann einen Ausgabebereich 118B, eine Suchtaste 116 und eine Suchoberfläche 119C beinhalten. In dem Beispiel von 4B beinhaltet die Suchoberfläche 119C ferner eine benutzerdefinierte Suchleiste 126 und grafische Elemente 128D-128F.
  • Die Anwendungserweiterung von Computergerät 10 kann eine aktualisierte Teilgruppe von einer oder mehreren Suchabfragen aus einem vorbestimmten Satz von zwei oder mehr Suchabfragen basierend auf mit dem Computergerät 10 verknüpften aktualisierten Kontextinformationen bestimmen. Nach Empfangen der ausdrücklichen Erlaubnis dazu kann die Anwendungserweiterung die von Computergerät 10 gesendete Nachricht, in der das Wert „Abendessen“ erwähnt wird, und die vom Benutzer des zweiten Computergeräts empfangene Nachricht mit der Absage, Abendessen zu gehen, und dem Vorschlag, stattdessen ins Kino zu gehen, analysieren. Die Anwendungserweiterung kann bestimmen, dass die Benutzer versuchen, Pläne für den Abend zu schmieden. Als solches und in Übereinstimmung der hierin beschriebenen Techniken kann die Anwendungserweiterung bestimmen, dass die aktualisierte Teilgruppe von einer oder mehreren Abfragen eine Abfrage nach aktuellen Filmen, die in nahegelegenen Kinos laufen, eine Abfrage nach nahegelegenen Bars und eine Abfrage nach nahegelegenen Lebensmittelläden und Restaurants beinhaltet.
  • Computergerät 10 kann grafische Elemente 128D-128F basierend auf der vorbestimmten Teilgruppe von einer oder mehreren Suchabfragen ausgeben. Computergerät 10 kann beispielsweise das grafische Element 128D ausgeben, das mit der vorbestimmten Abfrage nach aktuellen Filmen, die aktuell in nahegelegenen Kinos laufen, verknüpft ist. Computergerät 10 kann ferner das grafische Element 128E ausgeben, das mit der vorbestimmten Abfrage nach nahegelegenen Bars verknüpft ist. Zu guter Letzt kann Computergerät 10 das grafische Element 128D ausgeben, das mit der vorbestimmten Abfrage nach nahegelegenen Lebensmittelläden und Restaurants verknüpft ist.
  • Nach Ausgeben der grafischen Elemente 128D-128F kann Computergerät 10 einen Hinweis auf eine Benutzereingabe empfangen, über die das grafische Element 128D ausgewählt wird, das mit der Abfrage nach aktuellen Filmen verknüpft ist, die in nahegelegenen Kinos laufen. Nach Empfangen der Auswahl kann Computergerät 10 die Suchabfrage nach aktuellen Filmen, die in nahegelegenen Kinos laufen, ausführen und einen Satz von Suchergebnissen aus dem Internet erhalten. Die Suchergebnisse können vier verschiedene Filme beinhalten, die in Kinos in geografischer Nähe zu Computergerät 10 laufen. Computergerät 10 kann die grafische Benutzeroberfläche 114E ausgeben, die vier grafische Hinweise 130A-130D auf die vier entsprechenden Filme in den Suchergebnissen beinhaltet.
  • In dem Beispiel von 4C kann sich eine Anzeige von Computergerät 10 in einem Hochformat-Anzeigemodus befinden (d. h. die vertikale Länge der Anzeige ist größer als die horizontale Länge der Anzeige). Als solches kann Computergerät 10 die grafischen Hinweise 130A-130D in einer vertikalen Ausrichtung ausgeben. In anderen Beispielen kann sich die Anzeige von Computergerät 10 in einem Querformat-Anzeigemodus befinden (d. h. die horizontale Länge der Anzeige ist größer als die vertikale Länge der Anzeige). In diesen Beispielen kann Computergerät 10 die grafischen Hinweise 130A-130D in einer horizontalen Ausrichtung ausgeben.
  • In einigen Instanzen kann das Computergerät 10 einen Hinweis auf eine Benutzereingabe empfangen, über die das mit dem grafischen Hinweis 130B verknüpfte Suchergebnis ausgewählt wird. Als Reaktion auf Empfangen der Auswahl kann Computergerät 10 eine Nachricht an das zweite Computergerät senden, die das mit dem grafischen Hinweis 130B verknüpfte Suchergebnis beinhaltet. Auf diese Weise können Techniken aus dieser Offenbarung die Zeit und die Anzahl von Benutzereingaben reduzieren, die nötig sind, um relevante Suchergebnisse zu erhalten und zu verteilen, was die Benutzererfahrung vereinfachen und den Stromverbrauch von Computergerät 10 verringern kann.
  • Als Reaktion auf Senden der Nachricht an das zweite Computergerät gibt Computergerät 10 die grafische Benutzeroberfläche 114F aus. Im Beispiel von 4C beinhaltet Benutzeroberfläche 114F einen Ausgabebereich 118C, eine Suchtaste 116 und eine grafische Tastatur 119A. Ausgabebereich 118C kann eine nachfolgende Textnachricht, die von dem Benutzer des zweiten Computergeräts an den Benutzer von Computergerät 10 gesendet wurde, sowie die Nachricht beinhalten, die vom Benutzer von Computergerät 10 gesendet wurde und den grafischen Hinweis 130B beinhaltet, der mit dem ausgewählten Suchergebnis von der grafischen Benutzeroberfläche 114E verknüpft ist.
  • 5 ist ein Flussdiagramm, das exemplarische Operationen von einem Computergerät veranschaulicht, das eine Anwendungserweiterung ausführt, die konfiguriert ist, eine Teilgruppe von vorbestimmten Suchabfragen dynamisch zu bestimmen, gemäß einem oder mehreren Aspekten der vorliegenden Offenbarung. Die Operationen aus 5 können von einem oder mehreren Prozessoren eines Computergeräts, wie z. B. von den Computergeräten 10 aus 1 oder 2, durchgeführt werden. Zum Zwecke der Veranschaulichung ist 5 nachfolgend in Zusammenhang mit Computergerät 10 von 1 beschrieben.
  • In Übereinstimmung mit den Techniken in dieser Offenbarung kann Computergerät 10 Anwendungsmodul 22 ausführen, um anfänglich, zur Anzeige an PSD 12, eine grafische Tastatur (300) auszugeben. In diesen Instanzen kann Anwendungsmodul 22 anfänglich konfiguriert sein, Eingaben zu empfangen, die zur Eingabe von Text führen, der in Nachrichten eingefügt werden soll. Während Computergerät 10 eine grafische Tastatur zur Anzeige an PSD 12 ausgibt, kann Anwendungsmodul 22 Anwendungserweiterung 23 aktivieren, um Anwendungsmodul 22 von einem Texteingabemodus in einen Suchmodus zu versetzen. In einigen Instanzen kann Anwendungsmodul 22 Anwendungserweiterung 23 in Reaktion auf Empfangen eines Hinweises auf eine Benutzereingabe, wie z. B. eine Auswahl einer Suchtaste, aktivieren. In anderen Instanzen kann Anwendungsmodul 22 automatisch Anwendungserweiterung 23 aktivieren, nachdem Anwendungsmodul 22 ausgeführt wurde.
  • In dem Beispiel von 5 kann ein Benutzer von Computergerät 10 Textnachrichten mit einem anderen Benutzer mit einem zweiten Computergerät austauschen. Computergerät 10 kann eine erste Textnachricht an das zweite Computergerät senden, die die Nachricht „Dieses Miami-Spiel ist gerade echt verrückt!“ beinhaltet. Etwas später empfängt Computergerät 10 möglicherweise eine zweite Textnachricht von dem zweiten Computergerät, die die Nachricht „Wie ist der Punktestand?“ beinhaltet.
  • Vor der Erfassung von Kontextinformationen fordert Computergerät 10 einen Benutzer von Computergerät 10 möglicherweise auf, die Erfassung von Kontextinformationen ausdrücklich zu erlauben (310). Die Kontextinformationen können u. a. Kalenderdaten, Nachrichtendaten, eine aktuelle Zeit, einen aktuellen Standort, ein Benutzerkonto von Anwendungsmodul 22, einen Suchverlauf und Nachrichten-Empfängerdaten beinhalten. Vor dem Erfassen von Kontextinformationen, die mit dem Benutzer von Computergerät 10 verknüpft sind, kann Computergerät 10 beispielsweise eine Benutzeroberfläche über PSD 12 präsentieren, die einen Benutzer auffordert, ein Kästchen auszuwählen, eine Schaltfläche anzuklicken, eine Spracheingabe anzugeben oder anderweitig eine spezifische Eingabe auf der Benutzeroberfläche bereitzustellen, die von Computergerät 10 als eindeutige, bestätigende Erlaubnis dafür interpretiert wird, dass Anwendungserweiterung 23 persönliche Informationen des Benutzers und die Kontextinformationen erfassen und nutzen darf. An diesem Punkt kann Computergerät 10 fortfahren, den Rest der hierin beschriebenen Techniken auszuführen. Nachdem Computergerät 10 zum Beispiel eine Benutzereingabe empfängt, die angibt, dass der Benutzer das Erfassen der Kontextinformationen über den Benutzer und von Geräteinformationen erlaubt, die Computergerät 10 oder eine benachbarte Umgebung von Computergerät 10 beschreiben, kann Computergerät 10 mit dem Erfassen der Kontextinformationen fortfahren.
  • Als Reaktion auf das Aktivieren durch Anwendungsmodul 22 und nach dem Empfangen der ausdrücklichen Erlaubnis dazu kann Anwendungserweiterung 23 basierend auf mit Computergerät 10 verknüpften Kontextinformationen eine Teilgruppe von einer oder mehreren Suchabfragen aus einem vorbestimmten Satz von zwei oder mehr Suchabfragen bestimmen (320). Der vorbestimmte Satz an Suchabfragen kann irgendwelche vorgeladenen oder vom Benutzer erstellten Suchabfragen beinhalten, die im Speicher auf Computergerät 10 gespeichert sind. Die Suchabfragen können eine kürzlich durchgeführte Suchabfrage, eine Abfrage nach nahegelegenen Lebensmittelläden und Restaurants, eine allgemeine Abfrage, was sich in der Nähe des aktuellen Standorts von Computergerät 10 befindet, eine Abfrage nach nahegelegenen Unterhaltungsangeboten, eine Abfrage nach nahegelegenen Aktivitätsangeboten, ein Abfrage nach aktuellen Trendthemen auf einer Social Media-Plattform, eine Abfrage nach kürzlich aufgenommenen Videos, eine Abfrage nach nahegelegenen Bars, eine Abfrage nach dem aktuellen Wetter, eine Abfrage nach aktuellen Kinofilmen, die in nahegelegenen Kinos gezeigt werden, eine Abfrage nach aktuellen Ergebnissen von Sportveranstaltungen oder jede andere vom Benutzer oder anderweitig erstellte Abfrage beinhalten, die relevant für einen Benutzer in einer Textnachrichtenkonversation sein kann. Anwendungserweiterung 23 kann eine oder mehrere vorbestimmte Suchabfragen basierend auf den zuvor erfassten Kontextinformationen auswählen, um eine Teilgruppe von einer oder mehreren Suchabfragen zu erzeugen.
  • In dem Beispiel von 5 kann Anwendungserweiterung 23 die Nachrichtendaten der Textnachrichten analysieren, die zuvor zwischen Computergerät 10 und dem zweiten Computergerät ausgetauscht wurden, um die Teilgruppe von Suchabfragen zu bestimmen. Anwendungserweiterung 23 kann bestimmen, dass beide Textnachrichten, die zwischen Computergerät 10 und dem zweiten Computergerät ausgetauscht wurden, Kommentare bezüglich einer Sportveranstaltung mit einem Team aus Miami beinhalten, einschließlich einer Frage vom zweiten Computergerät bezüglich des aktuellen Punktestands der Sportveranstaltung. Als solches kann eine der ausgewählten Suchabfragen aus dem vorbestimmten Satz eine Abfrage nach den aktuellen Punkteständen von Sportveranstaltungen sein, wobei die Top-Ergebnisse Punktestände für die Miami-Sportveranstaltung beinhalten. Anwendungserweiterung 23 kann ferner bestimmen, dass eine der vom Benutzer gesendeten Textnachrichten die Wörter „Spiel ist verrückt“ beinhalten. Als solches kann eine andere ausgewählte Suchabfrage aus dem vorbestimmten Satz eine Abfrage nach kürzlich aufgenommenen Videos sein, einschließlich des Videos von der Miami-Sportveranstaltung.
  • Als Reaktion auf das Bestimmen der Teilgruppe von Suchabfragen durch Anwendungserweiterung 23 kann Anwendungserweiterung 23 über UI-Modul 20, zur Anzeige an PSD 12, ein entsprechendes grafisches Element, das jeweils mit einer Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist, anstelle von mindestens einem Teil der grafischen Tastatur ausgeben (330). In dem Beispiel von 5 hat Anwendungserweiterung 23 bestimmt, dass die Teilgruppe von Suchabfragen aus einer Abfrage nach den aktuellen Punkteständen von Sportveranstaltungen und einer Abfrage nach kürzlich aufgenommenen Videos besteht, einschließlich Videos von der Miami-Sportveranstaltung. Anwendungserweiterung 23 kann eine grafische Oberfläche auszugeben, die die grafische Tastatur durch eine Suchoberfläche ersetzt, die die mit den vorbestimmten Suchabfragen verknüpften grafischen Elemente beinhalten kann.
  • Computergerät 10 kann einen Hinweis auf eine Benutzereingabe empfangen, über die ein entsprechendes grafisches Element ausgewählt wird, das mit einer bestimmten Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist (340). Computergerät 10 kann eine Suche basierend auf der bestimmten Suchabfrage (350) ausführen und, zur Anzeige an PSD 12, einen grafischen Hinweis auf ein oder mehrere Suchergebnisse, die von der ausgeführten Suche bestimmt werden, anstelle von mindestens dem Teil der grafischen Tastatur ausgeben (360). In einigen Instanzen kann Anwendungserweiterung 23 von Computergerät 10 die Suche ausführen. In anderen Instanzen kann eine andere Suchanwendung letztendlich die Suche ausführen, wie zum Beispiel Anwendungsmodul 22, eine auf Computergerät 10 ausgeführte Suchanwendung oder eine auf einem entfernten Computergerät (z. B. einem Server) ausgeführte Suchanwendung, auf die Computergerät 10 (z. B. über eine Netzwerkverbindung) zugreifen kann.
  • Anwendungserweiterung 23 kann beispielsweise einen Hinweis auf eine Benutzereingabe empfangen, über die das grafische Element ausgewählt wird, das mit der Abfrage nach kürzlich aufgenommenen Videos verknüpft ist, einschließlich Videos von der Miami-Sportveranstaltung. Als Reaktion auf das Empfangen der Auswahl kann Anwendungserweiterung 23 die Suchabfrage nach kürzlich aufgenommenen Videos von der Miami-Sportveranstaltung über eine Websuche ausführen. Bei Ausführen der Suchabfrage kann Anwendungserweiterung 22 ein oder mehrere Videos der Miami-Sportveranstaltung aus dem Internet empfangen. Die Suchergebnisse könnten eine Webseite mit einem Video oder eine grafische Karte mit dem Video beinhalten. Als Reaktion auf Empfangen dieser Suchergebnisse kann Anwendungserweiterung 23 UI-Modul 20 verwenden, um einen entsprechenden grafischen Hinweis auf jedes des einen oder der mehreren Suchergebnisse zur Anzeige an PSD 12 und zwar anstatt der grafischen Tastatur und der Suchoberfläche auszugeben.
  • Beispiel 1. Verfahren, umfassend: Ausgeben, durch eine auf einem Computergerät ausgeführte Anwendung, zur Anzeige, einer grafischen Tastatur, die eine Vielzahl von Tasten umfasst; Bestimmen, durch eine Anwendungserweiterung der Anwendung, basierend auf mit dem Computergerät verknüpften Kontextinformationen, einer Teilgruppe von einer oder mehreren Suchabfragen aus einem vorbestimmten Satz von zwei oder mehr Suchabfragen; Ausgeben, durch die Anwendungserweiterung, zur Anzeige anstatt von mindestens einem Teil der grafischen Tastatur, von einem entsprechenden grafischen Element, das mit der jeweiligen Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist; Empfangen, durch die Anwendungserweiterung, eines Hinweises auf eine Benutzereingabe, über die das entsprechende grafische Element ausgewählt wird, das mit einer bestimmten Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist; Ausführen, basierend auf der bestimmten Abfrage, einer Suche; und Ausgeben, durch die Anwendungserweiterung, zur Anzeige anstatt von mindestens einem Teil der grafischen Tastatur, eines grafischen Hinweises auf ein oder mehrere Suchergebnisse, die von der Suche bestimmt werden.
  • Beispiel 2. Verfahren nach Beispiel 1, wobei Bestimmen der Teilgruppe von der einen oder den mehreren Suchabfragen umfasst: Erzeugen, durch die Anwendungserweiterung und basierend auf den Kontextinformationen, eines entsprechenden Relevanzwerts für jede Suchabfrage im vorbestimmten Satz von einer oder mehreren Suchabfragen, wobei bestimmt wird, dass die Teilgruppe von einer oder mehreren Suchabfragen aus einer oder mehreren Suchabfragen in dem vorbestimmten Satz von zwei oder mehr Suchabfragen besteht, die die höchsten entsprechenden Relevanzwerte haben.
  • Beispiel 3. Verfahren nach Beispiel 2, wobei Ausgeben der entsprechenden grafischen Elemente umfasst: Bestimmen, durch die Anwendungserweiterung, basierend auf dem entsprechenden Relevanzwert für jede Suchabfrage in der Teilgruppe von einer oder mehreren Suchabfragen, einer Reihenfolge für die eine oder die mehreren Suchabfragen in der Teilgruppe von einer oder mehreren Suchabfragen; und Ausgeben, durch die Anwendungserweiterung, zur Anzeige anstelle von mindestens dem Teil der grafischen Tastatur und in Übereinstimmung mit der Reihenfolge, des entsprechenden grafischen Elements, das mit der jeweiligen Suchabfrage aus der Teilgruppe von der einen oder den mehreren Suchabfragen verknüpft ist.
  • Beispiel 4. Verfahren nach einem der Beispiele 1-3, wobei die Kontextinformationen eine oder mehrere der Kalenderinformationen, Nachrichtendaten, eine aktuelle Zeit, einen aktuellen Standort, einen Suchverlauf verknüpft mit einem Benutzer des Computergeräts, ein Benutzerkonto verknüpft mit der Anwendung, einen Crowdsourcing-Suchverlauf verknüpft mit Benutzern von anderen Computergeräten und Nachrichtenempfängerdaten umfassen.
  • Beispiel 5. Verfahren nach Beispiel 4, wobei die Kontextinformationen den Suchverlauf umfassen, der mit dem Benutzer des Computergeräts verknüpft ist, das Verfahren ferner umfassend: als Reaktion auf Empfangen einer Benutzereingabe, über die das entsprechende grafische Element ausgewählt wird, das mit der bestimmten Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist, Aktualisieren des Suchverlaufs basierend auf der Auswahl der bestimmten Suchabfrage.
  • Beispiel 6. Verfahren nach irgendeinem der Beispiele 1-5, wobei die Anwendungserweiterung ein Maschinenlernsystem umfasst und der Schritt des Bestimmens der Teilgruppe von einer oder mehreren Suchabfragen ferner Folgendes umfasst: Bereitstellen der Kontextinformationen für das Maschinenlernsystem als Eingabe und als Reaktion darauf Ausgeben, durch das Maschinenlernsystem, der Teilgruppe von einer oder mehreren Suchabfragen.
  • Beispiel 7. Verfahren nach irgendeinem der Beispiele 1-6, des Weiteren umfassend: Herunterladen, durch das Computergerät, von einer Anwendungserweiterungs-Verteilungsplattform, der Anwendungserweiterung; und vor Bestimmen der Teilgruppe von einer oder mehreren Suchabfragen Installieren, durch die Anwendung, der Anwendungserweiterung.
  • Beispiel 8. Verfahren nach irgendeinem der Beispiele 1-7, wobei Ausgeben des grafischen Hinweises auf ein oder mehrere Suchergebnisse ferner Folgendes umfasst: Bestimmen, durch das Computergerät, ob sich das Computergerät in einem Hochformat-Anzeigemodus oder einem Querformat-Anzeigemodus befindet; wenn sich das Computergerät im Hochformat-Anzeigemodus befindet, Ausgeben, durch die Anwendungserweiterung, zur Anzeige anstelle mindestens des Teils der grafischen Tastatur, des grafischen Hinweises auf ein oder mehrere Suchergebnisse, die von der Suche bestimmt werden, in einer vertikalen Ausrichtung; und, wenn sich das Computergerät im Querformat-Anzeigemodus befindet, Ausgeben, durch die Anwendungserweiterung, zur Anzeige anstelle mindestens des Teils der grafischen Tastatur, des grafischen Hinweises auf ein oder mehrere Suchergebnisse, die von der Suche bestimmt werden, in einer horizontalen Ausrichtung.
  • Beispiel 9. Verfahren nach irgendeinem der Beispiele 1-8, wobei jedes entsprechende grafische Element, das mit jeweils einer Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist, eine eindeutige visuelle Eigenschaft hat, die indikativ für die entsprechende Suchabfrage ist.
  • Beispiel 10. Verfahren nach irgendeinem der Beispiele 1-9, des Weiteren umfassend: Empfangen, durch das Computergerät, eines Hinweises auf eine zweite Benutzereingabe, über die das entsprechende grafische Element ausgewählt wird, das mit einem bestimmten Suchergebnis aus dem einen oder den mehreren Suchergebnissen verknüpft ist; und Senden, durch das Computergerät, einer Nachricht, die das bestimmte Suchergebnis beinhaltet, an ein Empfänger-Clientgerät.
  • Beispiel 11. Verfahren nach irgendeinem der Beispiele 1-10, wobei Ausführen der Suche das Ausführen, basierend auf der bestimmten Suchabfrage und durch eine der Anwendungserweiterungen oder eine Suchanwendung, der Suche umfasst, wobei das eine oder die mehreren Suchergebnisse aus einem der Speicher des Computergeräts oder von einem Servergerät abgerufen werden.
  • Beispiel 12. Mobiles Gerät, umfassend: eine präsenzempfindliche Anzeigekomponente; mindestens einen Prozessor; und einen Speicher, der mit einer Anwendung verknüpfte Anweisungen speichert, die bei Ausführung den mindestens einen Prozessor veranlassen: zur Anzeige an der präsenzempfindlichen Anzeigekomponente eine grafische Tastatur, die eine Vielzahl von Tasten umfasst, auszugeben; durch eine Anwendungserweiterung der Anwendung, basierend auf mit dem Computergerät verknüpften Kontextinformationen, eine Teilgruppe von einer oder mehreren Suchabfragen aus einem vorbestimmten Satz von zwei oder mehr Suchabfragen zu bestimmen; durch die Anwendungserweiterung, zur Anzeige an der präsenzempfindlichen Anzeigekomponente anstatt von mindestens einem Teil der grafischen Tastatur, ein entsprechendes grafisches Element auszugeben, das mit der jeweiligen Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist; durch die Anwendungserweiterung an der präsenzempfindlichen Anzeigekomponente einen Hinweis auf eine Benutzereingabe zu empfangen, über die das entsprechende grafische Element ausgewählt wird, das mit einer bestimmten Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist; basierend auf der bestimmten Suchabfrage eine Suche auszuführen; und durch die Anwendungserweiterung, zur Anzeige an der präsenzempfindlichen Anzeigekomponente anstatt von mindestens einem Teil der grafischen Tastatur, einen grafischen Hinweis auf ein oder mehrere Suchergebnisse auszugeben, die von der Suche bestimmt werden.
  • Beispiel 13. Mobiles Gerät nach Beispiel 12, wobei die Anweisungen, die den mindestens einen Prozess veranlassen, die Teilgruppe von der einen oder den mehreren Suchabfragen zu bestimmen, Anweisungen umfassen, die bei Ausführung den mindestens einen Prozessor veranlassen: durch die Anwendungserweiterung und basierend auf den Kontextinformationen einen entsprechenden Relevanzwert für jede Suchabfrage in dem vorbestimmten Satz von einer oder mehreren Suchabfragen zu erzeugen, wobei bestimmt wird, dass die Teilgruppe von einer oder mehreren Suchabfragen aus einer oder mehreren Suchabfragen in dem vorbestimmten Satz von zwei oder mehr Suchabfragen besteht, die die höchsten entsprechenden Relevanzwerte haben.
  • Beispiel 14. Mobiles Gerät nach Beispiel 13, wobei die Anweisungen, die den mindestens einen Prozess veranlassen, die entsprechenden grafischen Elemente auszugeben, Anweisungen umfasst, die bei Ausführung den mindestens einen Prozessor veranlassen: durch die Anwendungserweiterung, basierend auf dem entsprechenden Relevanzwert für jede Suchabfrage in der Teilgruppe von einer oder mehreren Suchabfragen, eine Reihenfolge für die eine oder die mehreren Suchabfragen in der Teilgruppe von einer oder mehreren Suchabfragen zu bestimmen; und durch die Anwendungserweiterung, zur Anzeige anstelle von mindestens dem Teil der grafischen Tastatur und in Übereinstimmung mit der Reihenfolge, das entsprechende grafische Element auszugeben, das mit der jeweiligen Suchabfrage aus der Teilgruppe von der einen oder den mehreren Suchabfragen verknüpft ist.
  • Beispiel 15. Mobiles Gerät nach irgendeinem der Beispiele 12-14, wobei die Anwendungserweiterung ein Maschinenlernsystem umfasst, das so angepasst ist, dass es die Kontextinformationen als Eingabe empfängt und als Reaktion darauf die Teilgruppe von einer oder mehreren Suchabfragen ausgibt.
  • Beispiel 16. Mobiles Gerät nach irgendeinem der Beispiele 12-15, wobei die Anweisungen bei Ausführung des Weiteren den mindestens einen Prozessor veranlassen: durch das Computergerät, von einer Anwendungserweiterungs-Verteilungsplattform, die Anwendungserweiterung herunterzuladen; und vor Bestimmen der Teilgruppe von einer oder mehreren Suchabfragen, durch die Anwendung, die Anwendungserweiterung zu installieren.
  • Beispiel 17. Mobiles Gerät nach irgendeinem der Beispiele 12-16, wobei die Anweisungen, die den mindestens einen Prozess veranlassen, den grafischen Hinweis auf ein oder mehrere Suchergebnisse auszugeben, ferner Anweisungen umfassen, die bei Ausführung den mindestens einen Prozessor veranlassen: durch das Computergerät zu bestimmen, ob sich das Computergerät in einem Hochformat-Anzeigemodus oder einem Querformat-Anzeigemodus befindet; wenn sich das Computergerät im Hochformat-Anzeigemodus befindet, durch die Anwendungserweiterung, zur Anzeige anstelle mindestens des Teils der grafischen Tastatur, einen grafischen Hinweis auf ein oder mehrere Suchergebnisse, die von der Suche bestimmt werden, in einer vertikalen Ausrichtung auszugeben; und, wenn sich das Computergerät im Querformat-Anzeigemodus befindet, durch die Anwendungserweiterung, zur Anzeige anstelle mindestens des Teils der grafischen Tastatur, den grafischen Hinweis auf ein oder mehrere Suchergebnisse, die von der Suche bestimmt werden, in einer horizontalen Ausrichtung auszugeben.
  • Beispiel 18. Mobiles Gerät nach irgendeinem der Beispiele 12-17, wobei jedes entsprechende grafische Element, das mit jeweils einer Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist, eine eindeutige visuelle Eigenschaft hat, die indikativ für die entsprechende Suchabfrage ist.
  • Beispiel 19. Mobiles Gerät nach irgendeinem der Beispiele 12-18, wobei die Anweisungen bei Ausführung des Weiteren den mindestens einen Prozessor veranlassen: durch das Computergerät einen Hinweis auf eine zweite Benutzereingabe zu empfangen, über die das entsprechende grafische Element ausgewählt wird, das mit einem bestimmten Suchergebnis aus dem einen oder den mehreren Suchergebnissen verknüpft ist; und durch das Computergerät eine Nachricht zu senden, die das bestimmte Suchergebnis beinhaltet, an ein Empfänger-Clientgerät.
  • Beispiel 20. Nicht flüchtiges, computerlesbares Speichermedium, das mit einer Anwendung verknüpfte Anweisungen speichert, die bei Ausführung mindestens einen Prozessor eines Computergeräts veranlassen: durch eine auf einem Computergerät ausgeführte Anwendung, zur Anzeige, eine grafische Tastatur auszugeben, die eine Vielzahl von Tasten umfasst; durch eine Anwendungserweiterung der Anwendung, basierend auf mit dem Computergerät verknüpften Kontextinformationen, eine Teilgruppe von einer oder mehreren Suchabfragen aus einem vorbestimmten Satz von zwei oder mehr Suchabfragen zu bestimmen; durch die Anwendungserweiterung, zur Anzeige anstatt von mindestens einem Teil der grafischen Tastatur, ein entsprechendes grafisches Element auszugeben, das mit der jeweiligen Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist; durch die Anwendungserweiterung einen Hinweis auf eine Benutzereingabe zu empfangen, über die das entsprechende grafische Element ausgewählt wird, das mit einer bestimmten Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist; basierend auf der bestimmten Abfrage eine Suche auszuführen; und durch die Anwendungserweiterung, zur Anzeige anstatt von mindestens einem Teil der grafischen Tastatur, einen grafischen Hinweis auf ein oder mehrere Suchergebnisse auszugeben, die von der Suche bestimmt werden.
  • Beispiel 21. Nicht flüchtiges, computerlesbares Speichermedium von Beispiel 20, wobei die Anweisungen, die den mindestens einen Prozess veranlassen, die Teilgruppe von der einen oder den mehreren Suchabfragen zu bestimmen, Anweisungen umfassen, die bei Ausführung den mindestens einen Prozessor veranlassen: durch die Anwendungserweiterung und basierend auf den Kontextinformationen einen entsprechenden Relevanzwert für jede Suchabfrage in dem vorbestimmten Satz von einer oder mehreren Suchabfragen zu erzeugen, wobei bestimmt wird, dass die Teilgruppe von einer oder mehreren Suchabfragen aus einer oder mehreren Suchabfragen in dem vorbestimmten Satz von zwei oder mehr Suchabfragen besteht, die die höchsten entsprechenden Relevanzwerte haben.
  • Beispiel 22. Nicht flüchtiges, computerlesbares Speichermedium von Beispiel 21, wobei die Anweisungen, die den mindestens einen Prozess veranlassen, die entsprechenden grafischen Elemente auszugeben, Anweisungen umfasst, die bei Ausführung den mindestens einen Prozessor veranlassen: durch die Anwendungserweiterung, basierend auf dem entsprechenden Relevanzwert für jede Suchabfrage in der Teilgruppe von einer oder mehreren Suchabfragen, eine Reihenfolge für die eine oder die mehreren Suchabfragen in der Teilgruppe von einer oder mehreren Suchabfragen zu bestimmen; und durch die Anwendungserweiterung, zur Anzeige anstelle von mindestens dem Teil der grafischen Tastatur und in Übereinstimmung mit der Reihenfolge, das entsprechende grafische Element auszugeben, das mit der jeweiligen Suchabfrage aus der Teilgruppe von der einen oder den mehreren Suchabfragen verknüpft ist.
  • Beispiel 23. System, das Mittel zum Durchführen von irgendeinem der Verfahren der Beispiele 1-11 umfasst. Das System kann das mobile Gerät von irgendeinem der Beispiele 12-19 und/oder das nicht flüchtige, computerlesbare Speichermedium aus irgendeinem der Beispiele 20-22 umfassen.
  • Beispiel 24. Computergerät, das Mittel zum Durchführen von irgendeinem der Verfahren der Beispiele 1-11 umfasst.
  • Beispiel 23. Computerlesbares Speichermedium, das Anweisungen umfasst, die, wenn sie durch mindestens einen Prozessor von einem Computergerät ausgeführt werden, den mindestens einen Prozessor veranlassen, eines der Verfahren der Beispiele 1-10 auszuführen.
  • In einem oder mehreren Beispielen können die beschriebenen Funktionen in Hardware, Software, Firmware oder einer beliebigen Kombination derselben implementiert sein. Wenn sie in Software implementiert sind, können die Funktionen als eine oder mehrere Anweisungen oder Codes auf einem computerlesbaren Medium gespeichert oder über dieses übertragen und von einer hardwarebasierten Verarbeitungseinheit ausgeführt werden. Computerlesbare Medien können computerlesbare Speichermedien beinhalten, die physischen Medien, wie z. B. Datenspeichermedien, oder Kommunikationsmedien, darunter auch Medien entsprechen, die die Übertragung eines Computerprogramms von einem Standort zum anderen, z. B. gemäß einem Kommunikationsprotokoll, erleichtern. Auf diese Weise können computerlesbare Medien im Allgemeinen physischen computerlesbaren (1) Speichermedien, die nicht flüchtig sind, oder (2) einem Kommunikationsmedium entsprechen, wie beispielsweise einem Signal oder eine Trägerwelle. Datenspeichermedien können beliebige verfügbare Medien sein, auf die von einem oder mehreren Computern oder einem oder mehreren Prozessoren zugegriffen werden kann, um Anweisungen, Code und/oder Datenstrukturen zur Implementierung der in dieser Offenbarung beschriebenen Techniken abzurufen. Ein Computerprogrammprodukt kann ein computerlesbares Medium beinhalten.
  • Beispielsweise und nicht beschränkend können derartige computerlesbare Speichermedien RAM-, ROM-, EEPROM-, CD-ROM- oder andere optische Plattenspeicher, Magnetplattenspeicher oder andere magnetische Speichergeräte, Flash-Speicher oder ein beliebiges anderes Medium umfassen, das verwendet werden kann, um den gewünschten Programmcode in Form von Anweisungen oder Datenstrukturen zu speichern und auf die von einem Computer zugegriffen werden kann. Zudem wird jede Verbindung als ein computerlesbares Medium bezeichnet. Wenn beispielsweise Anweisungen von einer Webseite, einem Server oder einer anderen entfernten Quelle unter Verwendung eines Koaxialkabels, eines Glasfaserkabels, eines Twisted-Pair-Kabels, einer digitalen Teilnehmerleitung (DSL) oder drahtloser Technologien, wie beispielsweise Infrarot, Radio und Mikrowelle übertragen werden, sind Koaxialkabel, Glasfaserkabel, Twisted-Pair-Kabel, DSL oder drahtlose Technologien, wie beispielsweise Infrarot, Radio und Mikrowelle in der Definition von Medium mit eingeschlossen. Es sollte jedoch klar sein, dass computerlesbare Speichermedien und Datenspeichermedien keine Verbindungen, Trägerwellen, Signale oder andere physische Medien beinhalten, sondern stattdessen auf nicht flüchtige, physische Speichermedien ausgerichtet sind. Festplatten und Disketten, wie sie hierin verwendet werden, beinhalten Compact Disc (CD), Laserdisc, optische Disc, Digital Versatile Disc (DVD), Diskette und Blu-ray Disc, wobei Disketten typischerweise Daten magnetisch wiedergeben, während Discs Daten optisch mit Lasern wiedergeben. Kombinationen der vorstehenden sollten ebenfalls in den Umfang von computerlesbaren Medien eingeschlossen sein.
  • Anweisungen können durch einen oder mehrere Prozessoren, wie beispielsweise einen oder mehrere digitale Signalprozessoren (DSPs), Universalmikroprozessoren, anwendungsorientierte integrierte Schaltungen (ASICs), feldprogrammierbare Gate-Arrays (FPGAs) oder beliebige andere gleichwertige integrierte oder diskrete Logikschaltungen ausgeführt werden. Dementsprechend kann sich der Begriff „Prozessor“, wie er hierin verwendet wird, auf eine beliebige der vorgenannten Strukturen oder jede andere Struktur beziehen, die für die Implementierung der beschriebenen Techniken geeignet ist. Darüber hinaus kann in einigen Aspekten die beschriebene Funktionalität innerhalb dedizierter Hardware- und/oder Softwaremodule bereitgestellt werden. Auch könnten die Techniken vollständig in einer oder mehreren Schaltungen oder Logikelementen implementiert werden.
  • Die Techniken der vorliegenden Offenbarung können in einer breiten Vielfalt von Geräten oder Vorrichtungen implementiert werden, darunter auch in einem drahtlosen Mobilteil, einer integrierten Schaltung (IC) oder einem Satz von ICs (z. B. eines Chipsatzes). In dieser Offenbarung werden verschiedene Komponenten, Module oder Einheiten beschrieben, um funktionelle Aspekte von Geräten zu betonen, die dafür konfiguriert sind, die offenbarten Techniken auszuführen, jedoch nicht notwendigerweise eine Realisierung durch verschiedene Hardware-Einheiten erfordern. Vielmehr können, wie vorstehend beschrieben, verschiedene Einheiten in einer Hardware-Einheit kombiniert oder durch eine Sammlung von interoperativen Hardware-Einheiten, einschließlich eines oder mehrerer Prozessoren, wie vorstehend beschrieben, in Verbindung mit geeigneter Software und/oder Firmware bereitgestellt werden.
  • Verschiedene Beispiele der Offenbarung sind beschrieben worden. Jedwede Kombination der beschriebenen Systeme, Operationen oder Funktionen wird in Betracht gezogen. Diese und andere Beispiele liegen innerhalb des Umfangs der folgenden Ansprüche.

Claims (22)

  1. Computerprogrammprodukt, das Anweisungen beinhaltet, die, wenn sie durch einen oder mehrere Prozessoren ausgeführt werden, den einen oder die mehreren Prozessoren veranlassen, ein computerimplementiertes Verfahren auszuführen, das Verfahren umfassend: Ausgeben, durch eine auf einem Computergerät ausgeführte Anwendung, zur Anzeige, einer grafischen Tastatur, die eine Vielzahl von Tasten umfasst; Bestimmen, durch eine Anwendungserweiterung der Anwendung, basierend auf dem Computergerät zugeordneten Kontextinformationen, einer Teilgruppe von einer oder mehreren Suchabfragen aus einem vordefinierten Satz von zwei oder mehr Suchabfragen; Ausgeben, durch die Anwendungserweiterung, zur Anzeige, eines entsprechenden grafischen Elements, das jeder Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen zugeordnet ist, anstelle zumindest eines Teils der grafischen Tastatur; Empfangen, durch die Anwendungserweiterung, eines Hinweises auf eine Benutzereingabe, über die das entsprechende grafische Element ausgewählt wird, das einer bestimmten Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen zugeordnet ist; Ausführen, basierend auf der bestimmten Suchabfrage, einer Suche; und Ausgeben, durch die Anwendungserweiterung, zur Anzeige, eines grafischen Hinweises auf ein oder mehrere mittels der Suche bestimmte Suchergebnisse anstelle zumindest des Teils der grafischen Tastatur.
  2. Computerprogrammprodukt nach Anspruch 1, wobei Bestimmen der Teilgruppe der einen oder mehreren Suchabfragen Folgendes umfasst: Erzeugen, durch die Anwendungserweiterung und basierend auf den Kontextinformationen, eines entsprechenden Relevanzwerts für jede Suchabfrage des vorbestimmten Satzes von einer oder mehreren Suchabfragen, wobei bestimmt wird, dass die Teilgruppe von einer oder mehreren Suchabfragen aus einer oder mehreren Suchabfragen in dem vorbestimmten Satz von zwei oder mehr Suchabfragen besteht, die die höchsten entsprechenden Relevanzwerte haben.
  3. Computerprogrammprodukt nach Anspruch 2, wobei das Ausgeben der entsprechenden grafischen Elemente Folgendes umfasst: Bestimmen, durch die Anwendungserweiterung, basierend auf dem entsprechenden Relevanzwert für jede Suchabfrage in der Teilgruppe von einer oder mehreren Suchabfragen, einer Reihenfolge für die eine oder die mehreren Suchabfragen in der Teilgruppe von einer oder mehreren Suchabfragen; und Ausgeben, durch die Anwendungserweiterung, zur Anzeige, des entsprechenden grafischen Elements, das der jeweiligen Suchabfrage aus der Teilgruppe von der einen oder den mehreren Suchabfragen zugeordnet ist, anstelle zumindest des Teils der grafischen Tastatur und in Übereinstimmung mit der Reihenfolge.
  4. Computerprogrammprodukt nach Anspruch 1, wobei die Kontextinformationen eine oder mehrere der Kalenderinformationen, Nachrichtendaten, eine aktuelle Zeit, einen aktuellen Standort, einen Suchverlauf verknüpft mit einem Benutzer des Computergeräts, ein Benutzerkonto verknüpft mit der Anwendung, einen Crowdsourcing-Suchverlauf verknüpft mit Benutzern von anderen Computergeräten und Nachrichtenempfängerdaten umfassen.
  5. Computerprogrammprodukt nach Anspruch 4, wobei die Kontextinformationen den Suchverlauf umfassen, der mit dem Benutzer des Computergeräts verknüpft ist, das Verfahren ferner umfassend: als Reaktion auf Empfangen des Hinweises einer Benutzereingabe, mit der das entsprechende grafische Element ausgewählt wird, das der bestimmten Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen zugeordnet ist, Aktualisieren des Suchverlaufs basierend auf der Auswahl der bestimmten Suchabfrage.
  6. Computerprogrammprodukt nach einem der Ansprüche 1-5, wobei die Anwendungserweiterung ein Maschinenlernsystem umfasst und der Schritt des Bestimmens der Teilgruppe von einer oder mehreren Suchabfragen ferner Folgendes umfasst: Bereitstellen der Kontextinformationen für das Maschinenlernsystem als Eingabe und als Reaktion darauf Ausgeben, durch das Maschinenlernsystem, der Teilgruppe von einer oder mehreren Suchabfragen.
  7. Computerprogrammprodukt nach Anspruch 1, das Verfahren ferner umfassend: Herunterladen, durch das Computergerät, von einer Anwendungserweiterungs-Verteilungsplattform, der Anwendungserweiterung; vor Bestimmen der Teilgruppe von einer oder mehreren Suchabfragen Installieren, durch die Anwendung, der Anwendungserweiterung.
  8. Computerprogrammprodukt nach Anspruch 1, wobei das Ausgeben des grafischen Hinweises auf ein oder mehrere Suchergebnisse ferner Folgendes umfasst: Bestimmen, durch das Computergerät, ob sich das Computergerät in einem Hochformat-Anzeigemodus oder einem Querformat-Anzeigemodus befindet; wenn sich das Computergerät im Hochformat-Anzeigemodus befindet, Ausgeben, durch die Anwendungserweiterung, zur Anzeige, des grafischen Hinweises auf ein oder mehrere Suchergebnisse, die von der Suche bestimmt werden, in einer vertikalen Ausrichtung anstelle zumindest des Teils der grafischen Tastatur; und wenn sich das Computergerät im Querformat-Anzeigemodus befindet, Ausgeben, durch die Anwendungserweiterung, zur Anzeige, des grafischen Hinweises auf ein oder mehrere Suchergebnisse, die von der Suche bestimmt werden, in einer horizontalen Ausrichtung anstelle zumindest des Teils der grafischen Tastatur.
  9. Computerprogrammprodukt nach Anspruch 1, wobei jedes entsprechende grafische Element, das jeweils einer Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen zugeordnet ist, eine eindeutige visuelle Eigenschaft hat, die indikativ für die entsprechende Suchabfrage ist.
  10. Computerprogrammprodukt nach Anspruch 1, das Verfahren ferner umfassend: Empfangen, durch das Computergerät, eines Hinweises auf eine zweite Benutzereingabe, mit der das entsprechende grafische Element ausgewählt wird, das einem bestimmten Suchergebnis aus dem einen oder den mehreren Suchergebnissen zugeordnet ist; und Senden, durch das Computergerät, einer Nachricht, die das bestimmte Suchergebnis beinhaltet, an ein Empfänger-Clientgerät.
  11. Computerprogrammprodukt nach Anspruch 1, wobei das Ausführen der Suche ein Ausführen der Suche basierend auf der bestimmten Suchabfrage und durch eine der Anwendungserweiterungen oder eine Suchanwendung umfasst, wobei das eine oder die mehreren Suchergebnisse aus einem der Speicher des Computergeräts oder von einem Servergerät abgerufen werden.
  12. Mobiles Gerät, umfassend: eine präsenzempfindliche Anzeigekomponente; mindestens einen Prozessor; und einen Speicher, der mit einer Anwendung verknüpfte Anweisungen speichert, die, wenn sie ausgeführt werden, den mindestens einen Prozessor veranlassen: zur Anzeige auf der präsenzempfindlichen Anzeigekomponente eine grafische Tastatur auszugeben, die eine Vielzahl von Tasten umfasst; durch eine Anwendungserweiterung der Anwendung, basierend auf dem Computergerät zugeordneten Kontextinformationen, eine Teilgruppe von einer oder mehreren Suchabfragen aus einem vordefinierten Satz von zwei oder mehr Suchabfragen zu bestimmen; durch die Anwendungserweiterung, zur Anzeige auf der präsenzempfindlichen Anzeigenkomponente anstelle zumindest eines Teils der grafischen Tastatur, ein entsprechendes grafisches Element auszugeben, das der jeweiligen Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen zugeordnet ist; durch die Anwendungserweiterung und auf der präsenzempfindlichen Anzeigenkomponente einen Hinweis auf eine Benutzereingabe zu empfangen, mit der das entsprechende grafische Element ausgewählt wird, das mit einer bestimmten Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen verknüpft ist; basierend auf der bestimmten Suchabfrage eine Suche auszuführen; und durch die Anwendungserweiterung, zur Anzeige auf der präsenzempfindlichen Anzeigenkomponente anstelle zumindest des Teils der grafischen Tastatur, einen grafischen Hinweis auf ein oder mehrere Suchergebnisse auszugeben, die von der Suche bestimmt werden.
  13. Mobiles Gerät nach Anspruch 12, wobei die Anweisungen, die den mindestens einen Prozess veranlassen, die Teilgruppe von der einen oder den mehreren Suchabfragen zu bestimmen, Anweisungen umfassen, die bei Ausführung den mindestens einen Prozessor veranlassen: durch die Anwendungserweiterung und basierend auf den Kontextinformationen einen entsprechenden Relevanzwert für jede Suchabfrage im vorbestimmten Satz von einer oder mehreren Suchabfragen zu erzeugen, wobei bestimmt wird, dass die Teilgruppe von einer oder mehreren Suchabfragen aus einer oder mehreren Suchabfragen in dem vorbestimmten Satz von zwei oder mehr Suchabfragen besteht, die die höchsten entsprechenden Relevanzwerte haben.
  14. Mobiles Gerät nach Anspruch 13, wobei die Anweisungen, die den mindestens einen Prozess veranlassen, die entsprechenden grafischen Elemente auszugeben, Anweisungen umfassen, die bei Ausführung den mindestens einen Prozessor veranlassen, Folgendes zu tun: Bestimmen, durch die Anwendungserweiterung, basierend auf dem entsprechenden Relevanzwert für jede Suchabfrage in der Teilgruppe von einer oder mehreren Suchabfragen, einer Reihenfolge für die eine oder die mehreren Suchabfragen in der Teilgruppe von einer oder mehreren Suchabfragen; und Ausgeben, durch die Anwendungserweiterung, zur Anzeige anstelle zumindest des Teils der grafischen Tastatur und in Übereinstimmung mit der Reihenfolge, des entsprechenden grafischen Elements, das der jeweiligen Suchabfrage aus der Teilgruppe von der einen oder den mehreren Suchabfragen zugeordnet ist.
  15. Mobiles Gerät nach Anspruch 12, wobei die Anwendungserweiterung ein Maschinenlernsystem umfasst, das so angepasst ist, dass es die Kontextinformationen als Eingabe empfängt und als Reaktion die Teilgruppe von einer oder mehreren Suchabfragen ausgibt.
  16. Mobiles Gerät nach Anspruch 12, wobei die Anweisungen, wenn sie ausgeführt werden, den mindestens einen Prozessor ferner veranlassen, Folgendes zu tun: Herunterladen, durch das Computergerät, von einer Anwendungserweiterungs-Verteilungsplattform, der Anwendungserweiterung; vor Bestimmen der Teilgruppe von einer oder mehreren Suchabfragen Installieren, durch die Anwendung, der Anwendungserweiterung.
  17. Mobiles Gerät nach Anspruch 12, wobei die Anweisungen, die den mindestens einen Prozess veranlassen, den grafischen Hinweis auf ein oder mehrere Suchergebnisse auszugeben, ferner Anweisungen umfassen, die bei Ausführung den mindestens einen Prozessor veranlassen, Folgendes zu tun: Bestimmen, durch das Computergerät, ob sich das Computergerät in einem Hochformat-Anzeigemodus oder einem Querformat-Anzeigemodus befindet; wenn sich das Computergerät im Hochformat-Anzeigemodus befindet, Ausgeben, durch die Anwendungserweiterung, zur Anzeige anstelle zumindest des Teils der grafischen Tastatur, des grafischen Hinweises auf ein oder mehrere Suchergebnisse, die von der Suche bestimmt werden, in einer vertikalen Ausrichtung; und wenn sich das Computergerät im Querformat-Anzeigemodus befindet, Ausgeben, durch die Anwendungserweiterung, zur Anzeige anstelle zumindest des Teils der grafischen Tastatur, des grafischen Hinweises auf ein oder mehrere Suchergebnisse, die von der Suche bestimmt werden, in einer horizontalen Ausrichtung.
  18. Mobiles Gerät nach Anspruch 12, wobei jedes entsprechende grafische Element, das jeweils einer Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen zugeordnet ist, eine eindeutige visuelle Eigenschaft hat, die indikativ für die entsprechende Suchabfrage ist.
  19. Mobiles Gerät nach Anspruch 12, wobei die Anweisungen, wenn sie ausgeführt werden, den mindestens einen Prozessor ferner veranlassen, Folgendes zu tun: Empfangen, durch das Computergerät, eines Hinweises auf eine zweite Benutzereingabe, über die das entsprechende grafische Element ausgewählt wird, das einem bestimmten Suchergebnis aus dem einen oder den mehreren Suchergebnissen zugeordnet ist; und Senden, durch das Computergerät, einer Nachricht, die das bestimmte Suchergebnis beinhaltet, an ein Empfänger-Clientgerät.
  20. Nicht flüchtiges computerlesbares Speichermedium, das Anweisungen speichert, die, wenn sie ausgeführt werden, den mindestens einen Prozessor von einem Computergerät veranlassen: zur Anzeige, eine grafische Tastatur auszugeben, die eine Vielzahl von Tasten umfasst; durch eine Anwendungserweiterung der Anwendung, basierend auf dem Computergerät zugeordneten Kontextinformationen, eine Teilgruppe von einer oder mehreren Suchabfragen aus einem vordefinierten Satz von zwei oder mehr Suchabfragen zu bestimmen; durch die Anwendungserweiterung, zur Anzeige, anstelle zumindest eines Teils der grafischen Tastatur, ein entsprechendes grafisches Element auszugeben, das jeder Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen zugeordnet ist; durch die Anwendungserweiterung einen Hinweis auf eine Benutzereingabe zu empfangen, mit der das entsprechende grafische Element ausgewählt wird, das einer bestimmten Suchabfrage aus der Teilgruppe von einer oder mehreren Suchabfragen zugeordnet ist; basierend auf der bestimmten Suchabfrage eine Suche auszuführen; und durch die Anwendungserweiterung, zur Anzeige, anstelle zumindest des Teils der grafischen Tastatur, einen grafischen Hinweis auf ein oder mehrere Suchergebnisse auszugeben, die von der Suche bestimmt werden.
  21. Nicht flüchtiges, computerlesbares Speichermedium nach Anspruch 20, wobei die Anweisungen, die den mindestens einen Prozess veranlassen, die Teilgruppe von der einen oder den mehreren Suchabfragen zu bestimmen, Anweisungen umfassen, die bei Ausführung den mindestens einen Prozessor veranlassen: durch die Anwendungserweiterung und basierend auf den Kontextinformationen einen entsprechenden Relevanzwert für jede Suchabfrage im vorbestimmten Satz von einer oder mehreren Suchabfragen zu erzeugen, wobei bestimmt wird, dass die Teilgruppe von einer oder mehreren Suchabfragen aus einer oder mehreren Suchabfragen in dem vorbestimmten Satz von zwei oder mehr Suchabfragen besteht, die die höchsten entsprechenden Relevanzwerte haben.
  22. Nicht flüchtiges, computerlesbares Speichermedium nach Anspruch 21, wobei die Anweisungen, die den mindestens einen Prozess veranlassen, die entsprechenden grafischen Elemente auszugeben, Anweisungen umfassen, die bei Ausführung den mindestens einen Prozessor veranlassen, Folgendes zu tun: Bestimmen, durch die Anwendungserweiterung, basierend auf dem entsprechenden Relevanzwert für jede Suchabfrage in der Teilgruppe von einer oder mehreren Suchabfragen, einer Reihenfolge für die eine oder die mehreren Suchabfragen in der Teilgruppe von einer oder mehreren Suchabfragen; und Ausgeben, durch die Anwendungserweiterung, zur Anzeige, anstelle zumindest des Teils der grafischen Tastatur und in Übereinstimmung mit der Reihenfolge, des entsprechenden grafischen Elements, das der jeweiligen Suchabfrage aus der Teilgruppe von der einen oder den mehreren Suchabfragen zugeordnet ist.
DE202017106558.8U 2017-01-11 2017-10-27 Anwendungserweiterung zum Erzeugen automatischer Suchabfragen Active DE202017106558U1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/403,822 2017-01-11
US15/403,822 US20180196854A1 (en) 2017-01-11 2017-01-11 Application extension for generating automatic search queries

Publications (1)

Publication Number Publication Date
DE202017106558U1 true DE202017106558U1 (de) 2018-04-13

Family

ID=61074500

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202017106558.8U Active DE202017106558U1 (de) 2017-01-11 2017-10-27 Anwendungserweiterung zum Erzeugen automatischer Suchabfragen

Country Status (4)

Country Link
US (1) US20180196854A1 (de)
EP (1) EP3563264A1 (de)
DE (1) DE202017106558U1 (de)
WO (1) WO2018132152A1 (de)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USD771646S1 (en) * 2014-09-30 2016-11-15 Apple Inc. Display screen or portion thereof with graphical user interface
EP3395018A1 (de) 2015-12-21 2018-10-31 Google LLC Automatische vorschläge für nachrichtenaustausch-threads
US10757043B2 (en) 2015-12-21 2020-08-25 Google Llc Automatic suggestions and other content for messaging applications
US20180018652A1 (en) * 2016-07-18 2018-01-18 Ebay Inc. Messaging transaction application
US10387461B2 (en) 2016-08-16 2019-08-20 Google Llc Techniques for suggesting electronic messages based on user activity and other context
JP6659910B2 (ja) 2016-09-20 2020-03-04 グーグル エルエルシー データへのアクセス許可を要求するボット
US10015124B2 (en) 2016-09-20 2018-07-03 Google Llc Automatic response suggestions based on images received in messaging applications
WO2018057541A1 (en) 2016-09-20 2018-03-29 Google Llc Suggested responses based on message stickers
US10416846B2 (en) 2016-11-12 2019-09-17 Google Llc Determining graphical element(s) for inclusion in an electronic communication
US20180210872A1 (en) * 2017-01-23 2018-07-26 Microsoft Technology Licensing, Llc Input System Having a Communication Model
US11695711B2 (en) * 2017-04-06 2023-07-04 International Business Machines Corporation Adaptive communications display window
US10860854B2 (en) 2017-05-16 2020-12-08 Google Llc Suggested actions for images
USD829223S1 (en) * 2017-06-04 2018-09-25 Apple Inc. Display screen or portion thereof with graphical user interface
US10404636B2 (en) 2017-06-15 2019-09-03 Google Llc Embedded programs and interfaces for chat conversations
US10348658B2 (en) * 2017-06-15 2019-07-09 Google Llc Suggested items for use with embedded applications in chat conversations
US10891526B2 (en) 2017-12-22 2021-01-12 Google Llc Functional image archiving
US11010436B1 (en) 2018-04-20 2021-05-18 Facebook, Inc. Engaging users by personalized composing-content recommendation
US11676220B2 (en) 2018-04-20 2023-06-13 Meta Platforms, Inc. Processing multimodal user input for assistant systems
US11715042B1 (en) 2018-04-20 2023-08-01 Meta Platforms Technologies, Llc Interpretability of deep reinforcement learning models in assistant systems
US11307880B2 (en) 2018-04-20 2022-04-19 Meta Platforms, Inc. Assisting users with personalized and contextual communication content
US11886473B2 (en) 2018-04-20 2024-01-30 Meta Platforms, Inc. Intent identification for agent matching by assistant systems
CN110309338A (zh) * 2018-07-25 2019-10-08 浙江大华技术股份有限公司 一种以图搜图方法及装置
US11635881B2 (en) * 2020-09-22 2023-04-25 Microsoft Technology Licensing, Llc Cross-platform computing skill execution
US11915010B2 (en) 2022-03-28 2024-02-27 Microsoft Technology Licensing, Llc Cross-platform multi-transport remote code activation

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7925716B2 (en) * 2005-12-05 2011-04-12 Yahoo! Inc. Facilitating retrieval of information within a messaging environment
US20100223341A1 (en) * 2009-02-27 2010-09-02 Microsoft Corporation Electronic messaging tailored to user interest
US9685160B2 (en) * 2012-04-16 2017-06-20 Htc Corporation Method for offering suggestion during conversation, electronic device using the same, and non-transitory storage medium
US9930167B2 (en) * 2014-07-07 2018-03-27 Verizon Patent And Licensing Inc. Messaging application with in-application search functionality
US20160034977A1 (en) * 2014-08-01 2016-02-04 Yahoo! Inc. System and method for embedded search within messaging applications

Also Published As

Publication number Publication date
US20180196854A1 (en) 2018-07-12
WO2018132152A1 (en) 2018-07-19
EP3563264A1 (de) 2019-11-06

Similar Documents

Publication Publication Date Title
DE202017106558U1 (de) Anwendungserweiterung zum Erzeugen automatischer Suchabfragen
DE202017104090U1 (de) Grafische Tastaturanwendung mit integrierter Suche
DE202017105673U1 (de) Ikonografische Symbolvorhersagen für eine Konversation
DE202017104110U1 (de) Bildsuchanfragevorhersagen durch eine Tastatur
DE202016008310U1 (de) Vorhersagen von Suchanfragen durch eine Tastatur
DE102017012396B3 (de) Identifikation eines virtuellen Assistenten von nahgelegenenRechenvorrichtungen
DE202017105670U1 (de) Dynamische Erzeugung von angepassten Einführungslernprogrammen für eine Anwendung
DE102014009871B4 (de) Vorhersagendes Weiterleiten von Meldungsdaten
DE102017108636A1 (de) Automatische Erzeugung einer grafischen Benutzeroberfläche aus Benachrichtungsdaten
CN108701138B (zh) 确定与文本相关联的图形元素
DE102014002848B4 (de) Austausch von Zeichenfolgen
CN109190049B (zh) 关键词推荐方法、系统、电子设备和计算机可读介质
DE202017105858U1 (de) Anwendungsprogrammschnittstelle für das Verwalten von Komplikationsdaten
DE202017105672U1 (de) Intelligente Antworten mittels eines geräteinternen Modells
US20150169710A1 (en) Method and apparatus for providing search results
DE202016008209U1 (de) Dynamische Inhaltsverwaltung einer Fahrzeuganzeige
DE102017120732A1 (de) Proaktiver virtueller Assistent
JP2020521376A (ja) イメージデータに少なくとも部分的に基づく、アクションを実行するためのエージェントの決定
DE112016002384T5 (de) Hilfsschicht mit automatisierter Extraktion
DE112016005388T5 (de) Berührungs-Heatmap
KR20170062483A (ko) 대화식 텍스트 미리보기
DE202017105821U1 (de) Dynamisches Erzeugen benutzerspezifischer Gruppen von Anwendungseinstellungen
DE102017125008A1 (de) Benutzerzustandvorhersagen zum präsentieren von informationen
DE112016005358T5 (de) Informations-Ranking basierend auf Eigenschaften einer Berechnungsvorrichtung
CN112783594A (zh) 一种消息显示方法、装置及电子设备

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: MAIKOWSKI & NINNEMANN PATENTANWAELTE PARTNERSC, 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