DE202014004555U1 - Vorrichtung zur Erzeugung von Benutzerschnittstellen aus einer Vorlage - Google Patents

Vorrichtung zur Erzeugung von Benutzerschnittstellen aus einer Vorlage Download PDF

Info

Publication number
DE202014004555U1
DE202014004555U1 DE202014004555.0U DE202014004555U DE202014004555U1 DE 202014004555 U1 DE202014004555 U1 DE 202014004555U1 DE 202014004555 U DE202014004555 U DE 202014004555U DE 202014004555 U1 DE202014004555 U1 DE 202014004555U1
Authority
DE
Germany
Prior art keywords
user interface
application
template
values
party application
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
DE202014004555.0U
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.)
Apple Inc
Original Assignee
Apple Inc
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 Apple Inc filed Critical Apple Inc
Publication of DE202014004555U1 publication Critical patent/DE202014004555U1/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation

Abstract

Nichtflüchtiges, computerlesbares Speichermedium, welches ein oder mehrere Programme speichert, wobei die ein oder mehreren Programme Instruktionen aufweisen, die, wenn sie durch eine elektronische Vorrichtung mit einem oder mehreren Prozessoren und Speicher ausgeführt werden, die Vorrichtung veranlassen, Folgendes auszuführen: Empfangen einer ersten Anzeigenanfrage zur Anzeige einer Benutzerschnittstelle einer ersten Anwendung Dritter auf einer jeweiligen Anzeige, die mit der elektronischen Vorrichtung in Kommunikation steht; in Reaktion auf das Empfangen der ersten Anzeigenanfrage: Erhalten einer ersten Vorlage einer Benutzerschnittstelle, die eingerichtet ist, von einer Vielzahl von Anwendungen Dritter verwendet zu werden; und Anfragen, von der ersten Anwendung Dritter, von einem oder mehreren Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle; Empfangen, von der ersten Anwendung Dritter, während die erste Anwendung Dritter auf der elektronischen Vorrichtung ausgeführt wird, eines ersten Satzes an Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle; Befüllen der ersten Vorlage der Benutzerschnittstelle mit dem ersten Satz an Werten, der von der ersten Anwendung Dritter empfangen wurde; Erzeugen einer ersten Benutzerschnittstelle für die erste Anwendung Dritter unter Verwendung der ersten Vorlage der Benutzerschnittstelle, die mit dem ersten Satz an Werten befüllt ist; und Senden von Information an die jeweilige Anzeige, die ermöglicht, dass die erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeige angezeigt wird.

Description

  • QUERVERWEIS ZU IN BEZIEHUNG STEHENDEN ANMELDUNGEN
  • Diese Anmeldung steht mit den folgenden Anmeldungen in Beziehung: U.S. Provisional Application mit Anmeldenummer 61/793,924, eingereicht am 15. März 2013, bezeichnet ”Voice and Touch User Interface” (”Sprach- und Berührungsbenutzerschnittstelle”); U.S.-Anmeldung mit Anmeldenummer 13/032,614, eingereicht am 22. Februar 2011, bezeichnet ”Pushing a Graphical User Interface to a Remote Device with Display Rules Provided by the Remote Device” (”Schieben einer grafischen Benutzerschnittstelle auf eine entfernte Vorrichtung mit Anzeigeregeln, die von der entfernten Vorrichtung bereitgestellt werden”); U.S.-Anmeldung mit Anmeldenummer 12/683,218, eingereicht am 6. Januar 2010, bezeichnet ”Pushing a User Interface to a Remote Device” (”Schieben einer Benutzerschnittstelle auf eine entfernte Vorrichtung”); U.S.-Anmeldung mit Anmeldenummer 12/119,960, eingereicht am 13. Mai 2008, bezeichnet ”Pushing a User Interface to a Remote Device” (”Schieben einer Benutzerschnittstelle auf eine entfernte Vorrichtung); U.S.-Anmeldung mit Anmeldenummer 13/175,581, eingereicht am 1. Juli 2011, bezeichnet ”Pushing a User Interface to a Remote Device” (”Schieben einer Benutzerschnittstelle auf eine entfernte Vorrichtung”); U.S.-Anmeldung mit Anmeldenummer 13/161,339, eingereicht am 15. Juni 2011, bezeichnet ”Pushing a Graphical User Interface to a Remote Device with Display Rules Provided by the Remote Device” (”Schieben einer grafischen Benutzerschnittstelle auf eine entfernte Vorrichtung mit Anzeigeregeln, die von der entfernten Vorrichtung bereitgestellt werden”); U.S.-Anmeldung mit Anmeldenummer 13/250,947, eingereicht am 30. September 2011, bezeichnet ”Automatically Adapting User Interfaces for Hands-Free-Interaction” (”Automatisches Anpassen von Benutzerschnittstellen zur freihändigen Interaktion”); U.S.-Anmeldung mit Anmeldenummer 12/987,982, eingereicht am 10. Januar 2011, bezeichnet ”Intelligent Automated Assistent” (”Intelligenter automatisierter Assistent”); U.S. Provisional Application mit Anmeldenummer 61/295,774, eingereicht am 18. Januar 2010, bezeichnet ”Intelligent Automated Assistent” (”Intelligenter automatisierter Assistent”); U.S. Provisional Application mit Anmeldenummer 61/493,201, eingereicht am 3. Juni 2011, bezeichnet ”Generating and Processing Data Items that Represent Tasks to Perform” (”Erzeugen und Verarbeiten von Datenelementen, die auszuführende Tasks repräsentieren”); U.S. Provisional Application mit Anmeldenummer 61/657,744, eingereicht am 9. Juni 2012, bezeichnet ”Automatically Adapting User Interface for Hands-Free Interaction” (”Automatisches Anpassen einer Benutzerschnittstelle zur freihändigen Interaktion”); U.S.-Anmeldung mit Anmeldenummer 12/207,316, eingereicht am 9. September 2008, bezeichnet ”Radio with Personal DJ” (”Funkgerät mit persönlichem DJ”); U.S. Provisional Application mit Anmeldenummer 61/727,554, eingereicht am 16. November 2012, bezeichnet ”System and Method for Negotiating Control of a Shared Audio or Visual Resource” (”System und Verfahren zum Aushandeln von Kontrolle einer geteilten hörbaren oder sichtbaren Ressource”); U.S.-Anmeldung mit Anmeldenummer 61/832,818, eingereicht am 8. Juni 2013, bezeichnet ”Mapping Application with Several User Interfaces” (”Abbilden einer Anwendung mit mehreren Benutzerschnittstellen”); U.S.-Anmeldung mit Anmeldenummer 13/913,428, eingereicht am 8. Juni 2013, bezeichnet ”Application Gateway for Providing Different User Interfaces for Limited Destraction and Non-Limited Destraction Contexts” (”Anwendungs-Gateway zum Bereitstellen unterschiedlicher Benutzerschnittstellen für Umfelder mit begrenzter Ablenkung und unbegrenzter Ablenkung”); U.S. Provisional Application mit Anmeldenummer 61/832,842, eingereicht am 8. Juni 2013, bezeichnet ”Device, Method, and Graphical User Interface for Synchronizing Two of More Displays” (”Vorrichtung, Verfahren und grafische Benutzerschnittstelle zum Synchronisieren von zwei von mehreren Anzeigen”), wobei diese Anmeldungen hierin in ihrer Gesamtheit eingebunden sind.
  • TECHNISCHES GEBIET
  • Das Vorliegende bezieht sich im Allgemeinen auf elektronische Vorrichtungen zum Erzeugen von Benutzerschnittstellen, beinhaltend, aber nicht begrenzt auf, ein Bereitstellen von Benutzerschnittstellen für Anwendungen Dritter.
  • HINTERGRUND
  • Die Verwendung von berührungsempfindlichen Oberflächen als Eingabevorrichtungen für Computer und andere elektronische Rechenvorrichtungen hat in den letzten Jahren wesentlich zugenommen. Beispielhafte berührungsempfindliche Oberflächen beinhalten Berührungs-Pads und Berührungsbildschirmanzeigen. Solche Oberflächen werden weitgehend verwendet, um Benutzerschnittstellenobjekte auf einer ersten Anzeige, die mit einer ersten elektronischen Vorrichtung assoziiert ist, zu manipulieren.
  • Beispielhafte Manipulationen beinhalten ein Einstellen der Position und/oder Größe eines oder mehrerer Benutzerschnittstellenobjekte, ein Aktivieren von Knöpfen oder ein Öffnen von Dateien/Anwendungen, die durch Benutzerschnittstellenobjekte dargestellt werden, oder ein anderweitiges Manipulieren von Benutzerschnittstellen. Beispielhafte Benutzerschnittstellenobjekte beinhalten digitale Bilder, Video, Text, Icons, Steuerelemente wie z. B. Knöpfe und andere Grafiken.
  • Vorrichtungen haben manchmal Vorrichtungssoftware eines Erstanbieters (oder einer Ursprungspartei) (z. B. ein Betriebssystem für die Vorrichtung und Anwendungen, die von oder im Auftrag der gleichen Entität, die das Betriebssystem entwickelt hat, entwickelt wurden) und Software Dritter, die Anwendungen beinhalten, die getrennt von der Software des Erstanbieters (oder der Ursprungspartei) entwickelt wurden. Anwendungen Dritter werden manchmal auf eine Vorrichtung geladen, um auf der Vorrichtung zusätzliche Funktionalität bereitzustellen.
  • ZUSAMMENFASSUNG
  • Jedoch sind die Benutzerschnittstellen von Anwendungen Dritter oftmals benutzer- und/oder anwendungsspezifisch. Darüber hinaus beinhalten anwendungsspezifische Benutzerschnittstellen manchmal Vokabeln oder Steuerungen, die zu klein sind, um sicher verwendet zu werden, während des Fahrens eines Fahrzeuges. Weiterhin legen unterschiedliche benutzer- und/oder anwendungsspezifische Benutzerschnittstellen für unterschiedliche Anwendungen manchmal Steuerungen mit ähnlichen Funktionen an unterschiedlichen Orten ab, so dass zusätzliche Zeit und Aufmerksamkeit der Benutzer erforderlich ist, um die Funktionen dieser unterschiedlichen Steuerungen zu lokalisieren und zu bestimmen. Somit ist es mühselig und nicht effizient, unterschiedliche benutzer- und/oder anwendungsspezifische Benutzerschnittstellen für unterschiedliche Anwendungen zu haben. Darüber hinaus benötigen diese Benutzerschnittstellen unter bestimmten Umständen länger als nötig für eine Benutzermanipulation, wodurch Energie verschwendet wird. Diese zuletzt genannte Überlegung ist insbesondere bei batteriebetriebenen Vorrichtungen wichtig.
  • Dementsprechend gibt es ein Bedürfnis für elektronische Vorrichtungen mit schnelleren, effizienteren Verfahren zum Bereitstellen eines Zugriffs auf Anwendungen Dritter und zum Beseitigen der Ablenkung eines Fahrers beim Verwenden von Anwendungen Dritter. Ein Erzeugen von Benutzerschnittstellen aus einer Vorlage zur Verwendung mit Anwendungen Dritter, welche die Lesbarkeit und Benutzerfreundlichkeit von Benutzerschnittstellen zum Interagieren mit Anwendungen Dritter verbessert, beseitigt die Ablenkung eines Fahrers und verbessert Benutzereffizienz. Auf elektronischen Vorrichtung ergänzen solche Verfahren optionalerweise oder ersetzen konventionelle Verfahren zum Erzeugen von Benutzerschnittstellen und Bereitstellen von Zugriff auf Anwendungen Dritter. Auf elektronischen Vorrichtung verringern solche Verfahren die kognitive Belastung eines Benutzers und erzeugen eine effizientere Mensch-Maschine-Schnittstelle. Bei batteriebetriebenen Vorrichtungen sparen solche Verfahren Leistung und erhöhen die Zeit zwischen Batteriewechseln.
  • Die vorgenannten Defizite und andere Probleme, die mit Benutzerschnittstellen für elektronische Vorrichtungen mit berührungsempfindlichen Oberflächen assoziiert sind, werden verringert oder beseitigt, durch die offenbarten Vorrichtungen. Bei einigen Ausführungsformen ist die Vorrichtung ein Desktop-Computer. Bei einigen Ausführungsformen ist die Vorrichtung tragbar (z. B. ein Notebook-Computer, Tablet-Computer oder eine handgehaltene Vorrichtung). Bei einigen Ausführungsformen hat die Vorrichtung ein Berührungs-Pad (touchpad). Bei einigen Ausführungsformen hat die Vorrichtung eine berührungsempfindliche Anzeige (auch als ”Berührungsbildschirm” (”touch screen”) oder ”Berührungsbildschirmanzeige” (”touch screen display”) bekannt). Bei einigen Ausführungsformen hat die Vorrichtung eine grafische Benutzerschnittstelle (GUI), einen oder mehrere Prozessoren, Speicher und ein oder mehrere Module, Programme oder Sätze an Instruktionen, die in dem Speicher zur Ausführung mehrerer Funktionen gespeichert werden. Bei einigen Ausführungsformen interagiert der Benutzer mit der GUI primär durch Fingerkontakt und Gesten auf der berührungsempfindlichen Oberfläche. Bei einigen Ausführungsformen beinhalten die Funktionen optionalerweise eine Bildbearbeitung, Zeichnen, Präsentieren, Textverarbeitung, Erzeugen von Webseiten, Authoring von Disks, Erzeugen von Tabellen, Spielen von Spielen, Telefonieren, Durchführen von Videokonferenzen, E-Mailen, Sofortnachrichtendienste, Unterstützung beim Training, digitales Fotografieren, digitales Erstellen von Videos, Webbrowsen, digitales Spielen von Musik und/oder digitales Spielen von Videos. Ausführbare Instruktionen zum Durchführen dieser Funktionen sind optionalerweise in einem nichtflüchtigen, computerlesbaren Speichermedium oder anderem Computerprogrammprodukt, welches eingerichtet ist, von einem oder mehreren Prozessoren ausgeführt zu werden, inbegriffen.
  • Ein beispielhaftes Verfahren kann auf einer elektronischen Vorrichtung mit einem oder mehreren Prozessoren und Speicher ausgeführt werden. Das Verfahren beinhaltet ein Empfangen einer ersten Anzeigenanfrage, eine Benutzerschnittstelle einer ersten Anwendung Dritter auf einer jeweiligen Anzeige, die in Kommunikation mit der elektronischen Vorrichtung ist, anzuzeigen. In Reaktion auf das Empfangen der ersten Anzeigenanfrage beinhaltet das Verfahren: Erhalten einer ersten Vorlage einer Benutzerschnittstelle, die eingerichtet ist, von einer Vielzahl von Anwendungen Dritter verwendet zu werden; und Anfragen, von der ersten Anwendung Dritter, eines oder mehrerer Werte, um die erste Vorlage der Benutzerschnittstelle zu befüllen. Das Verfahren beinhaltet weiterhin ein Empfangen, von der ersten Anwendung Dritter, während die erste Anwendung Dritter auf der elektronischen Vorrichtung läuft, eines ersten Satzes an Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle; Befüllen der ersten Vorlage der Benutzerschnittstelle mit dem ersten Satz an Werten, der von der ersten Anwendung Dritter empfangen wurde; Erzeugen einer ersten Benutzerschnittstelle für die Anwendung Dritter, unter Verwendung der ersten Vorlage der Benutzerschnittstelle, die mit dem ersten Satz an Werten befüllt ist; und Senden von Information an die jeweilige Anzeige, die ermöglicht, dass die erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeige angezeigt wird.
  • Gemäß einigen Ausführungsformen beinhaltet eine elektronische Vorrichtung Speicher und eine Verarbeitungseinheit, die mit dem Speicher gekoppelt ist. Die Verarbeitungseinheit ist eingerichtet, eine erste Anzeigenanfrage zur Anzeige einer Benutzerschnittstelle einer ersten Anwendung Dritter auf einer jeweiligen Anzeigeeinheit, die in Kommunikation mit der elektronischen Vorrichtung ist, zu empfangen. Die Verarbeitungseinheit ist weiterhin eingerichtet, um, in Reaktion auf das Empfangen der ersten Anzeigenanfrage, Folgendes zu tun: Erhalten einer ersten Vorlage einer Benutzerschnittstelle, die eingerichtet ist, um mit einer Vielzahl von Anwendungen Dritter verwendet zu werden; und Anfragen, von der ersten Anwendung Dritter, eines oder mehrerer Werte zum Befüllen der ersten Vorlage der Benutzerschnittstelle. Die Verarbeitungseinheit ist auch eingerichtet, um, von der ersten Anwendung Dritter, während die erste Anwendung Dritter auf der elektronischen Vorrichtung läuft, einen ersten Satz an Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle zu empfangen; Befüllen der ersten Vorlage der Benutzerschnittstelle mit dem ersten Satz an Werten, der von der ersten Anwendung Dritter empfangen wurde; Erzeugen einer ersten Benutzerschnittstelle für die erste Anwendung Dritter unter Verwendung der ersten Vorlage der Benutzerschnittstelle, die mit dem ersten Satz an Werten befüllt ist; und Senden von Information an die jeweilige Anzeigeeinheit, die ermöglicht, dass die erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeigeeinheit angezeigt wird.
  • Gemäß einigen Ausführungsformen beinhaltet eine elektronische Vorrichtung einen oder mehrere Prozessoren, Speicher und ein oder mehrere Programme; die ein oder mehreren Programme sind in dem Speicher gespeichert, und eingerichtet, von dem einen oder den mehreren Prozessoren ausgeführt zu werden und das eine oder die mehreren Programme beinhalten Instruktionen zum Ausführen der Operationen jeglicher der hierin beschriebenen Verfahren. Gemäß einigen Ausführungsformen hat ein nichtflüchtiges computerlesbares Speichermedium darauf gespeicherte Instruktionen, welche, wenn sie von einer elektronischen Vorrichtung ausgeführt werden, die Vorrichtung veranlassen, die Operationen jeglicher der hierin beschriebenen Verfahren auszuführen. Gemäß einigen Ausführungsformen beinhaltet eine elektronische Vorrichtung Mittel zum Ausführen der Operationen jeglicher der hierin beschriebenen Verfahren. Gemäß einigen Ausführungsformen beinhaltet ein Informationsverarbeitungsgerät zur Verwendung in einer ersten elektronischen Vorrichtung, Mittel zum Ausführen der Operationen jeglicher hierin beschriebener Verfahren.
  • Somit werden elektronische Vorrichtungen mit Anzeigen mit schnelleren, effizienteren Verfahren zum Bereitstellen von Benutzerschnittstellen für Anwendungen Dritter versorgt, wodurch sich die Effektivität, Effizienz und Benutzerzufriedenheit mit solchen Vorrichtungen erhöht. Auf elektronischen Vorrichtungen können solche Verfahren und Schnittstellen konventionelle Verfahren zum Erzeugen von Benutzerschnittstellen ergänzen oder ersetzen.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Für ein besseres Verständnis der verschiedenen Ausführungsformen soll auf die nachstehende Beschreibung der Ausführungsformen Bezug genommen werden, in Verbindung mit den folgenden Zeichnungen, bei welchen ähnliche Bezugszeichen sich auf entsprechende Teile in allen Figuren beziehen.
  • 1A ist ein Blockdiagramm, welches eine tragbare Multifunktionsvorrichtung mit einer berührungsempfindlichen Anzeige gemäß einigen Ausführungsformen darstellt.
  • 1B ist ein Blockdiagramm, welches beispielhafte Komponenten zur Handhabung von Ereignissen gemäß einigen Ausführungsformen darstellt.
  • 2 stellt eine tragbare Multifunktionsvorrichtung dar, die einen Berührungsbildschirm aufweist, gemäß einigen Ausführungsformen.
  • 3 ist ein Blockdiagramm einer beispielhaften Multifunktionsvorrichtung mit einer Anzeige und einer berührungsempfindlichen Oberfläche gemäß einigen Ausführungsformen.
  • 4A zeigt eine beispielhafte Benutzerschnittstelle für ein Menü von Anwendungen auf einer tragbaren Multifunktionsvorrichtung gemäß einigen Ausführungsformen.
  • 4B stellt eine beispielhafte Benutzerschnittstelle für eine Multifunktionsvorrichtung mit einer berührungsempfindlichen Oberfläche dar, die von der Anzeige getrennt ist, gemäß einigen Ausführungsformen.
  • 5 ist ein Blockdiagramm, welches eine Betriebsumgebung darstellt, in welcher eine tragbare Multifunktionsvorrichtung mit einem externen Informationspräsentationssystem und/oder einem Server gemäß einigen Ausführungsformen kommuniziert.
  • 6A bis 6C stellen beispielhafte Benutzerschnittstellen dar, die von einer Vorlage gemäß einigen Ausführungsformen erzeugt wurden.
  • 7A bis 7I sind Flussdiagramme, die ein beispielhaftes Verfahren zum Erzeugen von Benutzerschnittstellen von einer Vorlage darstellen.
  • 8 ist ein funktionales Blockdiagramm einer elektronischen Vorrichtung gemäß einigen Ausführungsformen.
  • BESCHREIBUNG VON AUSFÜHRUNGSFORMEN
  • Viele elektronische Vorrichtungen benutzen grafische Benutzerschnittstellen. Viele der grafischen Benutzerschnittstellen sind benutzerdefiniert gestaltet, oder sind spezifisch für eine individuelle Anwendung. Die nachfolgend beschriebenen Vorrichtungen verbessern Vorrichtung diese Verfahren, indem Benutzerschnittstellen von einer Vorlage einer Benutzerschnittstelle zur Verwendung mit Anwendungen Dritter erzeugt werden. Bei einigen Ausführungsformen ist die Vorlage der Benutzerschnittstelle eine generische oder anwendungsagnostische Vorlage einer Benutzerschnittstelle, die von einer Vielzahl von unterschiedlichen Anwendungen verwendet wird. Diese Benutzerschnittstellen werden auf einer jeweiligen Anzeige angezeigt. Das Verwenden der gleichen generischen Vorlage der Benutzerschnittstelle für eine Reihe von unterschiedlichen Anwendungen Dritter trägt zur Standardisierung der Benutzerschnittstellen von Anwendungen Dritter bei. Diese Standardisierung bewirkt, dass die Anwendungen Dritter intuitiver werden, und es leichter und einfacher wird, mit ihnen zu interagieren, während sie noch immer den Benutzer mit Zugriff auf die Funktionalität der Anwendungen Dritter ausstatten.
  • Diese Vorlagen sind insbesondere in Situationen hilfreich, in denen eine Vorrichtung Zugriff auf die Anwendung Dritter auf einem Informationspräsentationssystem bereitstellt, welches extern von der Vorrichtung ist, wie ein Smartphone, das Zugriff auf eine Anwendung Dritter auf dem Smartphone über eine Berührungsbildschirmanzeige in einem Auto bereitstellt. Das Informationspräsentationssystem hat optionalerweise eine Anzeige mit einer von einer Vielzahl von unterschiedlichen Sätzen an Betriebseigenschaften (z. B. Anzeigeabmessungen, Steuerungstypen, usw.). Bei einigen Ausführungsformen ist die jeweilige Anzeige eine Anzeige in einem Fahrzeuginformationsanzeigesystem, welches aus dem Fahrersitz eines Fahrzeuges sichtbar ist, um so die Bedienbarkeit der Anwendung Dritter durch den Fahrer und/oder Passagieren in dem Fahrzeug zu verbessern.
  • Nachfolgend stellen die 1A1B, 2 und 3 eine Beschreibung von beispielhaften Vorrichtungen bereit. Die 4A4B und 6A6C stellen beispielhafte Benutzerschnittstellen dar, die von einer Vorlage erzeugt wurden. Die 7A7I sind Flussdiagramme, die ein beispielhaftes Verfahren zum Bereitstellen von Benutzerschnittstellen für Anwendungen Dritter darstellen. 8 ist ein funktionales Blockdiagramm einer elektronischen Vorrichtung. Die Benutzerschnittstellen der 6A6C werden verwendet, um die Prozesse in den 7A7I darzustellen.
  • BEISPIELHAFTE VORRICHTUNGEN
  • Es wird nun im Detail verwiesen auf Ausführungsformen, Beispiele, welche in den begleitenden Zeichnungen gezeigt sind. In der folgenden detaillierten Beschreibung werden zahlreiche spezifische Details dargelegt, um ein gründliches Verständnis der verschiedenen beschriebenen Ausführungsformen bereitzustellen. Jedoch ist es dem Fachmann klar, dass die verschiedenen beschriebenen Ausführungsformen ohne diese spezifischen Details angewendet werden können. In anderen Fällen sind wohlbekannte Verfahren, Prozeduren, Komponenten, Schaltungen und Netzwerke nicht im Detail beschrieben worden, um nicht unnötig die Aspekte der Ausführungsformen unklar zu machen.
  • Es ist ebenso klar, dass, obwohl die Ausdrücke erster, zweiter, usw. in einigen Fällen hierin verwendet sind zum Beschreiben verschiedener Elemente, diese Elemente nicht durch diese Ausdrücke beschränkt werden sollten. Diese Ausdrücke werden nur verwendet zum Unterscheiden eines Elements von einem anderen. Zum Beispiel könnte ein erster Kontakt ein zweiter Kontakt genannt werden, und in ähnlicher Weise könnte ein zweiter Kontakt ein erster Kontakt genannt werden, ohne von dem Geltungsbereich der verschiedenen beschriebenen Ausführungsformen abzuweichen. Der erste Kontakt und der zweite Kontakt sind beides Kontakte, aber sie sind nicht der gleiche Kontakt.
  • Die Terminologie, welche in der Beschreibung der verschiedenen beschriebenen Ausführungsformen hierin verwendet wird, dient nur dem Zwecke des Beschreibens spezieller Ausführungsformen und soll nicht beschränkend sein. Wie in der Beschreibung der verschiedenen beschriebenen Ausführungsformen und den angehängten Ansprüchen verwendet, sollen die Singularformen „ein”, „eine” und „der”, „die”, „das” die Pluralformen auch umfassen, es sei denn der Zusammenhang zeigt klar das Gegenteil an. Es ist auch klar, dass der Ausdruck „und/oder” wie hierin verwendet sich auf irgendwelche und alle möglichen Kombinationen von ein oder mehreren der assoziierten aufgelisteten Gegenstände bezieht und diese umfasst. Es ist weiter klar, dass die Ausdrücke „umfassen”, „umfassend”, „aufweisen” und/oder „aufweisend”, wenn in dieser Beschreibung verwendet, das Vorliegen der genannten Merkmale, Ganzzahlen, Schritte, Operationen, Elemente und/oder Komponenten spezifiziert, aber nicht das Vorliegen oder Hinzufügen ein oder mehrerer anderer Merkmale, Ganzzahlen, Schritte, Operationen, Elemente, Komponenten und/oder Gruppen davon ausschließt.
  • Wie hierin verwendet, wird der Ausdruck „wenn” optional ausgelegt als „wenn” oder „nach” oder „in Antwort auf Bestimmen” oder „in Antwort auf Detektieren” abhängig vom Zusammenhang. In ähnlicher Weise wird der Ausdruck „wenn bestimmt wird” oder „wenn [eine genannte Bedingung oder ein Ereignis] detektiert wird” optional ausgelegt als „nach Bestimmen” oder „in Antwort auf Bestimmen” oder „nach Detektieren [der genannten Bedingung oder des Ereignisses]” oder „in Antwort auf Detektieren [die genannte Bedingung oder das Ereignis]” abhängig vom Zusammenhang zu bedeuten.
  • Ausführungsformen der elektronischen Vorrichtungen, Benutzerschnittstellen für solche Vorrichtungen, und assoziierte Prozesse zum Verwenden solcher Vorrichtungen werden beschrieben. In einigen Ausführungsformen ist die Vorrichtung eine tragbare Kommunikationsvorrichtung, wie beispielsweise ein Mobiltelefon, welches auch andere Funktionen beinhaltet, wie beispielsweise PDA-und/oder Musikplayer-Funktionen. Beispielhafte Ausführungsformen von tragbaren Multifunktionsvorrichtungen umfassen ohne Beschränkung das iPhone®-, iPod Touch®-, und iPad®-Vorrichtungen von Apple Inc. aus Cupertino, Kalifornien. Andere tragbare elektronische Vorrichtungen, wie beispielsweise Laptops oder Tablet-Computer mit berührungsempfindlichen Oberflächen (z. B. Berührungsbildschirmanzeigen und/oder Touchpads) werden optional verwendet. Es ist auch klar, dass in einigen Ausführungsformen die Vorrichtung nicht eine tragbare Kommunikationsvorrichtung ist, sondern ein Desktop-Computer mit einer berührungsempfindlichen Oberfläche ist (z. B. eine Berührungsbildschirmanzeige und/oder ein Touchpad).
  • In der folgenden Diskussion wird eine elektronische Vorrichtung, welche eine Anzeige und eine berührungsempfindliche Oberfläche umfasst, beschrieben. Es ist jedoch klar, dass die elektronische Vorrichtung optional eine oder mehrere andere physische Benutzerschnittstellenvorrichtungen umfasst, wie beispielsweise eine physische Tastatur, eine Maus und/oder einen Joystick.
  • Die Vorrichtung unterstützt typischerweise eine Vielzahl von Anwendungen, wie beispielsweise eine oder mehrere der folgenden: Eine Zeichnungsanwendung, eine Präsentationsanwendung, eine Textverarbeitungsanwendung, eine Webseitenerzeugungsanwendung, eine Disk-Authoring-Anwendung, eine Tabellenanwendung, eine Spieleanwendung, eine Telefonanwendung, eine Videokonferenzanwendung, eine Email-Anwendung, eine Instant-Messaging-Anwendung, eine Trainingsunterstützungsanwendung, eine Fotomanagementanwendung, eine Digitalkameraanwendung, eine Digitalvideokameraanwendung, eine Webbrowsing-Anwendung, eine Digitalmusikplayeranwendung, und/oder Digitalvideoplayeranwendung.
  • Die verschiedenen Anwendungen, welche auf der Vorrichtung ausgeführt werden, verwenden optional zumindest eine gemeinsame physische Benutzerschnittstellenvorrichtung, wie beispielsweise die berührungsempfindliche Oberfläche. Eine oder mehrere Funktionen der berührungsempfindlichen Oberfläche sowie korrespondierende Information, welche auf der Vorrichtung angezeigt wird, werden optional angepasst und/oder variiert von einer Anwendung zu der nächsten und/oder innerhalb einer jeweiligen Anwendung. Auf diese Weise unterstützt eine gemeinsame physische Architektur (wie beispielsweise berührungsempfindliche Oberfläche) der Vorrichtung optional die Vielzahl von Anwendungen mit Benutzerschnittstellen, welche für den Benutzer intuitiv und transparent sind.
  • Nun wird verwiesen auf Ausführungsformen der tragbaren Vorrichtungen mit berührungsempfindlichen Anzeigen. 1A ist ein Blockdiagramm, welches eine tragbare Multifunktionsvorrichtung 100 mit berührungsempfindlichen Anzeigen 112 gemäß einigen Ausführungsformen zeigt. Die berührungsempfindliche Anzeige 112 wird manchmal ein „Berührungsbildschirm” der Einfachheit halber genannt, und ist manchmal bekannt als oder genannt ein berührungsempfindliches Anzeigesystem. Die Vorrichtung 100 umfasst einen Speicher 102 (welcher optional ein oder mehrere computerlesbare Speichermedien umfasst), Speichersteuereinheit 122, eine oder mehrere Verarbeitungseinheiten (CPUs) 120, Peripheriegeräteschnittstelle 118, HF-Schaltung 108, Audioschaltung 110, Lautsprecher 111, Mikrophon 113, Eingabe/Ausgabe(I/O)-Subsystem 106, andere Eingabe- oder Steuerungsvorrichtungen 116, und einen externen Anschluss 124. Die Vorrichtung 100 umfasst optional einen oder mehrere optische Sensoren 164. Die Vorrichtung 100 umfasst optional einen oder mehrere Intensitätssensoren 165 zum Detektieren der Intensität von Kontakten auf der Vorrichtung 100 (z. B. einer berührungsempfindlichen Oberfläche, wie beispielsweise das berührungsempfindliche Anzeigesystem 112 der Vorrichtung 100). Die Vorrichtung 100 umfasst optional einen oder mehrere taktile Ausgabegeneratoren 167 zum Erzeugen von taktilen Ausgaben auf der Vorrichtung 100 (z. B. Erzeugen taktiler Ausgaben auf einer berührungsempfindlichen Oberfläche, wie beispielsweise berührungsempfindliches Anzeigesystem 112 der Vorrichtung 100 oder Touchpad 355 der Vorrichtung 300). Diese Komponenten kommunizieren optional über einen oder mehrere Kommunikationsbusse oder Signalleitungen 103.
  • Wie in der Beschreibung und in den Ansprüchen verwendet, bezieht sich der Ausdruck „Intensität” eines Kontakts auf einer berührungsempfindlichen Oberfläche auf die Kraft oder den Druck (Kraft pro Flächeneinheit) eines Kontakts (z. B. eines Fingerkontakts) auf der berührungsempfindlichen Oberfläche, oder auf einen Ersatz (Vertreter (Proxy)) für die Kraft oder den Druck eines Kontakts auf die berührungsempfindliche Oberfläche. Die Intensität eines Kontakts hat einen Wertebereich, welcher zumindest vier verschiedene Werte umfasst, und typischer hunderte von verschiedenen Werten umfasst (z. B. zumindest 256). Die Intensität eines Kontakts wird optional bestimmt (oder gemessen) unter Verwendung verschiedener Herangehensweisen und verschiedener Sensoren oder Kombinationen von Sensoren. Zum Beispiel werden ein oder mehrere Kraftsensoren unterhalb oder neben der berührungsempfindlichen Oberfläche optional verwendet zum Messen der Kraft an verschiedenen Punkten auf der berührungsempfindlichen Oberfläche. In einigen Implementierungen werden Kraftmessungen aus mehreren Kraftsensoren kombiniert (z. B. ein gewichteter Durchschnitt) zum Bestimmen einer geschätzten Kraft eines Kontakts. In ähnlicher Weise wird eine drucksensitive Spitze eines Stifts optional verwendet zum Bestimmen eines Drucks des Stifts auf die berührungsempfindliche Oberfläche. Alternativ werden die Größe des Kontaktbereichs, welcher auf der berührungsempfindlichen Oberfläche detektiert wird und/oder Änderungen dieser, die Kapazität der berührungsempfindlichen Oberfläche in der Nähe des Kontakts und/oder Änderungen dieser, und/oder der Widerstand der berührungsempfindlichen Oberfläche nahe des Kontakts und/oder Änderungen von diesem, optional verwendet als ein Ersatz für die Kraft oder den Druck des Kontakts auf die berührungsempfindliche Oberfläche. In einigen Implementierungen werden die Ersatzmessungen für die Kontaktkraft oder den Druck direkt verwendet zum Bestimmen, ob eine Intensitätsschwelle überschritten worden ist (z. B. die Intensitätsschwelle wird in Einheiten entsprechend den Ersatzmessungen beschrieben). In einigen Implementierungen werden die Ersatzmessungen für Kontaktkraft oder -druck konvertiert in eine geschätzte Kraft oder Druck, und die geschätzte Kraft oder Druck wird verwendet zum Bestimmen, ob eine Intensitätsschwelle überschritten worden ist (z. B. die Intensitätsschwelle ist eine Druckschwelle, welche in Einheiten von Druck gemessen wird).
  • Wie in der Beschreibung und den Ansprüchen verwendet, bezieht sich der Ausdruck „taktile Ausgabe” auf physische Verschiebung einer Vorrichtung relativ zu einer vorherigen Position der Vorrichtung, physische Verschiebung einer Komponente (z. B. einer berührungsempfindlichen Oberfläche) einer Vorrichtung relativ zu einer anderen Komponente (z. B. Gehäuse) der Vorrichtung, oder Verschiebung der Komponente relativ zu einem Massezentrum der Vorrichtung, welches durch einen Benutzer detektiert werden wird mit dem Berührungsempfinden des Benutzers. Zum Beispiel in Situationen, wo die Vorrichtung oder die Komponente der Vorrichtung in Kontakt mit einer Oberfläche eines Benutzers ist, welche berührungsempfindlich ist (z. B. ein Finger, eine Handfläche oder ein anderer Teil der Hand eines Benutzers), wird die taktile Ausgabe, welche durch die physische Verschiebung erzeugt wird, durch den Benutzer interpretiert werden als eine taktile Empfindung, welche einer wahrgenommenen Änderung der physischen Charakteristika der Vorrichtung oder der Komponente der Vorrichtung entspricht. Zum Beispiel wird die Bewegung einer berührungsempfindlichen Oberfläche (z. B. einer berührungsempfindlichen Anzeige oder Trackpad) optional interpretiert durch den Benutzer als ein „Down Click” oder „Up Click” einer physischen Aktuatortaste. In einigen Fällen wird ein Benutzer eine taktile Empfindung fühlen, wie beispielsweise einen „Down Click” oder „UP Click”, selbst wenn es keine Bewegung einer physischen Aktuatortaste, welche mit der berührungsempfindlichen Oberfläche assoziiert ist, gibt, welche physisch durch die Bewegungen des Benutzers gedrückt (z. B. verschoben) wird. Als ein anderes Beispiel wird die Bewegung der berührungsempfindlichen Oberfläche optional interpretiert oder erfasst durch den Benutzer als „Rauigkeit” der berührungsempfindlichen Oberfläche, selbst wenn es keine Änderung der Weichheit (smoothness) der berührungsempfindlichen Oberfläche gibt. Während solche Interpretationen der Berührung durch einen Benutzer von den individualisierten Empfindungswahrnehmungen des Benutzers abhängen werden, gibt es viele Empfindungswahrnehmungen von Berührung, welche einer großen Vielzahl von Benutzern gemein sind. Somit, wenn eine taktile Ausgabe beschrieben wird als korrespondierend mit einer speziellen Empfindungswahrnehmung eines Benutzers (z. B. einem „Up Click”, einem „Down Click”, „Rauigkeit”), wenn nicht anders genannt, korrespondiert die erzeugte taktile Ausgabe mit physischer Verschiebung der Vorrichtung oder einer Komponente davon, welche die beschriebene Empfindungswahrnehmung für einen typischen (oder einen durchschnittlichen) Benutzer erzeugen wird.
  • Es ist klar, dass die Vorrichtung 100 nur ein Beispiel einer tragbaren Multifunktionsvorrichtung ist, und dass die Vorrichtung 100 optional mehr oder weniger Komponenten als gezeigt aufweist, optional zwei oder mehrere Komponenten kombiniert, oder optional eine unterschiedliche Konfiguration oder Anordnung der Komponenten aufweist. Die verschiedenen Komponenten, welche in 1A gezeigt sind, werden in Hardware, Software oder einer Kombination von Hardware und Software implementiert, einschließlich einem oder mehreren signalverarbeitungs- und/oder anwendungsspezifischen integrierten Schaltkreisen.
  • Der Speicher 102 umfasst optional Hochgeschwindigkeitsspeicher mit wahlfreiem Zugriff und optional umfasst er auch nicht-flüchtigen Speicher, wie beispielsweise eine oder mehrere magnetische Festplattenspeichervorrichtungen, Flash-Speichervorrichtungen oder andere, nichtflüchtige Solid-State-Speichervorrichtungen. Zugriff auf den Speicher 102 durch andere Komponenten der Vorrichtung 100, wie beispielsweise CPU 120 und Peripheriegeräteschnittstelle 118, wird optional durch die Speichersteuereinheit 122 gesteuert.
  • Die Peripheriegeräteschnittstelle 118 kann verwendet werden zum Koppeln der Eingabe- und Ausgabe-Peripheriegeräte der Vorrichtung mit der CPU 120 und dem Speicher 102. Der eine oder die mehreren Prozessoren 120 führen verschiedene Softwareprogramme und/oder Sätze von Instruktionen, welche in dem Speicher 102 gespeichert sind, aus, um verschiedene Funktionen für die Vorrichtung 100 durchzuführen und Daten zu verarbeiten.
  • In einigen Ausführungsformen werden die Peripheriegeräteschnittstelle 118, die CPU 120 und die Speichersteuereinheit 122 optional implementiert als ein einzelner Chip, wie beispielsweise Chip 104. In einigen anderen Ausführungsformen sind sie optional implementiert auf getrennten Chips.
  • Die HF(Hochfrequenz)-Schaltung 108 empfängt und sendet HF-Signale, auch genannt elektromagnetische Signale. Die HF-Schaltung 108 konvertiert elektrische Signale zu/aus elektromagnetischen Signalen und kommuniziert mit Kommunikationsnetzwerken und anderen Kommunikationsvorrichtungen über elektromagnetische Signale. Die HF-Schaltung 108 umfasst optional wohlbekannte Schaltungen zum Ausführen dieser Funktionen, einschließlich aber nicht beschränkt auf ein Antennensystem, einen HF-Transceiver, einen oder mehrere Verstärker, einen Tuner, einen oder mehrere Oszillatoren, einen digitalen Signalprozessor, einen CODEC-Chipsatz, eine Subscriber Identity Module(SIM)-Karte, Speicher usw. Die HF-Schaltung 108 kommuniziert optional mit Netzwerken, wie beispielsweise dem Internet, auch bezeichnet als World Wide Web (WWW), einem Intranet und/oder einem drahtlosen Netzwerk, wie beispielsweise einem zellularen Telefonnetzwerk, einem drahtlosen lokalen Bereichsnetzwerk (LAN) und/oder einem Metropolitan Area Network (MAN), und anderen Vorrichtungen durch drahtlose Kommunikation. Die drahtlose Kommunikation verwendet optional irgendeines einer Vielzahl von Kommunikationsstandards, Protokollen und Technologien, einschließlich aber nicht beschränkt auf Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), high-speed downlink packet access (HSDPA), high-speed uplink packet access (HSUPA), Evolution, Data-Only (EV-DO), HSPA, HSPA+, Dual-Cell HSPA (DC-HSPDA), long term evolution (LTE), near field communication (NFC), wideband code division multiple access (WCDMA), code division multiple access (CDMA), time division multiple access (TDMA), Bluetooth, Wireless Fidelity (Wi-Fi) (z. B. IEEE 802.11a, IEEE 802.11b, IEEE 802.11g und/oder IEEE 802.11n), voice over Internet Protocol (VoiP), Wi-MAX, ein Protokoll für Email (z. B. Internet message access protocol (IMAP) und/oder post office protocol (POP)), Instant Messaging (z. B. extensible messaging und presence protocol (XMPP), Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE), Instant Messaging und Presence Service (IMPS)), und/oder Short Message Service (SMS), oder irgendein anderes geeignetes Kommunikationsprotokoll, einschließlich Kommunikationsprotokollen, welche noch nicht entwickelt sind bezüglich des Einreichungsdatums dieses Dokuments.
  • Die Audioschaltung 110, der Lautsprecher 111 und das Mikrophon 113 stellen eine Audioschnittstelle zwischen einem Benutzer und der Vorrichtung 100 bereit. Die Audioschaltung 110 empfängt Audiodaten von der Peripheriegeräteschnittstelle 118, konvertiert die Audiodaten zu einem elektrischen Signal und überträgt das elektrische Signal an den Lautsprecher 111. Der Lautsprecher 111 konvertiert das elektrische Signal zu für den Menschen hörbaren Schallwellen. Die Audioschaltung 110 empfängt auch elektrische Signale, welche durch das Mikrophon 113 aus den Schallwellen konvertiert werden. Die Audioschaltung 110 konvertiert das elektrische Signal zu Audiodaten und überträgt die Audiodaten an die Peripheriegeräteschnittstelle 118 zur Verarbeitung. Die Audiodaten werden optional abgerufen aus und/oder übertragen an den Speicher 102 und/oder die HF-Schaltung 108 durch die Peripheriegeräteschnittstelle 118. In einigen Ausführungsformen umfasst die Audioschaltung 110 auch einen Kopfhöreranschluss (z. B. 212, 2). Der Kopfhöreranschluss stellt eine Schnittstelle zwischen der Audioschaltung 110 und den entfernbaren Audioeingabe/-ausgabe-Peripheriegeräten bereit, wie beispielsweise die Nur-Ausgabe-Kopfhörer oder ein Kopfhörer mit sowohl Ausgabe (z. B. ein Kopfhörer für ein oder beide Ohren) als auch Eingabe (z. B. ein Mikrophon).
  • Das I/O-Subsystem 106 koppelt Eingabe-/Ausgabe-Peripheriegeräte auf der Vorrichtung 100, wie beispielsweise Berührungsbildschirm 112 und andere Eingabesteuerungsvorrichtungen 116, mit der Peripheriegeräteschnittstelle 118. Das I/O-Subsystem 106 umfasst optional eine Anzeigesteuereinheit 156, eine optische Sensorsteuereinheit 158, eine Intensitätssteuereinheit 159, haptische Rückmeldungssteuereinheit 161 und eine oder mehrere Eingabesteuereinheiten 160 für andere Eingabe- oder Steuerungsvorrichtungen. Die eine oder die mehreren Eingabesteuereinheiten 160 empfangen/senden elektrische Signale von/an andere Eingabe- oder Steuerungsvorrichtungen 116. Die anderen Eingabesteuerungsvorrichtungen 116 umfassen optional physische Tasten (z. B. Drucktasten, Wipptasten, usw.), Wählscheiben, Schiebeschalter, Joysticks, Klickräder, usw. In einigen alternativen Ausführungsformen werden die Eingabesteuereinheit(en) 116 optional gekoppelt mit irgendeinem (oder keinem) der folgenden: einer Tastatur, Infrarotanschluss, USB-Anschluss, und einer Zeigervorrichtung, wie beispielsweise einer Maus. Die ein oder mehreren Tasten (z. B. 208, 2) umfassen optional eine Nach-oben/Nach-unten-Taste für Lautstärkesteuerung des Lautsprechers 111 und/oder des Mikrophons 113. Die ein oder die mehreren Tasten umfassen optional eine Drucktaste (z. B. 206, 2).
  • Die berührungsempfindliche Anzeige 112 stellt eine Eingabeschnittstelle und eine Ausgabeschnittstelle zwischen der Vorrichtung und einem Benutzer bereit. Die Anzeigesteuereinheit 156 empfängt und/oder sendet elektrische Signale von/an den Berührungsbildschirm 112. Der Berührungsbildschirm 112 zeigt visuelle Ausgabe an den Benutzer an. Die visuelle Ausgabe umfasst optional Grafiken, Text, Symbole, Video und irgendeine Kombination davon (kollektiv „Grafiken” genannt). In einigen Ausführungsformen korrespondiert ein Teil der oder die ganze visuellen Ausgabe mit Benutzerschnittstellenobjekten.
  • Der Berührungsbildschirm 112 hat eine berührungsempfindliche Oberfläche, Sensor oder Satz von Sensoren, welche Eingabe von dem Benutzer basierend auf haptischem und/oder taktilem Kontakt annimmt. Der Berührungsbildschirm 112 und die Anzeigesteuereinheit 156 (zusammen mit irgendwelchen assoziierten Modulen und/oder Sätzen von Instruktionen in dem Speicher 102) detektieren Kontakt (und irgendeine Bewegung oder Unterbrechung des Kontakts) auf dem Berührungsbildschirm 112 und konvertieren den detektierten Kontakt in Interaktion mit den Benutzerschnittstellenobjekten (z. B. einem oder mehreren Softkeys, Symbolen, Webseiten oder Bildern), welche auf dem Berührungsbildschirm 112 angezeigt werden. In einer beispielhaften Ausführungsform korrespondiert ein Punkt von Kontakt zwischen dem Berührungsbildschirm 112 und dem Benutzer mit einem Finger des Benutzers.
  • Der Berührungsbildschirm 112 verwendet optional LCD(liquid crystal display)-Technologie, LPD(light emitting polymer display)-Technologie, oder LED(light emitting diode)-Technologie, obwohl andere Anzeigetechnologien in anderen Ausführungsformen verwendet werden. Der Berührungsbildschirm 112 und die Anzeigesteuereinheit 156 detektieren optional Kontakt und irgendeine Bewegung oder Unterbrechung davon unter Verwendung irgendeiner von einer Vielzahl von Berührungserfassungstechnologien, welche jetzt bekannt sind oder später entwickelt werden, einschließlich aber nicht beschränkt auf kapazitive, resistive, Infrarot- und oberflächenakustische Wellentechnologien, ebenso wie andere Näherungssensor-Arrays oder andere Elemente zum Bestimmen eines oder mehrerer Punkte von Kontakt mit dem Berührungsbildschirm 112. In einer beispielhaften Ausführungsform wird projected mutual capacitance sensing technology verwendet, wie beispielsweise jene, welche in dem iPhone®, iPod Touch®, und iPad® von Apple Inc. aus Cupertino California vorgefunden werden.
  • Der Berührungsbildschirm 112 hat optional eine Videoauflösung über 100 dpi. In einigen Ausführungsformen hat der Berührungsbildschirm eine Videoauflösung von ungefähr 160 dpi. Der Benutzer kontaktiert optional den Berührungsbildschirm 112 unter Verwendung irgendeines geeigneten Objekts oder Körpergliedes, wie beispielsweise einem Stift, einem Finger usw. In einigen Ausführungsformen ist die Benutzerschnittstelle gestaltet, um primär mit Finger-basierten Kontakten und Gesten zu arbeiten, welche weniger genau sein können als Stift-basierte Eingabe aufgrund des größeren Bereichs von Kontakt eines Fingers auf dem Berührungsbildschirm. In einigen Ausführungsformen übersetzt die Vorrichtung die grobe Finger-basierte Eingabe in eine präzise Zeiger-/Cursorposition oder -befehl zum Ausführen der Aktionen, welche durch den Benutzer gewünscht sind.
  • In einigen Ausführungsformen, zusätzlich zu dem Berührungsbildschirm, umfasst die Vorrichtung 100 optional ein Touchpad (nicht gezeigt) zum Aktivieren oder Deaktivieren bestimmter Funktionen. In einigen Ausführungsformen ist das Touchpad ein berührungsempfindlicher Bereich der Vorrichtung, welcher, anders als der Berührungsbildschirm, nicht visuelle Ausgabe anzeigt. Das Touchpad ist optional eine berührungsempfindliche Oberfläche, welche von dem Berührungsbildschirm 112 getrennt ist, oder eine Erweiterung der berührungsempfindlichen Oberfläche, welche durch den Berührungsbildschirm gebildet wird.
  • Die Vorrichtung 100 umfasst auch ein Leistungssystem 162 zum Versorgen der verschiedenen Komponenten mit Leistung. Das Leistungssystem 162 umfasst optional ein Leistungsverwaltungssystem, eine oder mehrere Leistungsquellen (z. B. Batterie, Wechselstrom (AC)), ein Wiederaufladesystem, eine Leistungsausfalldetektionsschaltung, einen Leistungskonverter oder -inverter, einen Leistungsstatusindikator (z. B. eine Licht-emittierende Diode (LED)) und irgendwelche anderen Komponenten, welche mit der Erzeugung, Verwaltung und Verteilung von Leistung in tragbaren Vorrichtungen assoziiert sind.
  • Die Vorrichtung 100 umfasst auch optional einen oder mehrere optische Sensoren 164. 1A zeigt einen optischen Sensor, welcher mit der optischen Sensorsteuereinheit 158 in dem I/O-Subsystem 106 gekoppelt ist. Der optische Sensor 164 umfasst optional eine Ladungs-gekoppelte Vorrichtung (CCD) oder komplementäre Metalloxid-Halbleiter(CMOS)-Fototransistoren. Der optische Sensor 164 empfängt Licht aus der Umgebung, projiziert durch eine oder mehrere Linsen, und konvertiert das Licht in Daten, welche ein Bild repräsentieren. In Verbindung mit dem Bildmodul 143 (auch genannt ein Kameramodul), erfasst der optische Sensor 164 optional Standbilder oder Video. In einigen Ausführungsformen ist der optische Sensor angeordnet auf der Rückseite der Vorrichtung 100, gegenüberliegend der Berührungsbildschirmanzeige 112 auf der Vorderseite der Vorrichtung, so dass die Berührungsbildschirmanzeige betriebsbereit ist zur Verwendung als ein Bildsucher für Stand- und/oder Videobilderfassung. In einigen Ausführungsformen ist ein anderer optischer Sensor angeordnet auf der Vorderseite der Vorrichtung, so dass das Bild des Benutzers optional erhalten wird durch Videokonferenz, während der Benutzer die anderen Videokonferenzmitglieder auf der Berührungsbildschirmanzeige betrachtet.
  • Die Vorrichtung 100 umfasst auch optional einen oder mehrere Kontaktintensitätssensoren 165. 1A zeigt einen Kontaktintensitätssensor, welcher mit der Intensitätssensorsteuereinheit 159 in dem I/O-Subsystem 106 gekoppelt ist. Der Kontaktintensitätssensor 165 umfasst optional einen oder mehrere piezoresistive Dehnungsmessstreifen, kapazitive Kraftsensoren, elektrische Kraftsensoren, piezoelektrische Kraftsensoren, optische Kraftsensoren, kapazitive berührungsempfindliche Oberflächen, oder andere Intensitätssensoren (z. B. Sensoren, welche zum Messen der Kraft (oder des Drucks) eines Kontakts auf einer berührungsempfindlichen Oberfläche verwendet werden). Der Kontaktintensitätssensor 165 empfängt Kontaktintensitätsinformation (z. B. Druckinformation oder eine Ersatz (proxy) für Druckinformation) aus der Umgebung. In einigen Ausführungsformen ist zumindest ein Kontaktintensitätssensor zusammen angeordnet mit oder in der Nähe von einer berührungsempfindlichen Oberfläche (z. B. das berührungsempfindliche Anzeigesystem 112). In einigen Ausführungsformen ist zumindest ein Kontaktintensitätssensor auf der Rückseite der Vorrichtung 100 angeordnet, gegenüberliegend der Berührungsbildschirmanzeige 112, welche auf der Vorderseite der Vorrichtung 100 angeordnet ist.
  • Die Vorrichtung 100 umfasst auch optional einen oder mehrere Näherungssensoren 166. 1A zeigt den Näherungssensor 166, welcher mit der Peripheriegeräteschnittstelle 118 gekoppelt ist. Alternativ wird der Näherungssensor 166 mit der Eingabesteuereinheit 160 in dem I/O-Subsystem 106 gekoppelt. In einigen Ausführungsformen schaltet der Näherungssensor den Berührungsbildschirm 112 ab und deaktiviert diesen, wenn die Multifunktionsvorrichtung sich in der Nähe des Ohrs des Benutzers befindet (z. B. wenn der Benutzer einen Telefonanruf tätigt).
  • Die Vorrichtung 100 umfasst auch optional einen oder mehrere taktile Ausgabegeneratoren 167. 1A zeigt einen taktilen Ausgabegenerator, welcher mit der haptischen Rückmeldesteuereinheit 161 in dem I/O-Subsystem 106 gekoppelt ist. Der taktile Ausgabegenerator 167 umfasst optional eine oder mehrere elektroakustische Vorrichtungen, wie beispielsweise Lautsprecher oder andere Audiokomponenten und/oder elektromechanische Vorrichtungen, welche Energie in lineare Bewegung konvertieren, wie beispielsweise ein Motor, eine Magnetspule, ein elektroaktives Polymer, piezoelektrischer Aktuator, elektrostatischer Aktuator, oder eine andere taktile Ausgabe-erzeugende Komponente (z. B. eine Komponente, welche elektrische Signale in taktile Ausgaben auf der Vorrichtung konvertiert). Der Kontaktintensitätssensor 165 empfängt taktile Rückmeldeerzeugungsinstruktionen von dem haptischen Rückmeldungsmodul 133 und erzeugt taktile Ausgaben auf der Vorrichtung 100, welche fähig sind, durch einen Benutzer der Vorrichtung 100 erfasst zu werden. In einigen Ausführungsformen ist zumindest ein taktiler Ausgabegenerator zusammen angeordnet mit oder in der Nähe von einer berührungsempfindlichen Oberfläche (z. B. berührungsempfindliches Anzeigesystem 112) und erzeugt optional eine taktile Ausgabe durch vertikales Bewegen der berührungsempfindlichen Oberfläche (z. B. hinein/heraus aus einer Oberfläche der Vorrichtung 100) oder seitliches Bewegen dieser (z. B. nach hinten und nach vorne in der gleichen Ebene wie eine Oberfläche der Vorrichtung 100). In einigen Ausführungsformen ist zumindest ein taktiler Ausgabegeneratorsensor auf der Rückseite der Vorrichtung 100 angeordnet, gegenüberliegend der Berührungsbildschirmanzeige 112, welche auf der Vorderseite der Vorrichtung 100 angeordnet ist.
  • Die Vorrichtung 100 umfasst auch optional einen oder mehrere Beschleunigungsmesser 168. 1A zeigt den Beschleunigungsmesser 168, welcher mit der Peripheriegeräteschnittstelle 118 gekoppelt ist. Alternativ ist der Beschleunigungsmesser 168 optional mit einer Eingabesteuereinheit 160 in dem I/O-Subsystem 106 gekoppelt. In einigen Ausführungsformen wird die Information auf der Berührungsbildschirmanzeige in einer Portraitansicht oder einer Landschaftsansicht, basierend auf einer Analyse von Daten angezeigt, welche von dem einen oder den mehreren Beschleunigungsmessern empfangen werden. Die Vorrichtung 100 umfasst optional zusätzlich zu dem Beschleunigungsmesser/den Beschleunigungsmessern 168, ein Magnetometer (nicht gezeigt) und einen GPS(oder GLONASS oder anderes globales Navigationssystem)-Empfänger (nicht gezeigt) zum Erhalten von Information bezüglich des Orts und der Orientierung (z. B. Portrait oder Landschaft) der Vorrichtung 100.
  • In einigen Ausführungsformen umfassen die Softwarekomponenten, welche in dem Speicher 102 gespeichert sind, ein Betriebssystem 126, ein Kommunikationsmodul (oder Satz von Instruktionen) 128, Kontakt/Bewegungsmodul (oder Satz von Instruktionen) 130, Grafikmodul (oder Satz von Instruktionen) 132, Texteingabemodul (oder Satz von Instruktionen) 134, ein Global Positioning System(GPS)-Modul (oder Satz von Instruktionen) 135, und Anwendungen (oder Satz von Instruktionen) 136. Des Weiteren speichert in einigen Ausführungsformen der Speicher 102 den Vorrichtungs-/globalen internen Zustand 157, wie in 1A und 3 gezeigt. Der Vorrichtungs-/globaler interner Zustand 157 umfasst ein oder mehrere von: aktiver Anwendungszustand, welcher anzeigt, welche Anwendungen, wenn überhaupt welche, derzeitig aktiv sind; dem Anzeigezustand, welcher anzeigt, welche Anwendungen, Ansichten oder andere Information verschiedene Bereiche der Berührungsbildschirmanzeige 112 belegen; Sensorzustand, einschließlich Information, welche von den verschiedenen Sensoren der Vorrichtung und Eingabesteuerungsvorrichtungen 116 erhalten werden; und Standortinformation bezüglich des Orts und/oder der Höhe der Vorrichtung.
  • Das Betriebssystem 126 (z. B. Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, oder ein eingebettetes Betriebssystem wie beispielsweise VxWorks) umfasst verschiedene Softwarekomponenten und/oder Treiber zum Steuern und Verwalten allgemeiner Systemaufgaben (z. B. Speicherverwaltung, Speicherungsvorrichtungssteuerung, Leistungsverwaltung, usw.) und ermöglicht Kommunikation zwischen verschiedenen Hardware- und Softwarekomponenten.
  • Das Kommunikationsmodul 128 ermöglicht Kommunikation mit anderen Vorrichtungen über ein oder mehrere externe Ports 124 und umfasst auch verschiedene Softwarekomponenten zum Bearbeiten von Daten, welche durch die HF-Schaltung 108 und/oder den externen Port 124 empfangen wurden. Der externe Port 124 (z. B. Universal Serial Bus (USB), FIREWIRE, usw.) ist angepasst zum direkten Koppeln mit anderen Vorrichtungen oder indirektem Koppeln über ein Netzwerk (z. B. das Internet, drahtloses LAN, usw.). In einigen Ausführungsformen ist der externe Port ein Multi-Pin(z. B. 30-Pin)-Steckverbinder, welcher der gleiche ist wie oder ähnlich ist zu und/oder kompatibel ist mit dem 30-Pin-Steckverbinder, welcher auf iPod(Markenzeichen von Apple Inc.)-Vorrichtungen verwendet wird. In einigen Ausführungsformen ist der externe Port ein Multi-Pin(z. B. 8-Pin)-Steckverbinder, welcher der gleiche ist wie oder ähnlich ist zu und/oder kompatibel ist mit dem 8-Pin-Steckverbinder (z. B. Lightning-Steckverbinder), welcher auf iPhone- und iPod-(Markenzeichen von Apple Inc.)-Vorrichtungen verwendet wird.
  • Das Kontakt/Bewegungsmodul 130 detektiert optional Kontakt mit dem Berührungsbildschirm 112 (in Verbindung mit der Anzeigesteuereinheit 156) und anderen berührungsempfindlichen Vorrichtungen (z. B. einem Touchpad oder einem physischen Klickrad). Das Kontakt/Bewegungsmodul 130 umfasst verschiedene Softwarekomponenten zum Ausführen verschiedener Operationen, bezogen auf Detektion von Kontakt, wie beispielsweise Bestimmen, ob Kontakt aufgetreten ist (z. B. Detektieren eines Finger-nach-unten-Ereignisses), Bestimmen einer Intensität des Kontakts (z. B. die Kraft oder der Druck des Kontakts oder ein Ersatz für die Kraft oder den Druck des Kontakts), Bestimmen, ob es Bewegung des Kontakts gibt und Nachverfolgen der Bewegung über die berührungsempfindliche Oberfläche hinweg (z. B. Detektieren eines oder mehrerer Finger-ziehen-Ereignisse), und Bestimmen, ob der Kontakt aufgehört hat (z. B. Detektieren eines Finger-nach-oben-Ereignisses oder eines Abbruchs des Kontakts).
  • Das Kontakt-/Bewegungsmodul 130 empfängt Kontaktdaten von der berührungsempfindlichen Oberfläche. Das Bestimmen von Bewegung des Kontaktpunktes, das dargestellt wird durch eine Serie von Kontaktdaten, umfasst optional Bestimmen von Geschwindigkeit (Größenordnung), Geschwindigkeit (Größenordnung und Richtung) und/oder einer Beschleunigung (einer Veränderung der Größenordnung und/oder der Richtung) des Kontaktpunktes. Diese Operationen werden optional auf Einzelkontakte (z. B. Einfingerkontakte) oder auf mehrere gleichzeitige Kontakte (z. B. ”Multitouch”-/mehrfache Fingerkontakte) angewendet. In einigen Ausführungsformen erkennt das Kontakt-/Bewegungsmodul 130 und der Anzeigecontroller 156 einen Kontakt auf einem Touchpad.
  • In einigen Ausführungsformen verwendet das Kontakt/Bewegungsmodul 130 einen Satz von ein oder mehreren Intensitätsschwellen, um zu bestimmen, ob eine Operation durch einen Benutzer ausgeführt worden ist (z. B. um zu bestimmen, ob ein Benutzer auf ein Symbol „geklickt” hat). In einigen Ausführungsformen werden zumindest eine Untermenge von den Intensitätsschwellen bestimmt gemäß Softwareparametern (z. B. die Intensitätsschwellen werden nicht bestimmt durch die Aktivierungsschwellen spezieller physischer Aktuatoren und können angepasst werden, ohne Ändern der physischen Hardware der Vorrichtung 100). Zum Beispiel kann eine Maus”klick”schwelle eines Trackpads oder einer Berührungsbildschirmanzeige auf irgendeinen von einem großen Bereich von vordefinierten Schwellenwerten gesetzt werden, ohne das Trackpad oder die Berührungsbildschirmanzeigehardware zu ändern. Zusätzlich werden in einigen Implementierungen einem Benutzer der Vorrichtung Softwareeinstellungen zum Anpassen ein oder mehrerer des Satzes von Intensitätsschwellen bereitgestellt (z. B. durch Anpassen von individuellen Intensitätsschwellen und/oder durch Anpassen einer Vielzahl von Intensitätsschwellen) gleichzeitig mit einem System-Level-Klick”intensitäts”parameter).
  • Das Kontakt-/Bewegungsmodul 130 detektiert optional eine Gesteneingabe durch einen Benutzer. Unterschiedliche Gesten auf der berührungsempfindlichen Oberfläche haben unterschiedliche Kontaktmuster (z. B. unterschiedliche Bewegungen, Timings und/oder Intensitäten der detektierten Kontakte). Somit wird eine Geste durch Detektieren eines bestimmten Kontaktmusters optional detektiert. Zum Beispiel umfasst das Detektieren einer Fingertapgeste ein Detektieren eines Finger-Herunter-Ereignisses, gefolgt von einem Detektieren eines Finger-Herauf-(Abheben)-Ereignisses an derselben Position (oder im Wesentlichen derselben Position) wie das Finger-Herunter-Ereignis (z. B. an der Position eines Symbols). Als ein anderes Beispiel umfasst das Detektieren einer Finger-Wisch-Geste auf der berührungsempfindlichen Oberfläche ein Detektieren eines Finger-Herunter-Ereignisses, gefolgt von einem Detektieren eines oder mehrerer Finger-Ziehen-Ereignisse und anschließend gefolgt von einem Detektieren eines Finger-Herauf-(Abheben)-Ereignisses.
  • Das Grafikmodul 132 umfasst verschiedene bekannte Softwarekomponenten zum Rendern und Darstellen von Grafiken auf dem Berührungsbildschirm 112 oder einer anderen Anzeige umfassend Komponenten zum Ändern der visuellen Wirkung (z. B. Helligkeit, Durchsichtigkeit, Sättigung, Kontrast oder andere visuelle Eigenschaft) von Grafiken, die angezeigt werden. Wie hier verwendet bezeichnet der Ausdruck ”Grafiken” jedes Objekt, das einem Benutzer angezeigt werden kann, einschließlich ohne Beschränkung, Text, Webseiten, Symbole (wie Benutzerschnittstellenobjekte einschließlich Soft Keys), digitale Bilder, Videos, Animationen und Ähnliches.
  • In einigen Ausführungsformen speichert das Grafikmodul 132 Daten, die Grafiken, die zu verwenden sind, repräsentieren. Jeder Grafik ist optional ein entsprechender Code zugeordnet. Das Grafikmodul 132 empfängt von Anwendungen usw. einen oder mehrere Codes, die anzuzeigende Grafiken spezifizieren zusammen mit, falls notwendig, Koordinatendaten und anderen Grafikeigenschaftsdaten und erzeugt dann Bildschirm-Bilddaten zum Ausgeben an den Anzeigecontroller 156.
  • Das haptische Rückmeldungsmodul 133 umfasst verschiedene Softwarekomponenten zum Erzeugen von Instruktionen, welche durch den/die taktilen Ausgabegenerator(en) 167 verwendet werden, um taktile Ausgaben an einem oder mehreren Orten auf der Vorrichtung 100 zu erzeugen in Antwort auf Benutzerinteraktionen mit der Vorrichtung 100.
  • Das Texteingabemodul 134, welches optional eine Komponente des Grafikmoduls 132 ist, stellt Softtastaturen zum Eingeben von Text in verschiedenen Anwendungen bereit (z. B. Kontakte 137, Email 140, IM 141, Browser 147, und jede andere Anwendung, die Texteingabe benötigt).
  • Das GPS-Modul 135 bestimmt die Position der Vorrichtung und stellt diese Information zur Verwendung in verschiedenen Anwendungen bereit (z. B. dem Telefon 138 zur Verwendung in positionsbasiertem Wählen, an die Kamera 143 als Bild-/Videometadaten und an Anwendungen, die positionsbasierte Dienste bereitstellen wie Wetter-Widgets, lokale Gelbe-Seiten-Widgets und Karten-/Navigations-Widgets).
  • Die Anwendungen 136 umfassen optional die folgenden Module (oder Mengen von Instruktionen) oder eine Untermenge oder Obermenge davon:
    • • Kontaktmodul 137 (manchmal bezeichnet als Adressbuch oder Kontaktliste);
    • • Telefonmodul 138;
    • • Videokonferenzmodul 139;
    • • Emailclientmodul 140;
    • • Instant Messaging-(IM)-Modul 141;
    • • Internet-Radio-Modul 142;
    • • Kameramodul 143 für Stand- und/oder Videobilder;
    • • Bildmanagementmodul 144;
    • • Browsermodul 147;
    • • Kalendermodul 148;
    • • Widget-Module 149, welche optional eines oder mehrere der Folgenden enthalten: Wetter-Widget 149-1, Aktien-Widget 149-2, Taschenrechner-Widget 149-3, Wecker-Widget 149-4, Wörterbuch-Widget 149-5 und andere Widgets, die vom Benutzer erhalten werden, sowie benutzererzeugte Widgets 149-6;
    • • Digitales persönliches Assistenz-Modul 150;
    • • Fahrzeugintegrationsmodul 151;
    • • Video- und Musikplayermodul 152, welches optional aus einem Videoplayermodul und einem Musikplayermodul gebildet ist;
    • • Notizmodul 153;
    • • Kartenmodul 154; und/oder
    • • Musikbibliotheksmodul 155.
  • Beispiele anderer Anwendungen 136, die optional im Speicher 102 gespeichert sind, umfassen andere Textverarbeitungsanwendungen, andere Bildbearbeitungsanwendungen, Zeichnungsanwendungen, Präsentationsanwendungen, JAVA-fähige Anwendungen, Verschlüsselung, digitales Rechtemanagement, Spracherkennung und Spracherzeugung.
  • In Verbindung mit dem Berührungsbildschirm 112, dem Anzeigecontroller 156, dem Kontaktmodul 130, dem Grafikmodul 132 und dem Texteingabemodul 134, wird das Kontaktmodul 137 optional verwendet zum Verwalten eines Adressbuches oder einer Kontaktliste (z. B. gespeichert in dem anwendungsinternen Zustand 192 des Kontaktmoduls 137 im Speicher 102 oder im Speicher 270) umfassend: Hinzufügen eines oder mehrerer Name(n) zu dem Adressbuch; Löschen eines oder mehrerer Name(n) aus dem Adressbuch; Verknüpfen einer oder mehrerer Telefonnummer(n), Emailadresse(n), physikalische Adresse(n) oder anderer Informationen mit einem Namen; Verknüpfen eines Bildes mit einem Namen; Kategorisieren und Sortieren von Namen; Bereitstellen von Telefonnummern oder Emailadressen zum Einleiten und/oder Ermöglichen von Kommunikationen durch das Telefon 138, Videokonferenz 139, Email 140, oder IM 141 usw.
  • In Verbindung mit dem HF-Schaltkreis 108, dem Audioschaltkreis 110, dem Lautsprecher 111, dem Mikrofon 113, dem Berührungsbildschirm 112, dem Anzeigecontroller 156, dem Kontaktmodul 130, dem Grafikmodul 132 und dem Texteingabemodul 134 wird das Telefon 138 optional zum Eingeben einer Sequenz von Zeichen verwendet, die einer Telefonnummer entspricht, zum Zugreifen auf eine oder mehrere Telefonnummern in dem Adressbuch 137, zum Ändern einer Telefonnummer, die eingegeben wurde, zum Wählen einer entsprechenden Telefonnummer, zum Führen einer Konversation und Trennen oder Auflegen, wenn die Konversation abgeschlossen ist. Wie oben erwähnt, verwendet die drahtlose Kommunikation einen beliebigen einer Vielzahl von Kommunikationsstandards, Protokollen oder Technologien.
  • In Verbindung mit dem HF-Schaltkreis 108, dem Audioschaltkreis 110, dem Lautsprecher 111, dem Mikrofon 113, dem Berührungsbildschirm 112, dem Anzeigecontroller 156, dem optischen Sensor 164, dem optischen Sensorcontroller 158, dem Kontaktmodul 130, dem Grafikmodul 132, dem Texteingabemodul 134, der Kontaktliste 137 und dem Telefonmodul 138 umfasst das Videokonferenzmodul 139 ausführbare Instruktionen zum Initiieren, Führen und Beenden einer Videokonferenz zwischen einem Benutzer und einem oder mehreren anderen Teilnehmern in Übereinstimmung mit Benutzeranweisungen.
  • In Verbindung mit dem HF-Schaltkreis 108, dem Berührungsbildschirm 112, dem Anzeigecontroller 156, dem Kontaktmodul 130, dem Grafikmodul 132 und dem Texteingabemodul 134 umfasst das Emailclientmodul 140 ausführbare Instruktionen zum Erzeugen, Senden, Empfangen und Verwalten von Email in Reaktion auf Benutzeranweisungen. In Verbindung mit dem Bildmanagementmodul 144 macht es das Emailclientmodul 140 sehr einfach, Emails mit Standbildern oder Videobildern, die mit dem Kameramodul 143 aufgenommen wurden, zu erzeugen und zu senden.
  • In Verbindung mit dem HF-Schaltkreis 108, dem Berührungsbildschirm 112, dem Anzeigecontroller 156, dem Kontaktmodul 130, dem Grafikmodul 132 132 und dem Texteingabemodul 134 umfasst das Instant-Messaging-Modul 141 ausführbare Instruktionen zum Eingeben einer Sequenz von Zeichen, die einer Instant Message entsprechen, zum Verändern zuvor eingegebener Zeichen, zum Senden einer entsprechenden Instant Message (zum Beispiel unter Verwendung eines Short Message Service-(SMS)- oder Multimedia Message Service-(MMS)-Protokolls für telefoniebasierte Instant Messages oder unter Verwendung von XMPP, SIMPLE oder IMPS für internetbasierte Instant Messages) zum Empfangen von Instant Messages und zum Betrachten empfangener Instant Messages. In einigen Ausführungsformen umfassen übertragene und/oder empfangene Instant Messages Grafiken, Fotos, Audiodateien, Videodateien und/oder andere Anhänge, wie sie in einem MMS und/oder einem Enhanced Messaging Service (EMS) unterstützt werden. Wie hier verwendet bezieht sich ”Instant Messaging” sowohl auf telefoniebasierte Nachrichten (z. B. Nachrichten, die unter Verwendung von SMS oder MMS versendet wurden) als auch internetbasierte Nachrichten (z. B. Nachrichten, die unter Verwendung von XMPP, SIMPLE oder IMPS) versendet wurden.
  • In Verbindung mit dem Berührungsbildschirm 112, dem Anzeigesystemcontroller 156, dem Kontaktmodul 130, dem Grafikmodul 132, der Audioschaltung 110, dem Lautsprecher 111 und dem HF-Schaltkreis 108 ist das Internet-Radio-Modul eine prophetische Anwendung Dritter, die ausführbare Instruktionen zum Auswählen und Abspielen von Internet-Radio-Stationen umfasst.
  • In Verbindung mit dem Berührungsbildschirm 112, dem Anzeigecontroller 156, dem/den optischen Sensoren 164, dem optischen Sensorcontroller 158, dem Kontaktmodul 130, dem Grafikmodul 132 und dem Bildmanagementmodul 144 umfasst das Kameramodul 143 ausführbare Instruktionen zum Aufnehmen von Standbildern oder Video (umfassend einen Videostream) und Speichern dieser in den Speicher 102, Verändern von Eigenschaften eines Standbildes oder eines Videos, oder Löschen eines Standbildes oder eines Videos aus dem Speicher 102.
  • In Verbindung mit dem Berührungsbildschirm 112, dem Anzeigecontroller 156, dem Kontaktmodul 130, dem Grafikmodul 132, dem Texteingabemodul 134 und dem Kameramodul 143 umfasst das Bildmanagementmodul 144 ausführbare Instruktionen zum Anordnen, Verändern (z. B. Bearbeiten) oder anderweitiges Manipulieren, Benennen, Löschen, Präsentieren (z. B. in einer digitalen Diashow oder einem Album) und Speichern von Stand- und/oder Videobildern.
  • In Verbindung mit dem HF-Schaltkreis 108, dem Berührungsbildschirm 112, dem Anzeigesystemcontroller 156, dem Kontaktmodul 130, dem Grafikmodul 132 und dem Texteingabemodul 134 umfasst das Browsermodul 147 ausführbare Instruktionen zum Browsen des Internets in Übereinstimmung mit Benutzeranweisungen, einschließlich Suchen, Verweisen auf, Empfangen und Anzeigen von Webseiten oder Teilen davon, sowie von Anhängen und anderen Dateien, die mit Webseiten verknüpft sind.
  • In Verbindung mit dem HF-Schaltkreis 108, dem Berührungsbildschirm 112, dem Anzeigesystemcontroller 156, dem Kontaktmodul 130, dem Grafikmodul 132, dem Texteingabemodul 134, dem Emailclientmodul 140 und dem Browsermodul 147 umfasst das Kalendermodul 148 ausführbare Instruktionen zum Erzeugen, Anzeigen, Verändern und Speichern von Kalendern und Daten, die mit Kalendern verknüpft sind (z. B. Kalendereinträge, To-Do-Listen usw.) in Übereinstimmung mit Benutzeranweisungen.
  • In Verbindung mit dem HF-Schaltkreis 108, dem Berührungsbildschirm 112, dem Anzeigesystemcontroller 156, dem Kontaktmodul 130, dem Grafikmodul 132, dem Texteingabemodul 134 und dem Browsermodul 147 sind die Widget-Module 149 Mini-Anwendungen, die optional durch einen Benutzer heruntergeladen und verwendet werden (z. B. das Wetter-Widget 149-1, das Aktien-Widget 149-2, das Taschenrechner-Widget 149-3, das Wecker-Widget 149-4 und das Wörterbuch-Widget 149-5) oder die durch den Benutzer erzeugt werden können (z. B. das benutzererzeugte Widget 149-6). In einigen Ausführungsformen umfasst ein Widget eine HTML-(Hypertext Markup Language)-Datei, eine CSS-(Cascading Style Sheets)-Datei und eine JavaScript-Datei. In einigen Ausführungsformen umfasst ein Widget eine XML-(Extensible Markup Language)-Datei und eine JavaScript-Datei (z. B. Yahoo! Widgets).
  • In Verbindung mit dem HF-Schaltkreis 108, der Audioschaltung 110, dem Lautsprecher 111, dem Mikrofon 113, dem Berührungsbildschirm 112, dem Anzeigecontroller 156, dem Kontaktmodul 130, dem Grafikmodul 132 und dem Texteingabemodul 134 nimmt das digitale persönliche Assistenz-Modul Sprachbefehle auf und sendet Information, die repräsentativ für die aufgenommenen Sprachbefehle ist, an einen Server, wie den Sever 510 in 5, zur Analyse und antwortet auf die Sprachbefehle basierend auf einer Antwort von dem Server.
  • Das Fahrzeugintegrationsmodul 151 umfasst ausführbare Instruktionen für einen oder mehrere Vermittlungsprozesse, die ein Fahrzeuginformationsanzeigesystem in einem Fahrzeug (z. B. ein Auto, ein Lastwagen, ein Van, usw.) steuern, das eine Benutzerschnittstelle auf einer jeweiligen Anzeige des Fahrzeuginformationsanzeigesystems (z. B. Anzeige 547 des externen Informationspräsentationssystems 540 in 5) bereitstellt, wie für eine Kartografieanwendung oder eine Musikanwendung. Die Fahrzeugintegrationsanwendung wandelt Information von den Anwendungen Dritter zu Inhalt zur Anzeige durch die Fahrzeugintegrationsanwendung auf der jeweiligen Anzeige des Fahrzeuginformationsanzeigesystems um.
  • In Verbindung mit dem Berührungsbildschirm 112 umfasst die Anzeigesystemsteuereinheit 156, das Kontaktmodul 130, das Grafikmodul 132, die Audioschaltung 110, der Lautsprecher 111, die HF-Schaltung 108 und das Browsermodul 147, das Video- und Musikplayermodul 152 ausführbare Instruktionen, welche dem Benutzer erlauben, aufgezeichnete Musik und andere Sounddateien herunterzuladen und wiederzugeben, welche in ein oder mehreren Dateiformaten gespeichert sind, wie beispielsweise MP3- oder AAC-Dateien, und ausführbare Instruktionen zum Anzeigen, Darstellen oder anderweitig Abspielen von Videos (z. B. auf einem Berührungsbildschirm 112 oder auf einer externen verbundenen Anzeige über den externen Port 124). In einigen Ausführungsformen umfasst die Vorrichtung 100 optional die Funktionalität eines MP3-Players, wie beispielsweise einem iPod (Markenzeichen von Apple Inc.).
  • In Verbindung mit dem Berührungsbildschirm 112, dem Anzeigecontroller 156, dem Kontaktmodul 130, dem Grafikmodul 132 und dem Texteingabemodul 134 umfasst das Notizmodul 153 ausführbare Instruktionen zum Erzeugen und Verwalten von Notizen, To-Do-Listen und Ähnlichem in Übereinstimmung mit Nutzeranweisungen.
  • In Verbindung mit dem HF-Schaltkreis 108, dem Berührungsbildschirm 112, dem Anzeigesystemcontroller 156, dem Kontaktmodul 130, dem Grafikmodul 132, dem Texteingabemodul 134, dem GPS-Modul 135 und dem Browsermodul 147 wird das Kartenmodul 154 optional verwendet zum Empfangen, Anzeigen, Modifizieren und Speichern von Karten und Daten, die mit Karten assoziiert sind (z. B. Fahrtrichtungen; Daten bezüglich Einkaufsgeschäften und anderen Punkten von Interesse an oder nahe einer bestimmten Örtlichkeit; und anderen örtlichkeitsbasierten Daten) in Übereinstimmung mit Benutzeranweisungen.
  • In Verbindung mit dem Berührungsbildschirm 112, dem Anzeigesystemcontroller 156, dem Kontaktmodul 130, dem Grafikmodul 132, dem Audioschaltkreis 110, dem Lautsprecher 111 und dem HF-Schaltkreis ist das Musikbibliotheksmodul 155 eine prophetische Anwendung Dritter, die ausführbare Instruktionen zum Auswählen und Abspielen von Songs aus einer Musikbibliothek umfasst.
  • Jedes der oben identifizierten Module und Anwendungen entspricht einer Menge von ausführbaren Instruktionen zum Ausführen einer oder mehrerer Funktionen, wie sie oben beschrieben sind, und der Verfahren, wie sie in dieser Anmeldung beschrieben sind (z. B. die computerimplementierten Verfahren und andere Informationsverarbeitungsverfahren, wie sie hier beschrieben sind). Diese Module (d. h. Sätze von Instruktionen) müssen nicht als separate Softwareprogramme, Prozeduren oder Module implementiert sein und somit werden verschiedene Untermengen dieser Module optional kombiniert und anderweitig zusammengefügt in verschiedenen Ausführungsformen. In einigen Ausführungsformen speichert der Speicher 102 optional eine Untermenge der Module und Datenstrukturen, wie sie oben beschrieben sind. Ferner speichert der Speicher 102 optional zusätzliche Module und Datenstrukturen, die oben nicht beschrieben sind.
  • In einigen Ausführungsformen ist die Vorrichtung 100 eine Vorrichtung, bei der die Bedienung einer vorbestimmten Menge von Funktionen auf der Vorrichtung ausschließlich durch ein Berührungsbildschirm und/oder ein Touchpad ausgeführt wird. Durch Verwenden eines Berührungsbildschirms und/oder eines Touchpads als primäre Eingabesteuervorrichtung für den Betrieb der Vorrichtung 100 wird die Anzahl physikalischer Eingabesteuervorrichtungen (wie Push Buttons, Dials und Ähnliches) auf der Vorrichtung 100 reduziert.
  • Der vordefinierte Satz von Funktionen, die ausschließlich durch einen Berührungsbildschirm und/oder ein Touchpad ausgeführt werden, umfassen optional eine Navigation zwischen Benutzerschnittstellen. In einigen Ausführungsformen navigiert das Touchpad, wenn es durch einen Benutzer berührt wird, die Vorrichtung 100 zu einem Haupt-, Home- oder Wurzelmenü ausgehend von einer beliebigen Benutzerschnittstelle, die optional auf der Vorrichtung 100 angezeigt wird. In solchen Ausführungsformen wird eine ”Menütaste” unter Verwendung eines Touchpads implementiert. In einigen anderen Ausführungsformen ist die Menütaste ein physikalischer Push Button oder eine andere physikalische Eingabesteuervorrichtung anstelle des Touchpads.
  • 1B ist ein Blockdiagramm, das beispielhafte Komponenten zur Ereignisbehandlung in Übereinstimmung mit einigen Ausführungsformen darstellt. In einigen Ausführungsformen umfasst der Speicher 102 (in 1A) oder 370 (3) einen Ereignissortierer 170 (z. B. in dem Betriebssystem 126) und eine entsprechende Anwendung 136-1 (z. B. irgendeine der zuvor erwähnten Anwendungen 137-13, 155, 380 bis 390).
  • Der Ereignissortierer 170 empfängt Ereignisinformation und bestimmt die Anwendung 136-1 und die Anwendungsansicht 191 der Anwendung 136-1, zu der die Ereignisinformation geliefert werden soll. Der Ereignissortierer 170 umfasst einen Ereignismonitor 171 und ein Ereigniszuteilermodul 174. In einigen Ausführungsformen umfasst die Anwendung 136-1 einen anwendungsinternen Status 192, der die aktuell auf der berührungsempfindlichen Anzeige 112 angezeigte Anwendungsansicht(en) anzeigt, wenn die Anwendung aktiv ist oder ausgeführt wird. In einigen Ausführungsformen wird ein Vorrichtungs-/globaler interner Status 157 von dem Ereignissortierer 170 verwendet zum Bestimmen, welche Applikation(en) gegenwärtig aktiv ist bzw. sind und der anwendungsinterne Status 192 wird durch den Ereignissortierer 170 verwendet, um die Anwendungsansichten 191 zu bestimmen, an die die Ereignisinformation zu liefern ist.
  • In einigen Ausführungsformen umfasst der anwendungsinterne Status 192 zusätzliche Informationen sowie eines oder mehrere von: Wiederaufnahmeinformation, die verwendet wird, wenn die Anwendung 136-1 mit ihrer Ausführung fortfährt; Benutzerschnittstellenzustandsinformation, die Information anzeigt, die angezeigt wird oder die bereit ist, angezeigt zu werden durch die Anwendung 136-1, eine Zustandsqueue, um es dem Benutzer zu ermöglichen, zurückzugehen zu einem früheren Zustand oder einer früheren Ansicht der Anwendung 136-1 und eine Wiederholen/Rückgängigmachen-Queue vorhergehender Aktionen, die der Benutzer ausgeführt hat.
  • Der Ereignismonitor 171 empfängt Ereignisinformation von der Peripherieschnittstelle 118. Die Ereignisinformation umfasst Informationen über ein Subereignis (z. B. ein Berühren eines Benutzers auf der berührungsempfindlichen Anzeige 112 als Teil einer Multi-Touch-Geste). Die Peripherieschnittstelle 118 sendet Informationen, die sie von dem I/O-Subsystem 106 oder einem Sensor, wie dem Näherungssensor 166, dem/den Beschleunigungsmesser(n) 168 und/oder dem Mikrofon 113 (durch den Audioschaltkreis 110) empfängt. Informationen, die die Peripherieschnittstelle 118 von dem I/O-Subsystem 106 empfängt, umfasst Informationen von der berührungsempfindlichen Anzeige 112 oder einer berührungsempfindlichen Oberfläche.
  • In einigen Ausführungsformen sendet der Ereignismonitor 171 Anfragen an die Peripherieschnittstelle 118 in vorbestimmten Intervallen. In Reaktion darauf sendet die Peripherieschnittstelle 118 Ereignisinformationen. In anderen Ausführungsformen sendet die Peripherieschnittstelle 118 Ereignisinformationen nur, wenn es ein signifikantes Ereignis gibt (z. B. ein Empfangen einer Eingabe oberhalb eines vorbestimmten Rauschschwellwertes und/oder für mehr als eine vorbestimmte Zeitdauer).
  • In einigen Ausführungsformen umfasst der Ereignissortierer 170 auch ein Trefferansichts-Bestimmungsmodul 172 und/oder ein aktives Ereigniserkenner-Bestimmungsmodul 173.
  • Das Trefferansichts-Bestimmungsmodul 172 stellt Softwareprozeduren zum Bestimmen bereit, wo ein Subereignis stattgefunden hat innerhalb einer oder mehrerer Ansichten, wenn die berührungsempfindliche Anzeige 112 mehr als eine Ansicht anzeigt. Ansichten bestehen aus Steuerelementen und anderer Elementen, die ein Benutzer auf der Anzeige sehen kann.
  • Ein anderer Aspekt der Benutzerschnittstelle, die mit einer Anwendung verknüpft ist, ist eine Menge von Ansichten, hier manchmal als Anwendungsansichten oder Benutzerschnittstellenfenster bezeichnet, in denen Information angezeigt ist und berührungsbasierte Gesten auftreten. Die Anwendungsansichten (einer entsprechenden Anwendung), in denen eine Berührung erkannt wird, entsprechen optional programmatischen Ebenen innerhalb einer programmatischen oder Ansichtshierarchie der Anwendung. Zum Beispiel wird die Ansicht der niedrigsten Ebene, in der eine Berührung erkannt wird, optional als Trefferansicht bezeichnet und die Menge der Ereignisse, die erkannt wird als korrekte Eingaben, wird optional zumindest teilweise basierend auf der Trefferansicht der initialen Berührung, die eine berührungsbasierte Geste beginnt, bestimmt werden.
  • Das Trefferansichts-Bestimmungsmodul 172 empfängt Informationen bezüglich Subereignissen einer berührungsbasierten Geste. Wenn eine Anwendung mehrfache Ansichten aufweist, die in einer Hierarchie organisiert sind, identifiziert das Trefferansichts-Bestimmungsmodul 172 eine Trefferansicht als die niedrigste Ansicht in der Hierarchie, die das Subereignis behandeln sollte. In den meisten Fällen ist die Trefferansicht die Ansicht der niedrigsten Ebene, in der ein initiierendes Subereignis auftritt (d. h. das erste Subereignis in der Sequenz von Subereignissen, die ein Ereignis oder ein potenzielles Ereignis ausbilden). Sobald die Trefferansicht identifiziert ist durch das Trefferansichts-Bestimmungsmodul, empfängt die Trefferansicht typischerweise alle Subereignisse, die mit derselben Berührungs-/oder Eingabequelle verbunden sind, für die sie als Trefferansicht identifiziert wurde.
  • Das aktive Ereigniserkenner-Bestimmungsmodul 173 bestimmt, welche Ansicht oder Ansichten innerhalb einer Ansichtshierarchie eine bestimmte Sequenz von Subereignissen empfangen sollte. In einigen Ausführungsformen bestimmt das aktive Ereigniserkenner-Bestimmungsmodul 173, dass nur die Trefferansicht eine bestimmte Sequenz von Subereignissen empfangen sollte. In anderen Ausführungsformen bestimmt das aktive Ereigniserkenner-Bestimmungsmodul 173, dass alle Ansichten, die die physische Allokation eines Subereignisses beinhalten, aktiv involvierte Ansichten sind und bestimmt daher, dass alle aktiv involvierten Ansichten eine bestimmte Sequenz von Subereignissen empfangen sollten. In anderen Ausführungsformen würden Ansichten, die höher in der Hierarchie angeordnet sind, weiterhin als aktiv involvierte Ansichten verbleiben, selbst wenn Berührungssubereignisse vollständig auf den Bereich begrenzt wären, der mit einer bestimmten Ansicht verknüpft ist.
  • Das Ereigniszuteilermodul 174 teilt die Ereignisinformation einem Ereigniserkenner zu (z. B. dem Ereigniserkenner 180). In Ausführungsformen, die das aktive Ereigniserkenner-Bestimmungsmodul 173 umfassen, liefert das Ereigniszuteilermodul 174 die Ereignisinformation an einen Ereigniserkenner, der durch das aktive Ereigniserkenner-Bestimmungsmodul 173 bestimmt wird. In manchen Ausführungsformen speichert das Ereigniszuteilermodul 174 die Ereignisinformation in einer Ereignisqueue, die von einem entsprechenden Ereignisempfängermodul 182 abgefragt wird.
  • In einigen Ausführungsformen umfasst das Betriebssystem 126 einen Ereignissortierer 170. Alternativ umfasst die Anwendung 136-1 einen Ereignissortierer 170. In wieder anderen Ausführungsformen ist der Ereignissortierer 170 ein eigenständiges Modul oder ein Teil eines anderen Moduls, das im Speicher 102 gespeichert ist, wie das Kontakt/Bewegungsmodul 130.
  • In einigen Ausführungsformen umfasst die Anwendung 136-1 eine Vielzahl von Ereignishandlern 190 und eine oder mehr Anwendungsansichten 191, von denen jede Instruktionen zum Behandeln von Berührungsereignissen umfasst, die innerhalb einer entsprechenden Ansicht der Anwendungsbenutzerschnittstelle auftreten. Jede Anwendungsansicht 191 der Anwendung 136-1 umfasst einen oder mehrere Ereigniserkenner 180. Typischerweise umfasst eine entsprechende Anwendungsansicht 191 eine Vielzahl von Ereigniserkennern 180. In anderen Ausführungsformen sind einer oder mehrere der Ereigniserkenner 180 Teil eines separaten Moduls, wie eines Benutzerschnittstellen-Kits (nicht gezeigt) oder eines Objekts einer höheren Ebene, von der die Anwendung 136-1 Methoden und andere Eigenschaften erbt. In einigen Ausführungsformen umfasst ein entsprechender Ereignishandler 190 eines oder mehrere der Folgenden: einen Datenaktualisierer 176, einen Objektaktualisierer 177, einen GUI-Aktualisierer 178 und/oder Ereignisdaten 179, die von einem Ereignissortierer 170 empfangen wurden. Der Ereignishandler 190 verwendet optional den Datenaktualisierer 176, den Objektaktualisierer 177 oder den GUI-Aktualisierer 178 oder ruft diese auf zum Aktualisieren des anwendungsinternen Status 192. Alternativ umfassen eine oder mehrere der Anwendungsansichten 191 einen oder mehrere entsprechende Ereignishandler 190. Auch sind in einigen Ausführungsformen einer oder mehrere des Datenaktualisierers 176, des Objektaktualisierers 177 und des GUI-Aktualisierers 178 in einer entsprechenden Anwendungsansicht 191 enthalten.
  • Ein entsprechender Ereigniserkenner 180 empfängt Ereignisinformationen (z. B. Ereignisdaten 179) von dem Ereignissortierer 170 und identifiziert ein Ereignis aus der Ereignisinformation. Der Ereigniserkenner 180 beinhaltet Ereignisempfänger 182 und Ereignisvergleicher 184. In einigen Ausführungsformen beinhaltet der Ereigniserkenner 180 auch mindestens eine Untermenge von: Metadaten 183 und Ereignislieferinstruktionen 188 (welche optional Subereignislieferinstruktionen beinhalten).
  • Der Ereignisempfänger 182 empfängt Ereignisinformation von dem Ereignissortierer 170. Die Ereignisinformation beinhaltet Informationen über ein Subereignis, z. B. eine Berührung oder eine Berührungsbewegung. Abhängig von dem Subereignis beinhaltet die Ereignisinformation auch zusätzliche Information wie den Ort des Subereignisses. Wenn das Subereignis eine Bewegung einer Berührung betrifft, umfasst die Ereignisinformation optional auch Geschwindigkeit und Richtung des Subereignisses. In einigen Ausführungsformen beinhalten Ereignisse eine Rotation der Vorrichtung von einer Orientierung in eine andere (z. B. von einer aufrechten Orientierung in eine waagerechte Orientierung oder umgekehrt) und die Ereignisinformation beinhaltet entsprechende Information über die aktuelle Orientierung (auch bezeichnet als Vorrichtungslage) der Vorrichtung.
  • Der Ereignisvergleicher 184 vergleicht die Ereignisinformation mit vorbestimmten Ereignis- oder Subereignisdefinitionen und, basierend auf dem Vergleich, bestimmt ein Ereignis oder ein Subereignis oder bestimmt oder aktualisiert den Zustand eines Ereignisses oder eines Subereignisses. In einigen Ausführungsformen beinhaltet der Ereignisvergleicher 184 Ereignisdefinitionen 186. Die Ereignisdefinitionen 186 enthalten Definitionen von Ereignissen (z. B. vorbestimmte Sequenzen von Subereignissen), z. B. Ereignis 1 (187-1), Ereignis 2 (187-2) und andere. In einigen Ausführungsformen umfassen Subereignisse in einem Ereignis 187 z. B. einen Berührungsbeginn, ein Berührungsende, eine Berührungsbewegung, einen Berührungsabbruch und mehrfache Berührung. In einem Beispiel ist die Definition für ein Ereignis 1 (187-1) ein Doppeltap auf einem angezeigten Objekt. Zum Beispiel umfasst der Doppeltap eine erste Berührung (Berührungsbeginn) auf dem angezeigten Objekt für eine vorbestimmte Phase, ein erstes Abheben (Berührungsende) für eine vorbestimmte Phase, eine zweite Berührung (Berührungsbeginn) auf dem angezeigten Objekt für eine bestimmte Phase und ein zweites Abheben (Berührungsende) für eine vorbestimmte Phase. In einem anderen Beispiel ist die Definition für das Ereignis 2 (187-2) ein Ziehen eines angezeigten Objekts. Zum Beispiel umfasst das Ziehen ein Berühren (oder einen Kontakt) auf dem angezeigten Objekt für eine vorbestimmte Phase, ein Bewegen der Berührung über die berührungsempfindliche Anzeige 112 und ein Abheben des Berührens (Berührungsende). In einigen Ausführungsformen umfasst das Ereignis auch Informationen für einen oder mehrere zugehörige Ereignishandler 190.
  • In einigen Ausführungsformen umfasst die Ereignisdefinition 187 eine Definition eines Ereignisses für ein entsprechendes Benutzerschnittstellenobjekt. In einigen Ausführungsformen führt der Ereignisvergleicher 184 einen Treffertest aus zum Bestimmen, welches Benutzerschnittstelleobjekt mit einem Subereignis verknüpft ist. In einer Anwendungsansicht z. B., in der drei Benutzerschnittstellenobjekte angezeigt werden auf der berührungsempfindlichen Anzeige 112, wenn eine Berührung auf der berührungsempfindlichen Anzeige 112 festgestellt wird, führt der Ereignisvergleicher 184 einen Treffertest aus, um zu bestimmen, welches der drei Benutzerschnittstellenobjekte mit der Berührung (Subereignis) verknüpft ist. Wenn jedes angezeigte Objekt mit einem entsprechenden Ereignishandler 190 verknüpft ist, verwendet der Ereignisvergleicher das Ergebnis des Treffertests, um zu bestimmen, welcher Ereignishandler 190 aktiviert werden sollte. Zum Beispiel wählt der Ereignisvergleicher 184 einen Ereignishandler aus, der mit dem Subereignis assoziiert ist und mit dem Objekt, das den Treffertest auslöst.
  • In einigen Ausführungsformen beinhaltet die Definition für ein entsprechendes Ereignis 187 auch verzögerte Aktionen, die das Liefern der Ereignisinformation verzögern, bis bestimmt wurde, ob die Sequenz von Subereignissen dem Ereignistyp des Ereigniserkenners entspricht oder nicht.
  • Wenn ein entsprechender Ereigniserkenner 180 bestimmt, dass die Serie von Subereignissen keinem der Ereignisse in den Ereignissen in den Ereignisdefinitionen 186 entspricht, geht der entsprechende Ereigniserkenner 180 in einen Zustand Ereignis nicht möglich, Ereignis gescheitert oder Ereignis beendet, nachdem er nachfolgende Subereignisse der berührungsbasierten Geste ignoriert. In dieser Situation fahren andere Ereigniserkenner, sofern es solche gibt, die aktiv für die Trefferansicht verbleiben, mit dem Verfolgen und Verarbeiten von Subereignissen einer andauernden berührungsbasierten Geste fort.
  • In einigen Ausführungsformen beinhaltet ein entsprechender Ereigniserkenner 180 Metadaten 183 mit konfigurierbaren Eigenschaften, Flags und/oder Listen, die anzeigen, wie das Ereignisliefersystem Subereignislieferungen ausführen sollte an aktiv involvierte Ereigniserkenner. In einigen Ausführungsformen beinhalten die Metadaten 183 konfigurierbare Eigenschaften, Flags und/oder Listen, die anzeigen, wie Ereigniserkenner miteinander interagieren oder aktiviert werden miteinander zu interagieren. In einigen Ausführungsformen beinhalten die Metadaten 183 konfigurierbare Eigenschaften, Flags und/oder Listen, die anzeigen, ob Subereignisse an variierende Ebenen in der Ansicht oder der programmatischen Hierarchie geliefert werden.
  • In einigen Ausführungsformen aktiviert ein entsprechender Ereigniserkenner 180 den Ereignishandler 190, der mit einem Ereignis assoziiert ist, wenn eines oder mehrere bestimmte Subereignisse eines Ereignisses erkannt werden. In einigen Ausführungsformen liefert ein entsprechender Ereigniserkenner 180 Ereignisinformationen, die mit dem Ereignis assoziiert sind, an den Ereignishandler 190. Das Aktivieren eines Ereignishandlers 190 ist verschieden vom Senden (und vom verzögerten Senden) von Subereignissen an eine entsprechende Trefferansicht. In einigen Ausführungsformen wirft der Ereigniserkenner 180 ein Flag aus, das mit dem erkannten Ereignis assoziiert ist, und der Ereignishandler 190, der mit dem Flag assoziiert ist, erfasst das Flag und führt einen vordefinierten Prozess aus.
  • In einigen Ausführungsformen umfassen die Ereignislieferinstruktionen 188 Subereignislieferinstruktionen, die Ereignisinformationen liefern über ein Subereignis ohne ein Aktivieren eines Ereignishandlers. Stattdessen liefern die Subereignislieferinstruktionen Ereignisinformationen an Ereignishandler, die mit der Serie von Subereignissen assoziiert sind oder an aktiv involvierte Ansichten. Ereignishandler, die mit der Serie von Subereignissen assoziiert sind oder mit aktiv involvierten Ansichten, empfangen die Ereignisinformationen und führen einen vorbestimmten Prozess aus.
  • In einigen Ausführungsformen erzeugt und aktualisiert der Datenaktualisierer 176 Daten, die in der Anwendung 136-1 verwendet werden. Zum Beispiel aktualisiert der Datenaktualisierer 176 die Telefonnummer, die in dem Kontaktmodul 137 verwendet wird, oder speichert eine Videodatei, die in dem Videoplayermodul 145 verwendet wird. In einigen Ausführungsformen erzeugt und aktualisiert der Objektaktualisierer 177 Objekte, die in der Anwendung 136-1 verwendet werden. Zum Beispiel erzeugt der Objektaktualisierer 176 ein neues Benutzerschnittstellenobjekt oder aktualisiert die Position eines Benutzerschnittstellenobjekts. Der GUI-Aktualisierer 178 aktualisiert die GUI. Zum Beispiel bereitet der GUI-Aktualisierer 178 Anzeigeinformationen vor und sendet sie an das Grafikmodul 132 zum Anzeigen auf einer berührungsempfindlichen Anzeige.
  • In einigen Ausführungsformen beinhaltet der/die Ereignishandler 190 oder haben der/die Ereignishandler 190 Zugriff auf den Datenaktualisierer 176, den Objektaktualisierer 177 und den GUI-Aktualisierer 178. In einigen Ausführungsformen sind der Datenaktualisierer 176, der Objektaktualisierer 177 und der GUI-Aktualisierer 178 in einem einzigen Modul einer entsprechenden Anwendung 136-1 oder einer Anwendungsansicht 191 enthalten. In anderen Ausführungsformen sind sie in zwei oder mehr Softwaremodulen enthalten.
  • Es ist festzuhalten, dass die vorstehende Diskussion bezüglich Ereignisbehandlung von Benutzerberührungen auf der berührungsempfindlichen Anzeige auch auf andere Formen von Benutzereingaben zum Betreiben der Multifunktionsvorrichtungen 100 mit Eingabevorrichtungen anzuwenden sind, von denen nicht alle auf Berührungsbildschirms initiiert werden. Zum Beispiel werden Mausbewegungen und das Maustastendrücke, welche mit einzelnen oder mehrfachen Tastaturdrücken oder -Halten koordiniert werden; Kontaktbewegungen wie beispielsweise Tippen, Ziehen, Scrollen usw. auf Touchpads; Stiftstyluseingaben; Bewegen der Vorrichtung; mündliche Anweisungen; detektierte Augenbewegungen; biometrische Eingaben; und/oder jede Kombination davon als Eingaben verwendet entsprechend Subereignissen, die ein Ereignis definieren, das erkannt werden soll.
  • 2 stellt eine tragbare Multifunktionsvorrichtung 100 dar, die einen Berührungsbildschirm 112 aufweist in Übereinstimmung mit einigen Ausführungsformen. Der Berührungsbildschirm stellt optional eine oder mehrere Grafiken innerhalb einer Benutzerschnittstelle (UI) 200 dar. In dieser Ausführungsform, wie auch in anderen, die unten beschrieben sind, wird einem Benutzer ermöglicht eine oder mehrere der Grafiken auswählen durch Durchführen einer Geste auf den Grafiken, z. B. mit einem oder mehreren Fingern 202 (nicht maßstabsgetreu gezeichnet in der Figur) oder einem oder mehreren Stylus 203 (nicht maßstabsgetreu gezeichnet in der Figur). In einigen Ausführungsformen tritt das Wählen einer oder mehrerer Grafiken auf, wenn der Benutzer den Kontakt mit einer oder mehreren Grafiken unterbricht. In einigen Ausführungsformen umfasst die Geste optional ein oder mehrere Tipp-Bewegungen (taps), eine oder mehrere Wischbewegungen (von links nach rechts, von rechts nach links, aufwärts und/oder abwärts) und/oder ein Rollen eines Fingers (von rechts nach links, von links nach rechts, aufwärts und/oder abwärts), der mit der Vorrichtung 100 in Kontakt steht. In einigen Implementierungen oder Umständen wählt unbeabsichtigter Kontakt mit einer Grafik die Grafik nicht aus. Zum Beispiel wählt eine Wischgeste, die über ein Anwendungssymbol wischt, optional die entsprechende Anwendung nicht aus, wenn die Geste zum Auswählen ein Tippen ist.
  • Die Vorrichtung 100 umfasst optional auch einen oder mehrere physikalische Knöpfe, wie einen ”Home” oder Menü-Button 204. Wie zuvor beschrieben wird der Menü-Button 204 optional verwendet zum Navigieren jeder Anwendung 136 in einem Satz von Anwendungen, die optional auf der Vorrichtung 100 ausgeführt werden. Alternativ ist in einigen Ausführungsformen der Menü-Button als Soft Key in einer GUI, die auf dem Berührungsbildschirm 112 angezeigt wird, implementiert.
  • In einer Ausführungsform umfasst die Vorrichtung 100 einen Berührungsbildschirm 112, einen Menü-Button 204, einen Push-Button 206 zum Ein- oder Ausschalten der Vorrichtung und zum Sperren der Vorrichtung, Lautstärkeregel-Knopf/Knöpfe 208, einen Subscriber-Identity-Module-(SIM)-Kartenschacht 210, eine Kopfhörerbuchse 212 und einen Docking-/Lade-externen Port 124. Der Push-Button 206 wird optional verwendet zum Ein- und Ausschalten der Vorrichtung durch Hinunterdrücken des Buttons und Festhalten des Buttons in dem gedrückten Zustand für eine vorbestimmte Zeitdauer; zum Sperren der Vorrichtung durch Hinunterdrücken des Buttons und Loslassen des Buttons vor Ablauf der vorbestimmten Zeitdauer und/oder zum Entsperren der Vorrichtung oder zum Initiieren eines Entsperrvorgangs. In einer alternativen Ausführungsform akzeptiert die Vorrichtung 100 auch verbale Eingaben zur Aktivierung oder Deaktivierung einiger Funktionen durch das Mikrofon 113. Die Vorrichtung 100 umfasst optional auch ein oder mehrere Kontaktintensitätssensoren 165 zum Detektieren von Intensität der Kontakte auf dem Berührungsbildschirm 112 und/oder einen oder mehrere taktile Ausgabegeneratoren 167 zum Erzeugen von taktilen Ausgaben für einen Benutzer der Vorrichtung 100.
  • 3 ist ein Blockdiagramm einer beispielhaften Multifunktionsvorrichtung mit einer Anzeige und einer berührungsempfindlichen Oberfläche in Übereinstimmung mit einigen Ausführungsformen. Die Vorrichtung 300 muss nicht tragbar sein. In einigen Ausführungsformen ist die Vorrichtung 300 ein Laptop Computer, ein Desktop Computer, ein Tablet Computer, eine Multimediaspielervorrichtung, eine Navigationsvorrichtung, eine Lernvorrichtung (wie ein Lernspielzeug eines Kindes), ein Spielesystem oder eine Steuervorrichtung (z. B. ein Haus- oder industrieller Controller). Die Vorrichtung 300 umfasst typischerweise eine oder mehrere Verarbeitungseinheiten (CPUs) 310, eine oder mehrere Netzwerk- oder andere Kommunikationsschnittstellen 360, Speicher 370 und einen oder mehrere Kommunikationsbusse 320 zum Verbinden dieser Komponenten. Die Kommunikationsbusse 320 umfassen optional einen Schaltkreis (manchmal als Chipset bezeichnet), der Kommunikationen zwischen Systemkomponenten verbindet und steuert. Die Vorrichtung 300 umfasst eine Eingabe-/Ausgabe-(I/O)-Schnittstelle 330 umfassend die Anzeige 340, die typischerweise eine Berührungsbildschirm-Anzeige (z. B. Berührungsbildschirm-Anzeige 112) ist. Die I/O-Schnittstelle 330 umfasst optional auch eine Tastatur und/oder eine Maus (oder eine andere Zeigevorrichtung) 350 und ein Touchpad 355, einen taktilen Ausgabegenerator 357 zum Erzeugen von taktilen Ausgaben auf der Vorrichtung 300 (z. B. ähnlich dem/den taktilen Ausgabegenerator(en) 167 wie oben beschrieben mit Verweis auf 1A), Sensoren 359 (z. B. optische, Beschleunigungs-, Näherungs-, berührungsempfindliche, und/oder Kontaktintensitätssensoren ähnlich dem/den Kontaktintensitätssensor(en) 165 wie oben beschrieben mit Verweis auf 1A). Der Speicher 370 umfasst Hochgeschwindigkeits-Random-Access-Speicher wie DRAM, SRAM, DDR RAM oder andere Random-Access-Solid-State-Speichervorrichtungen; und umfasst optional nichtflüchtigen Speicher, wie eine oder mehrere magnetische Diskspeichervorrichtungen, optische Diskspeichervorrichtungen, Flash-Speichervorrichtungen, oder andere nichtflüchtige Solid-State-Speichervorrichtungen. Der Speicher 370 umfasst optional eine oder mehrere Speichervorrichtungen, die entfernt von der/den CPU(s) 310 angeordnet sind. In einigen Ausführungsformen speichert der Speicher 370 Programme, Module und Datenstrukturen analog zu den Programmen, Modulen und Daten-strukturen, die in dem Speicher 102 der tragbaren Multifunktionsvor-richtung 100 gespeichert sind (1) oder eine Teilmenge davon. Ferner speichert der Speicher 370 optional zusätzliche Programme, Module und Datenstrukturen, die nicht in dem Speicher 102 der tragbaren Multifunktionsvorrichtung 100 vorliegen. Zum Bespiel speichert der Speicher 370 der Vorrichtung 300 optional ein Zeichenmodul 380, ein Präsentationsmodul 382, ein Textverarbeitungsmodul 384, ein Webseiten-Erstellungsmodul 386, ein Disk-Authoring-Modul 388 und/oder Tabellenkalkulationsmodul 390, während der Speicher 102 der tragbaren Multifunktionsvorrichtung 100 (1A) diese Module optional nicht speichert.
  • Jedes der oben identifizierten Elemente in 3 wird optional in einer oder in mehreren der zuvor beschriebenen Speichervorrichtungen gespeichert. Jedes der oben identifizierten Module entspricht einer Menge von Instruktionen zum Ausführen einer Funktion wie oben beschrieben. Die oben identifizierten Module oder Programme (d. h. Mengen von Instruktionen) müssen nicht als separate Softwareprogramme, Prozeduren oder Module implementiert sein, und somit werden verschiedene Untermengen dieser Module optional kombiniert oder anderweitig in verschiedenen Ausführungsformen zusammengefügt. In einigen Ausführungsformen speichert der Speicher 370 optional eine Teilmenge der Module und Datenstrukturen speichern, die oben identifiziert sind. Ferner kann der Speicher 370 zusätzliche Module und Datenstrukturen speichern, die oben nicht beschrieben sind.
  • Die Aufmerksamkeit wird nun gerichtet auf Ausführungsformen der Benutzerschnittstellen (”UI”), die optional auf einer tragbaren Multifunktionsvorrichtung 100 implementiert ist.
  • 4A zeigt eine beispielhafte Benutzerschnittstelle für ein Menü von Anwendungen auf einer tragbaren Multifunktionsvorrichtung 100 in Übereinstimmung mit einigen Ausführungsformen. Ähnliche Benutzerschnittstellen sind auf der Vorrichtung 300 optional implementiert. In einigen Ausführungsformen beinhaltet die Benutzerschnittstelle 400 die folgenden Elemente oder eine Teilmenge oder eine Obermenge davon:
    • • Signalstärkenindikator(en) 402 für drahtlose Kommunikation(en), wie Mobilfunk- und Wi-Fi-Signale;
    • • Zeit 404;
    • • Bluetooth-Indikator 405;
    • • Batteriestatusindikator 406;
    • • Tray 408 mit Symbolen für häufig verwendete Anwendungen, wie:
    • – Symbol 416 für das Telefonmodul 138, bezeichnet „Telefon”, welches optional einen Hinweis 414 der Zahl von verpassten Anrufen oder Voicemail-Nachrichten umfasst;
    • – Symbol 418 für das Email-Client-Modul 140, bezeichnet „Mail”, welches optional einen Hinweis 410 der Anzahl von ungelesenen Emails umfasst;
    • – Symbol 420 für das Browsermodul 147, bezeichnet „Browser”; und
    • – Symbol 422 für das Video- und Musikplayermodul 152, auch bezeichnet als iPod (Markenzeichen von Apple Inc.)-Modul 152, bezeichnet „iPod”; und
    • • Symbole anderer Anwendungen, wie beispielsweise:
    • – Symbol 424 für IM-Modul 141, bezeichnet „Text”;
    • – Symbol 426 für das Kalendermodul 148, bezeichnet „Kalender”;
    • – Symbol 428 für das Bildverwaltungsmodul 144, bezeichnet „Fotos”;
    • – Symbol 430 für das Kameramodul 143, bezeichnet „Kamera”;
    • – Symbol 432 für das Musikbibliotheksmodul 155, bezeichnet „Musikbibliothek”;
    • – Symbol 434 für das Aktien-Widget 149-2, bezeichnet „Aktien”;
    • – Symbol 436 für das Kartenmodul 154, bezeichnet „Karte”
    • – Symbol 438 für das Wetter-Widget 149-1, bezeichnet „Wetter”;
    • – Symbol 440 für das Wecker-Widget 149-4, bezeichnet „Uhr”;
    • – Symbol 442 für das Internet-Radio-Modul 142, bezeichnet „Internet-Radio”;
    • – Symbol 444 für das Notizenmodul 153, bezeichnet „Notizen”; und
    • – Symbol 446 für eine Einstellungsanwendung oder -modul, welches Zugriff auf Einstellungen für die Vorrichtung 100 und ihre verschiedenen Anwendungen 136 bereitstellt.
  • Es ist klar, dass die Symbolbezeichnungen, welche in 4A gezeigt sind, lediglich beispielhaft sind. Zum Beispiel ist das Symbol 422 für das Video- und Musikplayermodul 152 bezeichnet „Musik” oder „Musikplayer”. Andere Bezeichnungen werden optional verwendet für verschiedene Anwendungssymbole. In einigen Ausführungsformen umfasst eine Bezeichnung für ein jeweiliges Anwendungssymbol einen Namen einer Anwendung, welche dem jeweiligen Anwendungssymbol entspricht. In einigen Ausführungsformen ist eine Bezeichnung für ein spezielles Anwendungssymbol verschieden von einem Namen einer Anwendung, welches dem speziellen Anwendungssymbol entspricht.
  • 4B zeigt eine beispielhafte Benutzerschnittstelle auf einer Vorrichtung (z. B. Vorrichtung 300, 3) mit einer berührungsempfindlichen Oberfläche 451 (z. B. ein Tablet oder Touchpad 355, 3), welches getrennt ist von der Anzeige 450 (z. B. Berührungsbildschirmanzeige 112). Die Vorrichtung 300 umfasst auch optional ein oder mehrere Kontaktintensitätssensoren (z. B. ein oder mehrere der Sensoren 357) zum Detektieren von Intensität von Kontakten auf der berührungsempfindlichen Oberfläche 451, und/oder ein oder mehrere taktile Ausgabegeneratoren 359 zum Erzeugen von taktilen Ausgaben für einen Benutzer der Vorrichtung 300.
  • Wenngleich einige der Beispiele, die folgen werden, unter Verweis auf Eingaben auf einer Berührungsbildschirm Anzeige 112 gegeben sein werden (wobei die berührungsempfindliche Oberfläche und die Anzeige kombiniert sind), erkennt die Vorrichtung in einigen Ausführungsformen Eingaben auf einer berührungsempfindlichen Oberfläche, die separat ist von der Anzeige, wie in 4B gezeigt. In einigen Ausführungsformen hat die berührungsempfindliche Oberfläche (z. B. 451 in 4B) eine primäre Achse (z. B. 452 in 4B), die einer primären Achse entspricht (z. B. 453 in 4B) auf der Anzeige (z. B. 450). In Übereinstimmung mit diesen Ausführungsformen erkennt die Vorrichtung Kontakte (z. B. 460 und 462 in 4B) mit der berührungsempfindlichen Oberfläche 451 an Positionen, die entsprechenden Positionen auf der Anzeige entsprechen (z. B. entspricht in 4B 460 der 468 und 462 entspricht der 470). Auf diese Weise werden Benutzereingaben (z. B. Kontakte 460 und 462 und Bewegungen davon), die durch die Vorrichtung auf der berührungsempfindlichen Oberfläche erkannt werden (z. B. 451 in 4B), von der Vorrichtung verwendet, um die Benutzerschnittstelle auf der Anzeige (z. B. 450 in 4B) der Multifunktionsvorrichtung zu manipulieren, wenn die berührungsempfindliche Oberfläche separat von der Anzeige ist. Es ist anzumerken, dass ähnliche Verfahren für andere Benutzerschnittstellen, die hier beschrieben sind, optional verwendet werden.
  • 5 stellt ein Blockdiagramm einer Betriebsumgebung 500 gemäß einigen Ausführungsformen dar. Die Betriebsumgebung 500 beinhaltet einen Server 510, ein oder mehrere Kommunikationsnetzwerke 505, tragbare Multifunktionsvorrichtungen 100 und ein externes Informationspräsentationssystem 540. Bei einigen Ausführungsformen ist das externe Informationspräsentationssystem 540 in einem Fahrzeug implementiert.
  • Der Server 510 beinhaltet typischerweise eine oder mehrere Verarbeitungseinheiten (CPUs) 512 zum Ausführen von Modulen, Programmen und/oder Instruktionen, die in einem Speicher 524 gespeichert sind, und wodurch Verarbeitungsoperationen ausgeführt werden, ein oder mehrere Netzwerk- oder andere Kommunikationsschnittstellen 520, Speicher 524 und ein oder mehrere Kommunikationsbusse 522 zum Verbinden dieser Komponenten. Die Kommunikationsbusse 522 können optionalerweise Schaltungen (manchmal als ein Chipset bezeichnet) beinhalten, welche die Systemkomponenten verbinden und die Kommunikationen zwischen diesen steuern. Der Speicher 524 beinhaltet Hochgeschwindigkeitsspeicher mit wahlfreiem Zugriff, wie DRAM, SRAM, DDR RAM oder andere Solid-State-Speichervorrichtungen mit wahlfreiem Zugriff und kann nichtflüchtigen Speicher, wie eine oder mehrere magnetische Diskspeichervorrichtungen, optische Diskspeichervorrichtungen, Flashspeichervorrichtungen oder andere nichtflüchtige Solid-State-Speichervorrichtungen beinhalten. Der Speicher 524 kann optionalerweise eine oder mehrere Speichervorrichtungen, welche entfernt von der/den CPU(s) 512 platziert sind, beinhalten. Der Speicher 524, oder alternativ die nichtflüchtige(n) Speichervorrichtung(en) innerhalb des Speichers 524, weisen ein nichtflüchtiges computerlesbares Speichermedium auf. Bei einigen Ausführungsformen speichert der Speicher 524, oder das computerlesbare Speichermedium des Speichers 524, die folgenden Programme, Module und Datenstrukturen oder eine Untermenge hieraus:
    • – ein Betriebssystem 526, welches Prozeduren zur Handhabung unterschiedlicher grundlegender Systemdienste und zum Ausführen von Hardware-abhängigen Tasks beinhaltet; und
    • – ein Netzwerkkommunikationsmodul 528, das zum Verbinden (drahtgebunden oder drahtlos) des Servers 510 mit anderen Rechenvorrichtungen über die eine oder mehreren Kommunikationsnetzwerkschnittstellen 520 und ein oder mehrere Kommunikationsnetzwerke 505, wie dem Internet, anderen überregionalen Netzwerken (wide area networks), lokalen Netzwerken (local area networks), großstädtischen Netzwerken (metropolitan area networks), usw. verwendet wird.
  • Die tragbare Multifunktionsvorrichtung 100 beinhaltet typischerweise die Komponenten, die unter Bezugnahme auf 1A1B und/oder 3 beschrieben wurden.
  • Das externe Informationspräsentationssystem 540 beinhaltet typischerweise eine oder mehrere Verarbeitungseinheiten (CPUs) 542 zum Ausführen von Modulen, Programmen und/oder Instruktionen, welche in einem Speicher 554 gespeichert sind und wodurch Verarbeitungsoperationen ausgeführt werden, eine oder mehrere Netzwerk- oder andere Kommunikationsschnittstellen 550, einen Speicher 554 und einen oder mehrere Kommunikationsbusse 552 zum Verbinden dieser Komponenten. Das externe Informationspräsentationssystem 540 beinhaltet optionalerweise eine Benutzerschnittstelle 546, die eine Anzeigevorrichtung 547 und Steuerungen 548 aufweist (z. B. mechanische Affordanzen, Knöpfe oder Griffe, eine berührungsempfindliche Oberfläche wie eine Berührungsbildschirmanzeige oder andere Eingabequellen). Bei einigen Ausführungsformen ist die Anzeige 547 eine Berührungsbildschirmanzeige, die in der Lage ist, Berührungseingaben eines Benutzers zu empfangen. Die Kommunikationsbusse 552 beinhalten optionalerweise Schaltungen (manchmal als ein Chipset bezeichnet), die die Systemkomponenten verbinden und die Kommunikationen zwischen diesen steuern. Der Speicher 554 beinhaltet Hochgeschwindigkeitsspeicher mit wahlfreiem Zugriff, wie DRAM, SRAM, DDR RAM oder andere Solid-State-Speichervorrichtungen mit wahlfreiem Zugriff, und beinhaltet optionalerweise nichtflüchtigen Speicher, wie eine oder mehrere magnetische Diskspeichervorrichtungen, optische Diskspeichervorrichtungen, Flashspeichervorrichtungen oder andere nichtflüchtige Solid-State-Speichervorrichtungen. Der Speicher 554 beinhaltet optionalerweise eine oder mehrere Speichervorrichtungen, die entfernt von der/den CPU(s) 542 platziert sind. Der Speicher 552, oder alternativ die nichtflüchtige(n) Speichervorrichtung(en) innerhalb des Speichers 552, weisen ein nichtflüchtiges computerlesbares Speichermedium auf. Bei einigen Ausführungsformen speichert der Speicher 552, oder das computerlesbare Speichermedium des Speichers 552, die folgenden Programme, Module und Datenstrukturen, oder eine Untermenge hieraus:
    • – ein Betriebssystem 556, welches Prozeduren beinhaltet, zur Handhabung von unterschiedlichen grundlegenden Systemdiensten und zum Ausführen von Hardware-abhängigen Tasks; und
    • – ein Netzwerkkommunikationsmodul 558, welches zum Verbinden (drahtgebunden oder drahtlos) eines Servers 540 mit anderen Rechenvorrichtungen über die eine oder die mehreren Kommunikationsnetzwerkschnittstellen 550 und das eine oder die mehreren Kommunikationsnetzwerke 505, wie dem Internet, anderen überregionalen Netzwerken (wide area networks), lokalen Netzwerken (local area networks), großstädtischen Netzwerken (metropolitan area networks), usw. verwendet wird.
  • Bei einigen Ausführungsformen betreibt die Vorrichtung 100 eine Anzeige 547 eines Systems 540. Beispielsweise sendet die Vorrichtung 100 ein Videosignal an das System 540 und die CPU 542 des Systems 540 rendert das Videosignal auf der Anzeige 547. Bei einigen Ausführungsformen sendet die Vorrichtung 100 ein Videosignal direkt an die Anzeige 547 und die CPU 542 wird nicht verwendet, um das Videosignal zu rendern (z. B. verwendet die Vorrichtung 100 die Anzeige 547 als eine Hilfsanzeige). Bei einigen Ausführungsformen ist die auf dem Berührungsbildschirm 112 der Vorrichtung 100 dargestellte Benutzerschnittstelle mit der Benutzerschnittstelle, die auf dem Display 547 des Systems 540 angezeigt wird, synchronisiert, und, bei einigen Ausführungsformen ist die Benutzerschnittstelle, die auf dem Berührungsbildschirm 112 der Vorrichtung 100 angezeigt wird, nicht mit der Benutzerschnittstelle, die auf der Anzeige 547 des Systems 540 angezeigt wird, synchronisiert. Bei einigen Ausführungsformen sendet das System 540 eine einer Benutzereingabe entsprechende Information (z. B. eine Berührungseingabe eines Benutzers auf der Anzeige 547 oder eine Benutzereingabe über Steuerungen 548) zur Vorrichtung 100 und die Vorrichtung 100 aktualisiert die auf dem Berührungsbildschirm 112 der Vorrichtung 100 dargestellte Benutzerschnittstelle gemäß der empfangenen Information.
  • BENUTZERSCHNITTSTELLEN UND ASSOZIIERTE PROZESSE
  • Die Aufmerksamkeit wird nun auf Ausführungsformen von Benutzerschnittstellen (user interfaces, ”UI”) und assoziierten Prozesse, die auf einer elektronischen Vorrichtung mit einer Anzeige und einer berührungsempfindlichen Oberfläche, wie die Vorrichtung 300 oder die tragbare Multifunktionsvorrichtung 100, implementiert werden können, gerichtet.
  • 6A6C stellen beispielhafte Benutzerschnittstellen dar, die von einer Vorlage zur Verwendung mit Anwendungen Dritter gemäß einigen Ausführungsformen erzeugt wurden. Die Benutzerschnittstellen in diesen Figuren werden verwendet, um die nachfolgend beschriebenen Prozesse, einschließlich der Prozesse in 7A7I zu beschreiben.
  • 6A stellt eine Vorlage einer Benutzerschnittstelle 601, die auf einer Anzeige 547 eines externen Informationspräsentationssystems 540 angezeigt wird, dar. Bei einigen Ausführungsformen ist das System 540 in einem Fahrzeug beinhaltet (z. B. in dem Armaturenbrett oder Lenkrad des Fahrzeuges). Bei einigen Ausführungsformen ist die Anzeige 547 eine Berührungsbildschirmanzeige, die eingerichtet ist, eine Berührungseingabe eines Benutzers zu empfangen. 6A stellt weiterhin eine Vielzahl von Benutzerschnittstellenobjekten (manchmal hierin als ”Affordanzen” oder ”auswählbare Benutzerschnittstellenobjekte” bezeichnet) dar, einschließlich einer Anwendungstitelleiste 602, einem vorgegebenen Hauptmenü 604, einem benutzerdefinierten Menü 608, einer Inhaltsauswahlansicht 606, einer aktiven Elementleiste 610 und einem Schließen-Knopf 612. Bei einigen Ausführungsformen beinhaltet die Vorlage der Benutzerschnittstelle weniger Affordanzen als in der Vorlage 601 gezeigt, um die Benutzerschnittstelle weiter zu vereinfachen und eine Ablenkung eines Fahrers zu verhindern.
  • 6B stellt ein Beispiel einer Benutzerschnittstelle, die von der Vorlage der Benutzerschnittstelle 601 erzeugt wurde, dar (z. B. zur Verwendung mit einer Internet-Radio-Anwendung). 6B stellt eine Anwendungstitelleiste 602 dar, welche den Titel der aktuellen Anwendung (z. B. Internet Radio App), ein Hauptmenü 604 mit vorgegebenen Steuerungen (z. B. hoch, herunter, suche, sortiere, usw.), ein benutzerdefiniertes Menü 608 (z. B. Favoriten-Menü) mit anwendungsspezifischen Steuerungen (z. B. filtere Favoriten, Füge Aktuelles den Favoriten, die den anwendungsspezifischen Funktionen entsprechen, hinzu) und einen Schließen-Knopf 612. 6B stellt weiterhin eine Inhaltsauswahlansicht 606 (z. B. Stationsauswahlen) dar, welche Auswahloptionen für die aktuelle Anwendung (z. B. Smooth Jazz-Station 103, koreanische Pop-Station 105, usw.) und eine aktive Elementleiste 610, welche Information hinsichtlich des aktuell aktiven Elements (z. B. Hard-Rock-Station 101) anzeigt.
  • 6C stellt ein Beispiel einer Benutzerschnittstelle dar, die von der Vorlage der Benutzerschnittstelle 601 erzeugt wurde (z. B. zur Verwendung mit einer Musikbibliotheksanwendung), welche sich von der Benutzerschnittstelle, die von der in 6B gezeigten Vorlage 601 erzeugt wurde, unterscheidet. 6C stellt eine Anwendungstitelleiste 602 dar, welche den Titel der aktuellen Anwendung (z. B. Musikbibliotheks-App), ein Hauptmenü 604 mit vorgegebenen Steuerungen (z. B. hoch, herunter, suche, sortiere, usw.), ein benutzerdefiniertes Menü 608 (z. B. Benutzer-Playlist-Menü) mit anwendungsspezifischen Steuerungen (z. B. Playlist 1, Playlist 2, usw.) und einen Schließen-Knopf 612 anzeigt. 6C stellt weiterhin eine Inhaltsauswahlansicht 606 (z. B. Song-Bibliothek) dar, welche Auswahloptionen für die aktuelle Anwendung (z. B. gespeicherter Song 103, gespeicherter Song 105, usw.) und eine aktive Elementleiste 610 anzeigt, welche Information hinsichtlich des aktuell aktiven Elements (z. B. gespeicherter Song 101) anzeigt.
  • Wie in 6B6C gezeigt, wird eine gemeinsame Vorlage (z. B. die Vorlage 601, die in 6A gezeigt ist) optionalerweise zum Erzeugen unterschiedlicher Benutzerschnittstellen für unterschiedliche Anwendungen Dritter verwendet (z. B. ist die Benutzerschnittstelle für die Internet-Radio-Anwendung, die in 6B gezeigt ist, unterschiedlich von der Benutzerschnittstelle für die Musikbibliotheksanwendung, die in 6C gezeigt ist), indem Information, die von den unterschiedlichen Anwendungen Dritter abgerufen wurde, in die Vorlage der Benutzerschnittstelle 601 eingesetzt wird. Die unterschiedlichen Benutzerschnittstellen, die in 6B und 6C gezeigt sind, zeigen jedoch Ähnlichkeiten, die dazu führen, dass es einfacher ist, sie zu verwenden (z. B. werden Affordanzen zur Auswahl von spielbarem Inhalt in der Inhaltsauswahlansicht 606 in beiden der Benutzerschnittstellen der 6B und 6C angezeigt und Information über das aktuell gespielte Medium wird in der aktiven Elementleiste 610 in beiden der Benutzerschnittstellen der 6B und 6C angezeigt). Darüber hinaus setzt die Vorlage optionalerweise eine Mindesttextgröße durch, um sicherzustellen, dass Text, welcher in den Benutzerschnittstellen der 6B und 6C angezeigt wird, leicht zu lesen ist.
  • 7A7I sind Flussdiagramme, die ein beispielhaftes Verfahren 700 zum Bereitstellen von Benutzerschnittstellen für Anwendungen Dritter darstellen. Das Verfahren 700 wird auf einer elektronischen Vorrichtung ausgeführt (z. B. Vorrichtung 300, 3, oder tragbare Multifunktionsvorrichtung 100, 1A). Bei einigen Ausführungsformen beinhaltet die elektronische Vorrichtung eine Anzeige und eine berührungsempfindliche Oberfläche. Bei einigen Ausführungsformen ist die Anzeige eine Berührungsbildschirmanzeige und die berührungsempfindliche Oberfläche befindet sich auf der Anzeige. Bei einigen Ausführungsformen ist die Anzeige getrennt von der berührungsempfindlichen Oberfläche. Einige Operationen werden im Verfahren 700 optionalerweise kombiniert und/oder die Reihenfolge einiger Operationen wird optionalerweise geändert.
  • Wie nachfolgend beschrieben stellt das Verfahren 700 Benutzerschnittstellen für Anwendungen Dritter bereit, die die kognitive Last eines Benutzers beim Interagieren mit Anwendungen Dritter reduzieren, wodurch eine effizientere Mensch-Maschine-Schnittstelle kreiert wird. Bei batteriebetriebenen elektronischen Vorrichtungen wird einem Benutzer ein schnelleres und effizienteres Interagieren mit der Benutzerschnittstelle ermöglicht, wodurch Leistung gespart wird, und sich die Zeit zwischen Batteriewechseln erhöht.
  • Die Vorrichtung empfängt (702) eine erste Anzeigenanfrage zur Anzeige einer Benutzerschnittstelle einer ersten Anwendung Dritter auf einer jeweiligen Anzeige, die in Kommunikation (z. B. über eine drahtgebundene oder drahtlose Verbindung) mit der elektronischen Vorrichtung ist. Beispielsweise empfängt die Vorrichtung eine Eingabe, die einer Aktivierung eines Icons zum Start einer Anwendung für die erste Anwendung Dritter entspricht, von einer Steuerung, die mit der jeweiligen Anzeige assoziiert ist, oder einer Steuerung, die mit der elektronischen Vorrichtung assoziiert ist (z. B. eine Tipp-Geste auf ein Internet-Radio-Icon 442 (4A) für eine Internet-Radio-Anwendung 142 (1A oder 3), oder eine Tipp-Geste auf ein Musik-Bibliotheks-Icon 432 (4A) für eine Musik-Bibliotheks-Anwendung 155 (1A oder 3)). Bei einigen Ausführungsformen ist die jeweilige Anzeige eine Anzeige der Vorrichtung (z. B. Berührungsbildschirm 112 der tragbaren Multifunktionsvorrichtung 100). Bei einigen Ausführungsformen ist die jeweilige Anzeige eine Anzeige, die getrennt von der Vorrichtung ist (z. B. Anzeige 547 des externen Informationspräsentationssystems 540 in 5).
  • In Reaktion auf das Empfangen der ersten Anzeigenanfrage (704) erhält die Vorrichtung (706) eine erste Vorlage einer Benutzerschnittstelle, die eingerichtet (oder gestaltet) ist, von einer Vielzahl von Anwendungen Dritter benutzt zu werden; und die Vorrichtung fragt, von der ersten Anwendung Dritter, einen oder mehrere Werte an (710) zum Befüllen der ersten Vorlage der Benutzerschnittstelle. Bei einigen Ausführungsformen ist die erste Vorlage der Benutzerschnittstelle eine generische oder anwendungsagnostische (oder unabhängige) Vorlage einer Benutzerschnittstelle, die von einer Vielzahl von unterschiedlichen Anwendungen verwendet wird. Beispielsweise erhält die Vorrichtung bei einigen Ausführungsformen die in 6A gezeigte Vorlage einer Benutzerschnittstelle 601.
  • Bei einigen Ausführungsformen ist die jeweilige Anzeige (708) eine Anzeige in einem Fahrzeuginformationsanzeigesystem, welches von einem Fahrersitz eines Fahrzeuges sichtbar ist; und die erste Vorlage der Benutzerschnittstelle ist eine aus einer Vielzahl von vorbestimmten Vorlagen von Benutzerschnittstellen, die eingerichtet sind, um verwendet zu werden, um Benutzerschnittstellen für die Anwendung Dritter auf der jeweiligen Anzeige zu erzeugen, die eine Ablenkung des Fahrers verhindern (z. B. hat die Vielzahl von vorbestimmten Vorlagen große Schriftgrößen und wenige, leicht auswählbare Optionen, die von einem Fahrer ohne den Fahrer vom sicheren Fahren abzulenken, ausgewählt werden können). Somit ermöglicht bei einigen Ausführungsformen die Verwendung dieser vorbestimmten Vorlagen von Benutzerschnittstellen der Vorrichtung dem Benutzer Zugang zur Funktionalität einer oder mehrerer Anwendungen Dritter bereitzustellen, während eine gewisse Kontrolle über die Erscheinung der Benutzerschnittstelle, die auf der jeweiligen Anzeige angezeigt wird, beibehalten wird, um so sicherzustellen, dass die Benutzerschnittstelle auf der jeweiligen Anzeige einfach und intuitiv bedienbar ist.
  • Bei einigen Ausführungsformen werden Werte bei der ersten Anwendung Dritter in einer Baumstruktur 711 angeordnet, die eine Vielzahl von Knoten beinhaltet, die vorbestimmte Eigenschaften und eine Baumbeziehung (z. B. eine Eltern-Beziehung oder eine Kind-Beziehung) mit einem oder mehreren anderen Knoten in der Baumstruktur beinhaltet. Bei einigen Ausführungsformen beinhaltet die Anfrage nach einem oder mehreren Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle eine oder mehrere von: eine Anfrage zur Rückgabe von Werten, die einer Liste von Kind-Knoten eines jeweiligen Knoten aus der Vielzahl der Knoten entsprechen (z. B. für einen Knoten, welcher einem Künstler entspricht, entsprechen die Kinderknoten Songs des Künstlers oder Alben von dem Künstler); eine Anfrage zur Rückgabe von Werten, die einer Liste an Eigenschaften eines jeweiligen Knoten von der Vielzahl der Knoten entsprechen; eine Anfrage zum Bereitstellen von Inhalt, der durch den jeweiligen Knoten repräsentiert wird (z. B. eine Anfrage zum Bereitstellen von Audio-Inhalt, welcher einer Audio-Datei entspricht, einen Audio-Stream, eine Video-Datei, einen Video-Stream und/oder eine Playlist oder Radio-Station, die einer Vielzahl von individuellen Inhaltseinheiten entsprechen); eine Anfrage zum Bereitstellen einer Liste von Knoten, die einer Suchanfrage entsprechen (z. B. eine Anfrage zum Bereitstellen einer Liste von Künstlern, Alben, Songs, Radio-Stationen, Hörbüchern, Podcasts oder Ähnliches, welche mit einem Satz von einem oder mehreren Suchbegriffen übereinstimmen, und, optionalerweise, logischen Operatoren, die die Suchbegriffe verbinden); und eine Anfrage zum Bereitstellen einer Liste von Aktionen, die für die erste Anwendung Dritter spezifisch ist, die genommen werden kann, während Zugriff auf Inhalt, der mit der ersten Anwendung Dritter assoziiert ist, bereitgestellt wird (z. B. ”like”, ”überspringe”, ”füge den Favoriten hinzu”, ”markiere” oder andere anwendungsspezifische Operationen). Bei einigen Ausführungsformen beinhalten die Eigenschaften eines jeweiligen Knoten ein oder mehrere von: Grafik für den jeweiligen Knoten, einen Bezeichner für den jeweiligen Knoten, eine Dauer von Medieninhalt, die mit dem jeweiligen Knoten assoziiert ist, einen Titel des jeweiligen Knoten (einen Titel eines aktuell gespielten Stückes oder einer Radiostation), einen Untertitel des jeweiligen Knoten (z. B. ein Künstler eines aktuell gespielten Songs oder eines Stückes einer aktuell gespielten Radio-Station), ein Spielbar-Flag, welches anzeigt, ob der jeweilige Knoten spielbar ist oder nicht, ein Gespieltes-Flag, welches anzeigt, ob der jeweilige Knoten bereits gespielt wurde oder nicht und/oder ein Container-Flag, welches anzeigt, ob der jeweilige Knoten ein Container ist, welcher Kind-Knoten hat.
  • Die Vorrichtung empfängt (712), von der ersten Anwendung Dritter, während die erste Anwendung Dritter auf der elektronischen Vorrichtung läuft, einen ersten Satz an Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle (z. B. Empfangen einer Liste von Namen von Internet-Streaming-Radio-Stationen). Beispielsweise zeigt 6B die Vorlage einer Benutzerschnittstelle 601, die mit Daten von einer Anwendung, die als ”Internet-Radio-App” bezeichnet ist, befüllt wurde.
  • Bei einigen Ausführungsformen werden ein oder mehrere der Werte in dem ersten Satz an Werten von einer entfernten Quelle (z. B. ein Server, der mit der ersten Anwendung Dritter in Kommunikation steht, wie Server 510 in 5) durch die erste Anwendung Dritter in Reaktion auf die Anfrage nach einem oder mehreren Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle abgerufen (713). Zum Beispiel initiiert die erste Anwendung Dritter, wenn eine Streaming-Internet-Radio-Station für das Spielen ausgewählt wurde, ein Senden einer Anfrage an einen entfernten Server, um ein Streamen der Streaming-Internet-Radio-Station zu beginnen, und fragt einen Namen eines Liedes und Künstlers und eine entsprechende Albumgrafik für ein zu spielendes Lied von der Streaming-Internet-Radio-Station an. Die erste Anwendung Dritter empfängt diese Werte und überträgt diese Werte an einen Vermittlerprozess zur Aufnahme in eine ”jetzt wird gespielt”-(”now playing”)-Vorlage einer Benutzerschnittstelle, welche der Vermittlerprozess an die jeweilige Anzeige übertragen wird.
  • Bei einigen Ausführungsformen beinhaltet die Vorrichtung (714) einen digitalen persönlichen Assistenzprozess mit Spracherkennungsfähigkeiten (z. B. einen digitalen persönlichen Assistenten 150, der Sprachbefehle aufzeichnet und Information, die die aufgezeichneten Sprachbefehle repräsentiert, an einen Server wie den Server 510 in 5 zur Analyse sendet und auf die Sprachbefehle basierend auf einer Antwort von dem Server antwortet). Bei einigen Ausführungsformen bestimmt die Vorrichtung (715) die Fähigkeiten der ersten Anwendung Dritter basierend auf Antworten von der ersten Anwendung Dritter auf eine Vielzahl von Anfragen zur Anwendung Dritter nach Werten, die mit dem Befüllen der Vorlagen der Benutzerschnittstelle für Benutzerschnittstellen für die jeweilige Anzeige assoziiert sind (z. B. durchläuft der digitale persönliche Assistenzprozess eine Baumstruktur an Metadaten für die erste Anwendung Dritter und bildet die unterschiedlichen Optionen und Metadaten, die über die erste Anwendung Dritter zugänglich sind, ab). Bei einigen Ausführungsformen erzeugt die Vorrichtung (716) einen Index der Fähigkeiten der ersten Anwendung Dritter (z. B. basierend auf der Abbildung der unterschiedlichen Optionen und Metadaten, die über die erste Anwendung Dritter zugänglich sind). Bei einigen Ausführungsformen stellt die Vorrichtung Sprachzugriff auf die Fähigkeiten der ersten Anwendung Dritter über den digitalen persönlichen Assistenzprozess bereit (718) (z. B. einem Benutzer ermöglichen, Sprachbefehle zu verwenden, um eine Anzeige einer Liste der Songs eines bestimmten Künstlers, eine Anzeige einer Liste von Internet-Streaming-Radio-Stationen, die zum Spielen verfügbar sind, ein Abspielen eines bestimmten Songs eines bestimmten Künstlers oder Suchen durch eine Medien-Präsentations-Anwendung nach Medien, die mit einer verbal formulierten Suchanfrage übereinstimmen, anzufragen). Beispielsweise würde der persönliche Assistent für eine Streaming-Internet-Radio-Anwendung die Baumstruktur von Metadaten für verfügbare Streaming-Internet-Radio-Stationen und anderen Operationen, die durch die Streaming-Internet-Radio-Anwendung ausgeführt werden können, durchqueren und indizieren. Danach wird dem Benutzer ermöglicht, dem digitalen persönlichen Assistenten verbale Befehle bereitzustellen, um das Spielen einer Radio-Station zu beginnen, um das Spielen einer Radio-Station zu beenden, eine neue Radio-Station basierend auf einem aktuellen Song zu erzeugen, einen Song zu überspringen, oder eine andere Operation unter Verwendung von Sprachbefehlen, die an den digitalen persönlichen Assistenten gerichtet sind (z. B. ”Assistent, bitte spiele Künstler X Radio-Station”, ”Assistent, bitte überspringe diesen Song”, ”Assistent, bitte liste alle Radio-Stationen, die in der letzten Woche erzeugt wurden” oder ”Assistent, bitte markiere diesen Song als einen Favoriten”.)
  • Bei einigen Ausführungsformen erkennt die Vorrichtung (720), dass eine vorbestimmte Bedingung eingetroffen ist. In Reaktion auf das Erkennen, dass die vorbestimmte Bedingung eingetroffen ist, bestimmt die Vorrichtung nochmals (721) die Fähigkeiten der ersten Anwendung Dritter und erzeugt nochmals den Index der Fähigkeiten der ersten Anwendung Dritter (z. B. werden die unterschiedlichen Optionen, die über die erste Anwendung Dritter zugänglich sind, neu indiziert: wenn die Vorrichtung in Kommunikation mit der jeweiligen Anzeige gesetzt wird (wie die Anzeige 547 des externen Informationspräsentationssystems 540 (5)), wenn die Vorrichtung mit einem Fahrzeuginformationsanzeigesystem, welches die jeweilige Anzeige beinhaltet, verbunden wird, und/oder wenn die erste Anwendung Dritter gestartet wird). Beispielsweise wird, für eine Streaming-Internet-Radio-Anwendung, die Verfügbarkeit der Streaming-Internet-Radio-Stationen optionalerweise basierend auf der Verfügbarkeit einer Internetverbindung zum Empfangen der Streaming-Internet-Radio-Station bestimmt; ähnlich, falls der Benutzer eine neue Radio-Station erzeugt/abonniert oder eine alte Radio-Station löscht/abbestellt, ändern sich die mit der Streaming-Internet-Radio-Anwendung assoziierten Metadaten (z. B. welche Radio-Stationen Knoten in der Baumstruktur sind und/oder welche Radio-Stationen spielbar sind). Um die sich ändernden Metadaten bei der Streaming-Internet-Radio-Anwendung zu adressieren, indiziert die Vorrichtung periodisch die Metadaten bei der Streaming-Internet-Radio-Anwendung von neuem (z. B. wenn die Streaming-Internet-Radio-Anwendung gestartet wird oder wenn die Vorrichtung mit einem Fahrzeuginformationsanzeigesystem verbunden wird). Bei einigen Ausführungsformen informiert die Anwendung Dritter den digitalen persönlichen Assistenten proaktiv, dass ein Teil der Metadaten sich geändert hat oder aktualisiert wurde, und veranlasst den digitalen persönlichen Assistenten, diesen Teil (oder alle) der Metadaten der Anwendung Dritter neu zu indizieren. Der digitale persönliche Assistent indiziert diesen Teil (oder alle) der Metadaten der Anwendung Dritter in Reaktion auf das Empfangen der Information, dass der Teil der Metadaten sich geändert hat oder beim nächsten Mal, wenn die Anwendung Dritter gestartet wird, von neuem.
  • Die Vorrichtung befüllt (722) die erste Vorlage der Benutzerschnittstelle mit dem ersten Satz an Werten, die von der ersten Anwendung Dritter empfangen wurde. Beispielsweise zeigt 6B in Übereinstimmung mit diesen Ausführungsformen die Vorlage der Benutzerschnittstelle 601, die mit Daten von einer Anwendung Dritter, die als ”Internet Radio App” bezeichnet ist, befüllt ist (z. B. Stations-Auswahlen, Favoriten, aktuelle Station, usw.), um die Benutzerschnittstelle für die Anwendung Dritter, die auf der Anzeige 547 in 6C angezeigt wird, zu erzeugen.
  • Bei einigen Ausführungsformen wird die erste Vorlage der Benutzerschnittstelle von einer Vielzahl von unterschiedlichen Anwendungen Dritter verwendet, einschließlich (724) der ersten Anwendung Dritter und einer zweiten Anwendung Dritter. Bei einigen Ausführungsformen beinhaltet das Befüllen der ersten Vorlage der Benutzerschnittstelle mit Werten, die von einer jeweiligen Anwendung Dritter empfangen wurden, ein Einsetzen von Werten, die von der jeweiligen Anwendung Dritter so identifiziert wurden, dass sie zu einer ersten Klasse von Werten in einer vordefinierten Region mit einer vordefinierten Schriftgröße in einer Benutzerschnittstelle, die der jeweiligen Anzeige bereitgestellt wird, angehören. Für die erste Vorlage der Benutzerschnittstelle identifiziert die erste Anwendung Dritter einen ersten Typ von Information als die erste Klasse von Werten und die zweite Anwendung Dritter identifiziert einen zweiten Typ von Information, der sich von dem ersten Typ an Information unterscheidet, als die erste Klasse von Werten. Beispielsweise zeigt 6B eine Vorlage einer Benutzerschnittstelle 601, die mit Werten befüllt ist, die sich auf Internet-Radio-Stationen beziehen, und 6C zeigt eine Vorlage einer Benutzerschnittstelle 601, die mit Werten befüllt ist, die sich auf gespeicherte Songs beziehen. Gemäß diesen Ausführungsformen zeigen 6B und 6C Vorlagen einer Benutzerschnittstelle mit den gleichen Schriftgrößen.
  • Bei einigen Ausführungsformen, für die erste Vorlage einer Benutzerschnittstelle: Die erste Anwendung Dritter identifiziert (726) die Namen von entfernt-generierten Inhalts-Stationen (z. B. Streaming-Internet-Radio-Stationen) als die erste Klasse an Werten; und die zweite Anwendung Dritter identifiziert die Namen von vorbestimmten Playlists als die erste Klasse an Werten. Bei einigen Ausführungsformen unterscheidet sich eine vorbestimmte Playlist von einer Streaming-Internet-Radio-Station, weil eine vorbestimmte Playlist eine gesetzte Länge hat, und die Inhalte der Playlist zu der Zeit festgesetzt werden, zu der der Benutzer die Playlist zum Abspielen auswählt, wohingegen eine Streaming-Internet-Radio-Station ein kontinuierlicher Stream von Musik unbestimmter Länge ist, der so lange fortdauert, wie der Benutzer zuhört, und beinhaltet Inhalt, der entfernt ausgewählt wurde (z. B. automatisch von einem Computer gemäß einem Musik-Auswahl-Algorithmus, oder manuell von einem Discjockey, Radio-Host oder einer anderen Person unabhängig von Handlungen eines Benutzers der Vorrichtung). Beispielsweise identifiziert die Vorrichtung in 6B bis 6C die Namen von Streaming-Internet-Radio-Stationen als die erste Klasse an Werten (z. B. Beschreibungen von spielbaren Medieninhaltselementen) für die Internet-Radio-Anwendung (z. B. 142, 1A) in 6B und die Vorrichtung identifiziert die Namen von Songs als die erste Klasse an Werten für die Musikbibliotheksanwendung (z. B. 155, 1A) in 6C.
  • Bei einigen Ausführungsformen, für die erste Vorlage der Benutzerschnittstelle: Die erste Anwendung Dritter identifiziert (728) die Namen von Inhalt, welcher zu der Vorrichtung gestreamt werden kann (z. B. On-Demand-Streaming von Musik oder anderen Medieninhalt über ein verteiltes Datennetzwerk wie das Internet) als die erste Klasse an Werten; und die zweite Anwendung Dritter identifiziert die Namen von Inhalt, welcher auf der Vorrichtung gespeichert ist (z. B. Sprachlernprogramme, Hörbücher, Musik, Podcasts oder Ähnliches) als die erste Klasse an Werten.
  • Die Vorrichtung erzeugt (730) eine erste Benutzerschnittstelle für die erste Anwendung Dritter unter Verwendung der ersten Vorlage der Benutzerschnittstelle, die mit dem ersten Satz an Werten befüllt wird. Beispielsweise stellt 6B eine Benutzerschnittstelle dar, die von der Vorlage der Benutzerschnittstelle 601 und Werten, die von einer Internet-Radio-Anwendung empfangen wurden, erzeugt wurde. Gemäß diesem Beispiel zeigt 6B ein vorgegebenes Hauptmenü 604, welches einen Info-Knopf (z. B. zur Rückgabe von Werten, die mit einer Liste an Eigenschaften eines jeweiligen Knoten korrespondieren), einen Aktivierungsknopf (z. B. zum Bereitstellen von Inhalt, welcher durch den jeweiligen Knoten repräsentiert wird), einen Suchknopf (z. B. zum Bereitstellen einer Liste an Knoten, die mit einer Suchanfrage übereinstimmen) und das benutzerdefinierte Menü 608 mit benutzerdefinierten Knöpfen (z. B. zum Bereitstellen einer Liste von Aktionen, die für die erste Anwendung Dritter spezifisch ist, und die vorgenommen werden kann, während Zugriff auf Inhalt, der mit der ersten Anwendung Dritter assoziiert ist, bereitgestellt wird).
  • Bei einigen Ausführungsformen beinhaltet die Vorrichtung (732) eine Vielzahl an Prozessen, einschließlich eines Prozesses einer ersten Anwendung Dritter zum Ausführen der ersten Anwendung Dritter und einen Satz von einem oder mehreren Vermittlungsprozess (z. B. eine Anwendung zum Integrieren von Anwendungen Dritter mit einem Fahrzeuginformationsanzeigesystem wie ein Navigation- oder Unterhaltungssystem oder ein anderes externes Informationsanzeigesystem, wie das externe Informationspräsentationssystem 540 aus 5), um Information zwischen der jeweiligen Anzeige und dem Prozess der ersten Anwendung Dritter zu übermitteln. Bei einigen Ausführungsformen wird die Anfrage des einen oder der mehreren Werte zum Befüllen der ersten Vorlage der Benutzerschnittstelle von einem Vermittlungsprozess aus dem Satz von einem oder mehreren Vermittlungsprozessen erzeugt; und die erste Benutzerschnittstelle wird von einem Vermittlungsprozess aus dem Satz von einen oder mehreren Vermittlungsprozessen erzeugt. Beispielsweise hat ein Smartphone (z. B. die tragbare Multifunktionsvorrichtung 100 aus 5) eine Fahrzeugintegrationsanwendung 151 (z. B. eine Anwendung, welche einen oder mehrere Vermittlungsprozesse beinhaltet), die ein Fahrzeuginformationsanzeigesystem in dem Fahrzeug (z. B. ein Auto, ein Lastwagen, ein Van, usw.) steuert, das eine Benutzerschnittstelle auf einer jeweiligen Anzeige des Fahrzeuginformationsanzeigesystems (z. B. Anzeige 547 des externen Informationspräsentationssystems 540 in 5) bereitstellt, wie für eine Kartografieanwendung oder eine Musikanwendung. Das Smartphone hat ebenso eine oder mehrere Anwendungen Dritter, wie eine getrennte Podcasting-Anwendung oder eine Streaming-Internet-Radio-Anwendung, und die Fahrzeugintegrationsanwendung wandelt Information von den Anwendungen Dritter zu Inhalt für die Anzeige durch die Fahrzeugintegrationsanwendung auf der jeweiligen Anzeige des Fahrzeuginformationsanzeigesystems um.
  • Bei einigen Ausführungsformen ist die erste Anwendung Dritter (734) eine Medienpräsentationsanwendung (z. B. Internet-Radio 142, 1A). Bei einigen Ausführungsformen beinhaltet die Vorrichtung eine Anwendung des Erstanbieters, welche eine Medienpräsentationsanwendung (z. B. Video- und Musik-Player-Modul 152, 1A) ist; die Anwendung des Erstanbieters beinhaltet eine Benutzerschnittstelle des Erstanbieters, welche eine Vielzahl von auswählbaren Affordanzen hat, um eine Durchführung von Medienpräsentationsoperationen anzufordern, und eine oder mehrere Inhaltspräsentationsregionen (z. B. eine Region zur Anzeige einer Liste von verfügbaren Medien) an jeweiligen Orten in der Benutzerschnittstelle des Erstanbieters; und das Erzeugen der ersten Benutzerschnittstelle für die erste Anwendung Dritter beinhaltet ein Erzeugen einer Benutzerschnittstelle, welche auswählbare Affordanzen und eine oder mehrere Inhaltspräsentationsregionen beinhaltet, die hinsichtlich der Funktion und des Ortes mit den auswählbaren Affordanzen und den Inhaltspräsentationsregionen der Benutzerschnittstelle des Erstanbieters korrespondieren. Somit ist bei einigen Ausführungsformen die erste Vorlage der Benutzerschnittstelle eine Vorlage, welche Information aus Anwendungen Dritter an eine standardisierte Benutzerschnittstelle angleicht, welche Steuerungen, Inhaltsregionen und ein Aussehen aufweist, welches ähnlich einer Medienpräsentationsanwendung des Erstanbieters ist, um somit eine konsistente Benutzerschnittstelle, die dem Benutzer bekannt ist, und einen Fahrer vor Ablenkung abhält, bereitstellt, wenn diese auf einem Fahrzeuginformationsanzeigesystem, welches von einem Fahrersitz eines Fahrzeuges sichtbar ist, angezeigt wird.
  • Die Vorrichtung sendet (736) Information an die jeweilige Anzeige, oder stellt die Information dieser anderweitig bereit, welche der ersten Benutzerschnittstelle für die erste Anwendung Dritter ermöglicht, auf der jeweiligen Anzeige angezeigt zu werden (z. B. tragbare Multifunktionsvorrichtung 100 stellt die Information der Anzeige 547 des externen Informationspräsentationssystem 540 aus 5 bereit).
  • Bei einigen Ausführungsformen empfängt (738) die Vorrichtung, während die erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeige angezeigt wird, von einem Eingabegerät für die jeweilige Anzeige (z. B. eine berührungsempfindliche Oberfläche, die deckungsgleich der jeweiligen Anzeige ist, oder ein Knopf oder ein Griff, welcher verwendet wird, um die jeweilige Anzeige zu steuern) eine jeweilige Eingabe, welche einer Auswahl einer Option in der ersten Benutzerschnittstelle entspricht (z. B. ist die ausgewählte Option eine Option zum Abspielen, Pausieren, Suchen, Anzeigen eines neuen Menüs oder ein Ausführen einer Operation, die spezifisch für die Anwendung Dritter ist, wie ”liking”, ”überspringen” oder ”füge den Favoriten hinzu”). In Reaktion auf das Empfangen der jeweiligen Eingabe stellt (740) die Vorrichtung der ersten Anwendung Dritter, die auf der elektronischen Vorrichtung ausgeführt wird, Information bereit, die der ersten Anwendung Dritter ermöglicht, auf die Auswahl der Option in der ersten Benutzerschnittstelle zu reagieren. Bei einigen Ausführungsformen empfängt (742) die Vorrichtung, von der ersten Anwendung Dritter, die Antwort auf die Auswahl der Option von der ersten Anwendung Dritter; und sendet (744) Information zur jeweiligen Anzeige, oder stellt sie dieser anderweitig bereit, welche ermöglicht, dass die Antwort auf die Auswahl der Option dem Benutzer bereitgestellt wird (z. B. angezeigt wird). Beispielsweise wird dem Benutzer eine Liste an Namen von Streaming-Internet-Radio-Stationen auf der jeweiligen Anzeige präsentiert, der Benutzer tippt auf einen Namen einer jeweiligen Streaming-Internet-Radio-Station (z. B. auf einer Berührungsbildschirmanzeige eines externen Informationspräsentationssystems 540 in 5), ein Vermittlungsprozess auf der Vorrichtung (z. B. die tragbare Multifunktionsvorrichtung 100 in 5) stellt der ersten Anwendung Dritter Information bereit, welche anzeigt, dass die jeweilige Streaming-Internet-Radio-Station ausgewählt wurde, die erste Anwendung Dritter fordert an, dass ein Server (z. B. Server 510 in 5) eine Grafik, einen Titel, Untertitel und einen Audio-Stream für die jeweilige Streaming-Internet-Radio-Station bereitstellt, und stellt dann diese Information dem Vermittlungsprozess (z. B. auf der tragbaren Multifunktionsvorrichtung 100 in 5) bereit, welcher eine Benutzerschnittstelle basierend auf der Information und einer Vorlage einer Benutzerschnittstelle erzeugt und die erzeugte Benutzerschnittstelle zur jeweiligen Anzeige zum Anzeigen überträgt (z. B. auf die Anzeige 547 des externen Informationspräsentationssystems 540 in 5).
  • Bei einigen Ausführungsformen vermittelt ein Vermittlungsprozess des Erstanbieters auf der Vorrichtung eine Kommunikation zwischen der jeweiligen Anzeige und einer ersten Anwendung Dritter durch Konvertieren von Daten von der ersten Anwendung Dritter zu einer standardisierten, vereinfachten Benutzerschnittstelle, welche abgelenktes Fahren verhindert, und durch Übermitteln von Eingaben, welche einer Benutzerinteraktion mit der Benutzerschnittstelle entsprechen, die auf der jeweiligen Anzeige angezeigt wird, so dass die erste Anwendung Dritter auf die Eingaben reagieren kann, selbst wenn der ersten Anwendung Dritter keine Information bereitgestellt wird, die eine Größe, Auflösung und andere Charakteristiken der jeweiligen Anzeige angeben, und keinen direkten Zugriff auf Benutzerinteraktionen mit der Benutzerschnittstelle hat, die auf der jeweiligen Anzeige angezeigt wird. Beispielsweise werden der Anwendung Dritter nicht die Zeiten und Orte der Berührungseingaben bereitgestellt, vielmehr erhält sie Information darüber, welche Information von dem Benutzer angefragt wurde, wie sie durch den Vermittlungsprozess des Erstanbieters gefiltert wird.
  • Bei einigen Ausführungsformen empfängt (748) die Vorrichtung, während die erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeige (746) angezeigt wird, Information, die eine Auswahl einer jeweiligen Option in der ersten Benutzerschnittstelle angibt (z. B. eine Auswahl eines Containers oder eines Knoten mit Kind-Knoten, wie ein ”Künstler”-Ordner, welcher Songs von dem ausgewählten Künstler beinhaltet, oder eine Auswahl einer bestimmten Internet-Streaming-Radio-Station aus einer Vielzahl von Internet-Streaming-Radio-Stationen). Bei einigen Ausführungsformen, in Reaktion auf das Empfangen der Information, die die Auswahl der jeweiligen Option in der ersten Benutzerschnittstelle (750) angibt: Die Vorrichtung erhält (752) eine zweite Vorlage einer Benutzerschnittstelle, welche sich von der ersten Vorlage der Benutzerschnittstelle unterscheidet (z. B. eine Vorlage zur Anzeige der Inhalte eines Containers, wie eine Playlist-Vorlage oder eine ”gerade wird gespielt”-Benutzerschnittstellenvorlage); und fordert (754), von der ersten Anwendung Dritter, einen oder mehrere Werte zum Befüllen der zweiten Vorlage der Benutzerschnittstelle an. Bei einigen Ausführungsformen empfängt (756) die Vorrichtung, von der ersten Anwendung Dritter, während die erste Anwendung Dritter auf der elektronischen Vorrichtung ausgeführt wird, einen zweiten Satz an Werten zum Befüllen der zweiten Vorlage der Benutzerschnittstelle (z. B. Namen und Spielzeit-Information für die Songs des ausgewählten Künstlers für eine Playlist-Vorlage oder einen Namen einer aktuell abgespielten Radio-Station, einen Namen eines aktuell abgespielten Songs, eine Grafik für den aktuell abgespielte Song für eine ”gerade wird gespielt”-Vorlage); befüllt (758) die zweite Vorlage der Benutzerschnittstelle mit dem zweiten Satz an Werten, der von der ersten Anwendung Dritter empfangen wurde; erzeugt (760) eine zweite Benutzerschnittstelle für die erste Anwendung Dritter unter Verwendung der zweiten Vorlage der Benutzerschnittstelle, die mit dem zweiten Satz an Werten befüllt wurde (z. B. Einsetzen der Namen und Spielzeit-Information für die Songs des ausgewählten Künstlers in eine Playlist-Vorlage oder Einsetzen eines Namens einer aktuell abgespielten Radio-Station, eines Namens eines aktuell abgespielten Songs und einer Grafik für den aktuell abgespielten Song in eine ”gerade wird gespielt”-Vorlage, welche Steuerungen zum Steuern von Pausieren/Beginnen/Beenden/schnelles Vorspielen/Zurückspulen des aktuell abgespielten Songs beinhaltet); und sendet (762), oder stellt anderweitig bereit, Information an die jeweilige Anzeige, welche der zweiten Benutzerschnittstelle für die erste Anwendung Dritter ermöglicht, auf der jeweiligen Anzeige angezeigt zu werden.
  • Bei einigen Ausführungsformen empfängt (766) die Vorrichtung, nach dem Senden der Information an die jeweilige Anzeige, was der ersten Benutzerschnittstelle der ersten Anwendung Dritter ermöglicht, auf der jeweiligen Anzeige (764) angezeigt zu werden, eine zweite Anzeigenanfrage zur Anzeige einer Benutzerschnittstelle für eine zweite Anwendung Dritter, welche sich von der ersten Anwendung Dritter unterscheidet, auf der jeweiligen Anzeige (z. B. Empfangen einer Aktivierung eines Anwendungsstarticons für die zweite Anwendung Dritter unter Verwendung einer Steuerung, die mit der jeweiligen Anzeige assoziiert ist, oder einer Steuerung, die mit der elektronischen Vorrichtung assoziiert ist). Beispielsweise wechselt der Benutzer, während der Benutzer ursprünglich Audio von einer Internet-Streaming-Radio-Anwendung 142 abgespielt hat (z. B. unter Verwendung der Benutzerschnittstelle für die Streaming-Internet-Radio-Anwendung, die in 6B gezeigt ist) zum Abspielen von Audio aus einer getrennten Podcast-Anwendung oder einer Hörbuch-Anwendung. Bei einigen Ausführungsformen fordert (768) die Vorrichtung, in Reaktion auf das Empfangen der zweiten Anzeigenanfrage, von der zweiten Anwendung Dritter einen oder mehrere Werte zum Befüllen der ersten Vorlage der Benutzerschnittstelle an; empfängt (770), von der zweiten Anwendung Dritter, während die zweite Anwendung Dritter auf der elektronischen Vorrichtung ausgeführt wird, einen dritten Satz an Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle; befüllt (772) die erste Vorlage der Benutzerschnittstelle mit dem dritten Satz an Werten, der von der zweiten Anwendung Dritter empfangen wurde; erzeugt (774) eine zweite Benutzerschnittstelle für die zweite Anwendung Dritter unter Verwendung der ersten Vorlage der Benutzerschnittstelle, die mit dem dritten Satz an Werten befüllt ist; und sendet (776) (oder stellt anderweitig bereit) Information an die jeweilige Anzeige, welche der zweiten Benutzerschnittstelle für die zweite Anwendung Dritter ermöglicht, auf der jeweiligen Anzeige angezeigt zu werden (z. B. die Benutzerschnittstelle für die Musikbibliotheksanwendung 155, die in 6C gezeigt ist). Somit wiederholt die Vorrichtung bei einigen Ausführungsformen den Prozess des Anfragen von Werten von einer Anwendung Dritter, um die erste Vorlage der Benutzerschnittstelle auszufüllen, wenn eine unterschiedliche Anwendung Dritter angefragt wird, welche die gleiche Vorlage der Benutzerschnittstelle verwendet. Dieser Prozess wird in dieser Situation wiederholt, weil die erste Vorlage der Benutzerschnittstelle gestaltet oder eingerichtet ist, von einer Vielzahl von unterschiedlichen Anwendungen Dritter verwendet zu werden.
  • Bei einigen Ausführungsformen, nach dem Senden der Information an die jeweilige Anzeige, was der ersten Benutzerschnittstelle für die erste Anwendung Dritter ermöglicht, auf der jeweiligen Anzeige (764) angezeigt zu werden: Die Vorrichtung empfängt (778) von der ersten Anwendung Dritter, einen aktualisierten ersten Satz an Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle. Bei einigen Ausführungsformen befüllt, in Reaktion auf das Empfangen des aktualisierten ersten Satzes an Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle (780), die Vorrichtung die erste Vorlage der Benutzerschnittstelle mit dem aktualisierten ersten Satz an Werten, der von der ersten Anwendung Dritter empfangen wurde; erzeugt (784) eine aktualisierte erste Benutzerschnittstelle für die erste Anwendung Dritter unter Verwendung der ersten Vorlage der Benutzerschnittstelle, die mit dem aktualisierten ersten Satz an Werten befüllt ist; und stellt (786) der jeweiligen Anzeige Information bereit, die der aktualisierten ersten Benutzerschnittstelle für die erste Anwendung Dritter ermöglicht, auf der jeweiligen Anzeige angezeigt zu werden. Bei einigen Ausführungsformen wird der aktualisierte erste Satz an Werten basierend auf Ereignissen erzeugt, die bei der ersten Anwendung Dritter auftreten (z. B. wird die Aktualisierung der Benutzerschnittstelle für die erste Anwendung Dritter durch die erste Anwendung Dritter initialisiert, anstelle eines Initialisierens durch einen Vermittlungsprozess). Beispielsweise ist die Anwendung Dritter eine Streaming-Medienanwendung und die Datenverbindung der Vorrichtung hört auf zu funktionieren. In Reaktion auf das Erkennen, dass die Datenverbindung aufgehört hat zu funktionieren, übermittelt die Anwendung Dritter Information an einen Vermittlungsprozess auf der Vorrichtung, welche anzeigt, dass Streaming-Inhalt, welcher bisher als ”abspielbar” markiert war (z. B. als es eine funktionierende Datenverbindung gab) sich in seinem Status verändert hat, so dass dieser jetzt ”nicht abspielbar” ist (z. B. weil die Datenverbindung nicht weiter verfügbar ist). Bei einigen Ausführungsformen wird die erste Benutzerschnittstelle für die erste Anwendung Dritter, wenn sich Inhalt von ”abspielbar” zu ”nicht abspielbar” ändert, aktualisiert, um anzuzeigen, dass der Inhalt ”nicht abspielbar” ist (z. B. durch Entfernen des Inhalts aus einer Liste aus abspielbarem Inhalt oder Ändern einer Erscheinung einer Darstellung des Inhalts, um anzuzeigen, dass der Inhalt aktuell nicht abspielbar ist, durch Verringern eines Kontrastes der Darstellung, oder Anzeigen eines ”nicht abspielbar”-Icons oder -Symbols neben der Darstellung des Inhalts). Beispielsweise würde die Vorrichtung, in 6B, falls die Vorrichtung keinen Zugriff mehr auf die Streaming-Internet-Radio-Stationen hat, die in der Inhaltsauswahlenansicht 606 angezeigt werden, die in 6B gezeigte Benutzerschnittstelle neu erzeugen, um die Nichtverfügbarkeit der Streaming-Internet-Radio-Stationen wiederzugeben (z. B. durch Anzeigen eines nicht-abspielbar-Icons benachbart zu den Namen der nicht verfügbaren Stationen, durch Reduzieren des Kontrastes (”Ausgrauen”, ”graying out”) der nicht verfügbaren Stationen oder durch Entfernen der Stationen aus der Inhaltsauswahlenansicht 606).
  • Es sollte verstanden werden, dass die bestimmte Reihenfolge, in welcher die in 7A7I gezeigten Operationen dargestellt sind, lediglich als ein Beispiel beschrieben wurde, und es nicht beabsichtigt ist, anzugeben, dass die beschriebene Reihenfolge die einzige Reihenfolge ist, in welcher die Operationen ausgeführt werden können. Ein Fachmann würde unterschiedliche Wege erkennen, die hierin beschriebenen Operationen neu zu ordnen.
  • Gemäß einigen Ausführungsformen zeigt 8 ein funktionales Blockdiagramm einer ersten elektronischen Vorrichtung 800, die gemäß den Prinzipien unterschiedlicher beschriebener Ausführungsformen eingerichtet ist. Die funktionalen Blöcke der Vorrichtung sind optionalerweise durch Hardware, Software oder einer Kombination von Hardware und Software implementiert, um die Prinzipien der unterschiedlichen beschriebenen Ausführungsformen auszuführen. Es wird von einem Fachmann verstanden, dass die in 8 beschriebenen funktionalen Blöcke, optionalerweise, kombiniert oder in Unterblöcken getrennt werden, um die Prinzipien der unterschiedlichen beschriebenen Ausführungsformen zu implementieren. Deshalb stützt die Beschreibung hierin optionalerweise jegliche mögliche Kombination oder Trennung oder weiterer Definition der funktionalen Blöcke, wie sie hierin beschrieben sind.
  • Wie in 8 gezeigt, beinhaltet eine elektronische Vorrichtung 800 einen Speicher, der mit einer Verarbeitungseinheit 802 gekoppelt ist. Bei einigen Ausführungsformen beinhaltet die elektronische Vorrichtung 800 auch eine Kommunikationsschnittstelleneinheit 804, die mit einer Prozessoreinheit 802 gekoppelt ist und eingerichtet ist. mit einer jeweiligen Anzeigeeinheit 806 zu kommunizieren. Bei einigen Ausführungsformen beinhaltet die Verarbeitungseinheit 802 eine Empfangseinheit 807, eine Erhalten-Einheit 808, eine Anfrageeinheit 810, eine Befüllungseinheit 812, eine Schnittstellenerzeugungseinheit 814, eine Sendeeinheit 816, eine Informationsbereitstellungseinheit 818, eine Bestimmungseinheit 820, eine Indexerzeugungseinheit 822, eine Sprachbereitstellungseinheit 824, eine Erkennungseinheit 826 und eine digitale Assistenzeinheit 828. Die Verarbeitungseinheit 802 ist eingerichtet, um eine erste Anzeigenanfrage zu empfangen (z. B. mit der Empfangseinheit 807 über die Kommunikationsschnittstelleneinheit 804) zur Anzeige einer Benutzerschnittstelle einer ersten Anwendung Dritter auf einer jeweiligen Anzeigeeinheit (z. B. mit der jeweiligen Anzeigeeinheit 806), die in Kommunikation mit der elektronischen Vorrichtung 800 steht. Die Verarbeitungseinheit 802 ist weiterhin eingerichtet zum, um in Reaktion auf das Empfangen der ersten Anzeigenanfrage: Erhalten (z. B. mit der Erhalten-Einheit 808) einer ersten Vorlage einer Benutzerschnittstelle, die eingerichtet ist, von einer Vielzahl von Anwendungen Dritter verwendet zu werden; und Anfragen (z. B. mit Anfrageeinheit 810), von der ersten Anwendung Dritter, eines oder mehrerer Werte zum Befüllen der ersten Vorlage der Benutzerschnittstelle. Die Verarbeitungseinheit 802 ist weiterhin eingerichtet zum Empfangen (z. B. mit der Empfangseinheit 807 oder der Kommunikationsschnittstelleneinheit 804), von der ersten Anwendung Dritter, während die erste Anwendung Dritter auf der elektronischen Vorrichtung ausgeführt wird, eines ersten Satzes an Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle; Befüllen (z. B. mit Befüllungseinheit 812) der ersten Vorlage der Benutzerschnittstelle mit dem ersten Satz an Werten, der von der ersten Anwendung Dritter empfangen wurde; Erzeugen (z. B. mit der Schnittstellenerzeugungseinheit 814) einer ersten Benutzerschnittstelle für die erste Anwendung Dritter unter Verwendung der ersten Vorlage der Benutzerschnittstelle, die befüllt ist mit: dem ersten Satz an Werten; und Senden (z. B. mit der Sendeeinheit 816) von Information an die jeweilige Anzeigeeinheit, was ermöglicht, dass die erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeigeeinheit angezeigt wird (z. B. die jeweilige Anzeigeeinheit 806).
  • Bei einigen Ausführungsformen ist die Verarbeitungseinheit 802 weiterhin eingerichtet zum: Während die erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeigeeinheit (z. B. die jeweilige Anzeigeeinheit 806) angezeigt wird, Empfangen (z. B. mit der Empfangseinheit 807 über die Kommunikationsschnittstelleneinheit 804) einer jeweiligen Eingabe von einer Eingabevorrichtung für die jeweilige Anzeigeeinheit, welche mit einer Auswahl einer Option in der ersten Benutzerschnittstelle korrespondiert; und, in Reaktion auf das Empfangen der jeweiligen Eingabe, Bereitstellen (z. B. mit der Informationsbereitstellungseinheit 818) von Information an die erste Anwendung Dritter, die auf der elektronischen Vorrichtung läuft, was der ersten Anwendung Dritter ermöglicht, auf eine Auswahl der Option in der ersten Benutzerschnittstelle zu reagieren. Bei einigen Ausführungsformen ist die Verarbeitungseinheit 802 weiterhin eingerichtet zum Empfangen (z. B. mit der Empfangseinheit 807 über die Kommunikationsschnittstelleneinheit 804), von der ersten Anwendung, der Antwort auf die Auswahl der Option von der ersten Anwendung Dritter; und Senden (z. B. mit der Sendeeinheit 816) von Information an die jeweilige Anzeigeeinheit, die ermöglicht, dass die Antwort auf die Auswahl der Option dem Benutzer bereitgestellt wird.
  • Bei einigen Ausführungsformen ist die Verarbeitungseinheit 802 weiterhin eingerichtet zum, während die erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeigeeinheit (z. B. die jeweilige Anzeigeeinheit 806) angezeigt wird: Empfangen (z. B. mit der Empfangseinheit 807 über die Kommunikationsschnittstelleneinheit 804) von Information, die eine Auswahl einer jeweiligen Option in der ersten Benutzerschnittstelle angibt; und, in Reaktion auf das Empfangen der Information, die die Auswahl der jeweiligen Option in der ersten Benutzerschnittstelle angibt: Erhalten (z. B. mit der Erhalten-Einheit 808) einer zweiten Vorlage einer Benutzerschnittstelle, die sich von der ersten Vorlage der Benutzerschnittstelle unterscheidet; und Anfragen (z. B. mit der Anfrageeinheit 810), von der ersten Anwendung Dritter, eines oder mehrerer Werte zum Befüllen der zweiten Vorlage der Benutzerschnittstelle. Bei einigen Ausführungsformen ist die Verarbeitungseinheit 802 weiterhin eingerichtet zum Empfangen (z. B. mit der Empfangseinheit 807 über die Kommunikationsschnittstelleneinheit 804) von der ersten Anwendung Dritter, während die erste Anwendung Dritter auf der elektronischen Vorrichtung ausgeführt wird, eines zweiten Satzes an Werten zum Befüllen der zweiten Vorlage der Benutzerschnittstelle; Befüllen (z. B. mit der Befüllungseinheit 812) der zweiten Vorlage der Benutzerschnittstelle mit dem zweiten Satz an Werten, der von der ersten Anwendung Dritter empfangen wurde; Erzeugen (z. B. mit der Schnittstellenerzeugungseinheit 814) einer zweiten Benutzerschnittstelle für die erste Anwendung Dritter unter Verwendung der zweiten Vorlage der Benutzerschnittstelle, die mit dem zweiten Satz an Werten befüllt wurde; und Senden (z. B. mit der Sendeeinheit 816) von Information an die jeweilige Anzeigeeinheit, die ermöglicht, dass die zweite Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeigeeinheit (z. B. die jeweilige Anzeigeeinheit 806) angezeigt wird.
  • Bei einigen Ausführungsformen ist die Verarbeitungseinheit 802 weiterhin eingerichtet, um, nach dem Senden (z. B. mit der Sendeeinheit 816) der Information an die jeweilige Anzeigeeinheit, die der ersten Benutzerschnittstelle der ersten Anwendung Dritter ermöglicht, auf der jeweiligen Anzeigeeinheit (z. B. die jeweilige Anzeigeeinheit 806) angezeigt zu werden, eine zweite Anzeigenanfrage zu empfangen (z. B. mit der Empfangseinheit 807 oder Kommunikationsschnittstelleneinheit 804) zur Anzeige einer Benutzerschnittstelle für eine zweite Anwendung Dritter, die sich von der ersten Anwendung Dritter unterscheidet, auf der jeweiligen Anzeigeeinheit (z. B. die jeweilige Anzeigeeinheit 806). Bei einigen Ausführungsformen ist die Verarbeitungseinheit 802 weiterhin eingerichtet, um, in Reaktion auf das Empfangen der zweiten Anzeigenanfrage, einen oder mehrere Werte zum Befüllen der ersten Vorlage der Benutzerschnittstelle von der zweiten Anwendung Dritter anzufragen (z. B. mit der Anfrageeinheit 810); Empfangen (z. B. mit der Empfangseinheit 807 über die Kommunikationsschnittstelleneinheit 804), von der zweiten Anwendung Dritter, während die zweite Anwendung Dritter auf der elektronischen Vorrichtung ausgeführt wird, eines dritten Satzes an Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle; Befüllen (z. B. mit der Befüllungseinheit 812) der ersten Vorlage der Benutzerschnittstelle mit dem dritten Satz an Werten, der von der zweiten Anwendung Dritter empfangen wurde; Erzeugen (z. B. mit der Schnittstellenerzeugungseinheit 814) einer zweiten Benutzerschnittstelle für die zweite Anwendung Dritter unter Verwendung der ersten Vorlage der Benutzerschnittstelle, die mit dem dritten Satz an Werten befüllt ist; und Senden (z. B. mit der Sendeeinheit 816) von Information an die jeweilige Anzeigeeinheit, die ermöglicht, dass die zweite Benutzerschnittstelle für die zweite Anwendung Dritter auf der jeweiligen Anzeigeeinheit (z. B. die jeweilige Anzeigeeinheit 806) angezeigt wird.
  • Bei einigen Ausführungsformen beinhaltet die Vorrichtung eine Vielzahl an Prozessen, einschließlich eines Prozesses für eine erste Anwendung Dritter, zum Ausführen der ersten Anwendung Dritter, und eines Satzes an einen oder mehreren Vermittlungsprozessen zum Übermitteln von Information zwischen der jeweiligen Anzeigeeinheit und dem Prozess der ersten Anwendung Dritter; die Anfrage von dem einen oder den mehreren Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle wird von einem Vermittlungsprozess aus dem Satz eines oder mehrerer Vermittlungsprozesse erzeugt; und die erste Benutzerschnittstelle wird von einem Vermittlungsprozess aus dem Satz eines oder mehrerer Vermittlungsprozesse erzeugt.
  • Bei einigen Ausführungsformen wird/werden ein oder mehrere der Werte in dem ersten Satz an Werten von einer entfernten Quelle durch die erste Anwendung Dritter in Reaktion auf die Anfrage nach einem oder mehreren Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle abgerufen.
  • Bei einigen Ausführungsformen ist die jeweilige Anzeigeeinheit (z. B. die jeweilige Anzeigeeinheit 806) eine Anzeigeeinheit in einem Fahrzeuginformationsanzeigesystem, die aus einem Fahrersitz eines Fahrzeuges sichtbar ist; und die erste Vorlage einer Benutzerschnittstelle ist eine aus einer Vielzahl von vorbestimmten Vorlagen von Benutzerschnittstellen, die eingerichtet sind, um Benutzerschnittstellen für die Anwendung Dritter auf der jeweiligen Anzeigeeinheit zu erzeugen, welche eine. Ablenkung des Fahrers verhindern.
  • Bei einigen Ausführungsformen wird die erste Vorlage der Benutzerschnittstelle von einer Vielzahl von unterschiedlichen Anwendungen Dritter verwendet, einschließlich der ersten Anwendung Dritter und einer zweiten Anwendung Dritter; Befüllen (z. B. mit der Befüllungseinheit 812) der ersten Vorlage der Benutzerschnittstelle mit Werten, die von einer jeweiligen Anwendung Dritter empfangen wurden, beinhaltet ein Einsetzen von Werten, die von der jeweiligen Anwendung Dritter als zu einer ersten Klasse an Werten gehörend, identifiziert wurden, in eine vordefinierte Region mit einer vordefinierten Schriftgröße in einer Benutzerschnittstelle, die der jeweiligen Anzeigeeinheit bereitgestellt wird; und, für die erste Vorlage der Benutzerschnittstelle: Die erste Anwendung Dritter identifiziert einen ersten Typ an Information als die erste Klasse an Werten; und die zweite Anwendung Dritter identifiziert einen zweiten Typ an Information, der sich von dem ersten Typ an Information unterscheidet, als die erste Klasse an Werten.
  • Bei einigen Ausführungsformen, für die erste Vorlage der Benutzerschnittstelle: Die erste Anwendung Dritter identifiziert die Namen von Inhaltsstationen, die entfernt generiert werden, als die erste Klasse an Werten; und die zweite Anwendung Dritter identifiziert die Namen von vorbestimmten Playlists als die erste Klasse an Werten.
  • Bei einigen Ausführungsformen, für die erste Vorlage der Benutzerschnittstelle: Die erste Anwendung Dritter identifiziert die Namen von Inhalt, welcher zu der Vorrichtung gestreamt werden kann, als die erste Klasse an Werten; und die zweite Anwendung Dritter identifiziert die Namen von Inhalt, der auf der Vorrichtung gespeichert ist, als die erste Klasse an Werten.
  • Bei einigen Ausführungsformen werden Werte bei der ersten Anwendung Dritter in einer Baumstruktur angeordnet, die eine Vielzahl von Knoten beinhaltet, die vorbestimmte Eigenschaften und eine Baumbeziehung mit einem oder mehreren anderen Knoten in der Baumstruktur haben; und die Anfrage (z. B. mit der Anfrageeinheit 810) nach einem oder mehreren Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle beinhaltet eine oder mehrere der folgenden: eine Anfrage zur Rückgabe von Werten, die mit einer Liste von Kind-Knoten eines jeweiligen Knoten aus der Vielzahl der Knoten korrespondieren; eine Anfrage zur Rückgabe von Werten, die mit einer Liste von Eigenschaften eines jeweiligen Knoten aus der Vielzahl der Knoten korrespondieren; eine Anfrage zum Bereitstellen von Inhalt, welcher durch den jeweiligen Knoten dargestellt wird; eine Anfrage zum Bereitstellen einer Liste von Knoten, die mit einer Suchanfrage übereinstimmen; und eine Anfrage zum Bereitstellen einer Liste an Aktionen, die spezifisch für die erste Anwendung Dritter ist, die vorgenommen werden kann, während Zugriff auf Inhalt, der mit der ersten Anwendung Dritter assoziiert ist, bereitgestellt wird.
  • Bei einigen Ausführungsformen ist die erste Anwendung Dritter eine Medienpräsentationsanwendung. Bei einigen Ausführungsformen beinhaltet die Vorrichtung 800 eine Anwendung des Erstanbieters, die eine Medienpräsentationsanwendung ist; die Anwendung des Erstanbieters enthält eine Benutzerschnittstelle des Erstanbieters, welche eine Vielzahl von auswählbaren Affordanzen zur Anfrage des Durchführens von Medienpräsentationsoperationen und eine oder mehrere Inhaltspräsentationsregionen an verschiedenen Orten in der Benutzerschnittstelle des Erstanbieters hat; und ein Erzeugen (z. B. mit der Schnittstellenerzeugungseinheit 814) der ersten Benutzerschnittstelle für die erste Anwendung Dritter beinhaltet ein Erzeugen einer Benutzerschnittstelle, die auswählbare Affordanzen und eine oder mehrere Inhaltspräsentationsregionen beinhaltet, die hinsichtlich der Funktion und des Ortes den auswählbaren Affordanzen und den Inhaltspräsentationsregionen der Benutzerschnittstelle des Erstanbieters entsprechen.
  • Bei einigen Ausführungsformen ist die Verarbeitungseinheit 802 weiterhin eingerichtet, zum, nach dem Senden der Information an die jeweilige Anzeigeeinheit, die ermöglicht, dass die erste Benutzerschnittstelle der ersten Anwendung Dritter auf der jeweiligen Anzeigeeinheit (z. B. der jeweiligen Anzeigeeinheit 806) angezeigt wird: Empfangen (z. B. mit der Empfangseinheit 807 über die Kommunikationsschnittstelleneinheit 804), von der ersten Anwendung Dritter, eines aktualisierten ersten Satzes an Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle; und, in Reaktion auf das Empfangen des aktualisierten ersten Satzes an Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle: Befüllen (z. B. mit der Befüllungseinheit 812) der ersten Vorlage der Benutzerschnittstelle mit dem aktualisierten ersten Satz an Werten, der von der ersten Anwendung Dritter empfangen wurde; Erzeugen (z. B. mit der Schnittstellenerzeugungseinheit 814) einer aktualisierten ersten Benutzerschnittstelle für die erste Anwendung Dritter unter Verwendung der ersten Vorlage der Benutzerschnittstelle, die mit dem aktualisierten ersten Satz an Werten befüllt ist; und Bereitstellen (z. B. mit der Informationsbereitstellungseinheit 818) von Information an die jeweilige Anzeigeeinheit, die ermöglicht, dass die aktualisierte erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeigeeinheit angezeigt wird.
  • Bei einigen Ausführungsformen beinhaltet die Vorrichtung 800 einen digitalen, persönlichen Assistenzprozess (z. B. die digitale Assistenzeinheit 828) mit Spracherkennungsfähigkeiten. Bei einigen Ausführungsformen ist die Verarbeitungseinheit 802 weiterhin eingerichtet zum: Bestimmen (z. B. mit der Bestimmungseinheit 820) der Fähigkeiten der ersten Anwendung Dritter, basierend auf Antworten der ersten Anwendung Dritter auf eine Vielzahl von Anfragen an die erste Anwendung Dritter nach Werten, die mit einem Befüllen der Vorlagen der Benutzerschnittstelle für Benutzerschnittstellen der jeweiligen Anzeigeeinheit assoziiert sind; Erzeugen (z. B. mit der Indexerzeugungseinheit 822) eines Indexes von den Fähigkeiten der ersten Anwendung Dritter; und Bereitstellen (z. B. mit der Sprachbereitstellungseinheit 824) eines Sprachzugriffes auf die Fähigkeiten der ersten Anwendung Dritter über den digitalen, persönlichen Assistenzprozess (z. B. mit der digitalen Assistenzeinheit 828).
  • Bei einigen Ausführungsformen ist die Verarbeitungseinheit 802 weiterhin eingerichtet zum: Erkennen (z. B. mit der Erkennungseinheit 826), dass eine vorbestimmte Bedingung eingetroffen ist; und, in Reaktion auf das Erkennen, dass die vorbestimmte Bedingung eingetroffen ist: neues Bestimmen (z. B. mit der Bestimmungseinheit 820) der Fähigkeiten der ersten Anwendung Dritter; und neues Erzeugen (z. B. mit der Indexerzeugungseinheit 822) des Indexes von den Fähigkeiten der ersten Anwendung Dritter.
  • Die Operationen der voranstehend beschriebenen Informationsverarbeitungsverfahren werden optionalerweise durch ein Ausführen eines oder mehrerer funktionaler Module in einem Informationsverarbeitungsgerät wie Prozessoren für allgemeine Zwecke (z. B. wie oben hinsichtlich der 1A und 3 beschrieben) oder durch anwendungsspezifische Chips implementiert.
  • Die voranstehend mit Bezugnahme auf 7A7I beschriebenen Operationen werden optionalerweise durch die in 1A1B oder 8 gezeigten Komponenten implementiert. Beispielsweise werden Empfangsoperationen 702 und 712, Anfrageoperation 710, Befüllungsoperation 722, Erzeugungsoperation 730 und Sendeoperation 736 optional durch den Ereignissortierer 170, den Ereigniserkenner 180 und den Ereignishandler 190 implementiert. Der Ereignismonitor 171 in dem Ereignissortierer erkennt einen Kontakt auf der berührungsempfindlichen Anzeige 112 und das Ereigniszuteilermodul 174 liefert die Ereignisinformation an die Anwendung 136-1. Ein jeweiliger Ereigniserkenner 180 der Anwendung 136-1 vergleicht die Ereignisinformation mit jeweiligen Ereignisdefinitionen 186 und bestimmt, ob ein erster Kontakt an einem ersten Ort auf der berührungsempfindlichen Oberfläche (oder ob eine Orientierung der Vorrichtung) mit einem vordefinierten Ereignis oder Unterereignis korrespondiert, wie eine Auswahl eines Objektes auf einer Benutzerschnittstelle oder Rotation der Vorrichtung aus einer Orientierung in eine andere. Wenn ein jeweiliges vordefiniertes Ereignis oder Unterereignis erkannt wird, aktiviert der Ereigniserkenner 180 einen Ereignishandler 190, der mit dem Erkennen des Ereignisses oder Unterereignisses assoziiert ist. Der Ereignishandler 190 verwendet optionalerweise den Datenaktualisierer 176 oder Objektaktualisierer 177, oder ruft diesen auf, um den internen Status der Anwendung 192 zu aktualisieren. Bei einigen Ausführungsformen greift der Ereignishandler 190 auf einen jeweiligen GUI-Aktualisierer 178 zu, um zu aktualisieren, was durch die Anwendung angezeigt wird. Ähnlich ist es einem Fachmann klar, wie andere Prozesse basierend auf den in 1A1B gezeigten Komponenten implementiert werden können.
  • Die voranstehende Beschreibung wurde, zum Zwecke der Erläuterung, unter Bezugnahme auf spezifische Ausführungsformen vorgenommen. Jedoch sollte die voranstehende, erläuternde Diskussion nicht als erschöpfend oder die Erfindung auf die genauen offenbarten Formen begrenzend verstanden werden. Viele Modifikationen und Variationen sind im Lichte der voranstehenden Lehre möglich. Die Ausführungsformen wurden gewählt und beschrieben, um die Prinzipien der Erfindung und ihre praktischen Anwendungen am besten zu erklären, um dadurch einem Fachmann zu ermöglichen, die Erfindung und unterschiedliche beschriebene Ausführungsformen mit unterschiedlichen Modifikationen, wie sie für die bestimmte beabsichtigte Verwendung geeignet sind, zu verwenden.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Nicht-Patentliteratur
    • IEEE 802.11a [0042]
    • IEEE 802.11b [0042]
    • IEEE 802.11g [0042]
    • IEEE 802.11n [0042]

Claims (19)

  1. Nichtflüchtiges, computerlesbares Speichermedium, welches ein oder mehrere Programme speichert, wobei die ein oder mehreren Programme Instruktionen aufweisen, die, wenn sie durch eine elektronische Vorrichtung mit einem oder mehreren Prozessoren und Speicher ausgeführt werden, die Vorrichtung veranlassen, Folgendes auszuführen: Empfangen einer ersten Anzeigenanfrage zur Anzeige einer Benutzerschnittstelle einer ersten Anwendung Dritter auf einer jeweiligen Anzeige, die mit der elektronischen Vorrichtung in Kommunikation steht; in Reaktion auf das Empfangen der ersten Anzeigenanfrage: Erhalten einer ersten Vorlage einer Benutzerschnittstelle, die eingerichtet ist, von einer Vielzahl von Anwendungen Dritter verwendet zu werden; und Anfragen, von der ersten Anwendung Dritter, von einem oder mehreren Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle; Empfangen, von der ersten Anwendung Dritter, während die erste Anwendung Dritter auf der elektronischen Vorrichtung ausgeführt wird, eines ersten Satzes an Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle; Befüllen der ersten Vorlage der Benutzerschnittstelle mit dem ersten Satz an Werten, der von der ersten Anwendung Dritter empfangen wurde; Erzeugen einer ersten Benutzerschnittstelle für die erste Anwendung Dritter unter Verwendung der ersten Vorlage der Benutzerschnittstelle, die mit dem ersten Satz an Werten befüllt ist; und Senden von Information an die jeweilige Anzeige, die ermöglicht, dass die erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeige angezeigt wird.
  2. Medium nach Anspruch 1, wobei das eine der die mehreren Programme weiterhin Instruktionen aufweisen, welche, wenn sie von einer elektronischen Vorrichtung mit einem oder mehreren Prozessoren und Speicher ausgeführt werden, die Vorrichtung veranlassen, Folgendes auszuführen: während die erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeige angezeigt wird, Empfangen, von einer Eingabevorrichtung für die jeweilige Anzeige einer jeweiligen Eingabe, die mit einer Auswahl einer Option in der ersten Benutzerschnittstelle korrespondiert; und in Reaktion auf das Empfangen der jeweiligen Eingabe, Bereitstellen von Information an die erste Anwendung Dritter, die auf der elektronischen Vorrichtung ausgeführt wird, die ermöglicht, dass die erste Anwendung Dritter auf die Auswahl der Option in der ersten Benutzerschnittstelle antwortet; Empfangen, von der ersten Anwendung Dritter, der Antwort auf die Auswahl der Option von der ersten Anwendung Dritter; und Senden von Information an die jeweilige Anzeige, die ermöglicht, dass die Antwort auf die Auswahl der Option dem Benutzer bereitgestellt wird.
  3. Medium nach Anspruch 1, wobei das eine oder die mehreren Programme weiterhin Instruktionen aufweisen, die, wenn sie von einer elektronischen Vorrichtung mit einem oder mehreren Prozessoren und Speicher ausgeführt werden, die Vorrichtung veranlassen auszuführen: während die erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeige angezeigt wird: Empfangen von Information, die eine Auswahl einer jeweiligen Option in der ersten Benutzerschnittstelle angibt; und in Reaktion auf das Empfangen der Information, die die Auswahl der jeweiligen Option in der ersten Benutzerschnittstelle angibt: Erhalten einer zweiten Vorlage einer Benutzerschnittstelle, die sich von der ersten Vorlage der Benutzerschnittstelle unterscheidet; und Anfragen, von der ersten Anwendung Dritter, eines oder mehrerer Werte zum Befüllen der zweiten Vorlage der Benutzerschnittstelle; Empfangen, von der ersten Anwendung Dritter, während die erste Anwendung Dritter auf der elektronischen Vorrichtung läuft, eines zweites Satzes an Werten zum Befüllen der zweiten Vorlage der Benutzerschnittstelle; Befüllen der zweiten Vorlage der Benutzerschnittstelle mit dem zweiten Satz an Werten, der von der ersten Anwendung Dritter empfangen wurde; Erzeugen einer zweiten Benutzerschnittstelle für die erste Anwendung Dritter unter Verwendung der zweiten Vorlage der Benutzerschnittstelle, die mit dem zweiten Satz an Werten befüllt ist; und Senden von Information an die jeweilige Anzeige, die ermöglicht, dass die zweite Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeige angezeigt wird.
  4. Medium nach Anspruch 1, wobei das eine oder die mehreren Programme weiterhin Instruktionen aufweisen, die, wenn sie von einer elektronischen Vorrichtung mit einem oder mehreren Prozessoren und Speicher ausgeführt werden, die Vorrichtung veranlassen, Folgendes auszuführen: nach dem Senden der Information an die jeweilige Anzeige, die ermöglicht, dass die erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeige angezeigt wird: Empfangen einer zweiten Anzeigenanfrage zur Anzeige einer Benutzerschnittstelle für eine zweite Anwendung Dritter, die sich von der ersten Anwendung Dritter unterscheidet, auf der jeweiligen Anzeige; in Reaktion auf das Empfangen der zweiten Anzeigenanfrage, Anfragen, von der zweiten Anwendung Dritter, eines oder mehrerer Werte zum Befüllen der ersten Vorlage der Benutzerschnittstelle; Empfangen, von der zweiten Anwendung Dritter, während die zweite Anwendung Dritter auf der elektronischen Vorrichtung läuft, eines dritten Satzes an Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle; Befüllen der ersten Vorlage der Benutzerschnittstelle mit dem dritten Satz an Werten, der von der zweiten Anwendung Dritter empfangen wurde; Erzeugen einer zweiten Benutzerschnittstelle für die zweite Anwendung Dritter unter Verwendung der ersten Vorlage der Benutzerschnittstelle, die mit dem dritten Satz an Werten befüllt ist; und Senden von Information an die jeweilige Anzeige, die ermöglicht, dass die zweite Benutzerschnittstelle für die zweite Anwendung Dritter auf der jeweiligen Anzeige angezeigt wird.
  5. Medium nach Anspruch 1, wobei: die Vorrichtung eine Vielzahl von Prozessen enthält, einschließlich eines Prozesses für eine erste Anwendung Dritter zum Ausführen der ersten Anwendung Dritter und eines Satzes von einem oder mehreren Vermittlungsprozessen zum Übermitteln von Information zwischen der jeweiligen Anzeige und des Prozesses der ersten Anwendung Dritter; die Anfrage nach einem oder mehreren Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle von einem Vermittlungsprozess aus dem Satz von einem oder mehreren Vermittlungsprozessen erzeugt wird; und die erste Benutzerschnittstelle von einem Vermittlungsprozess aus dem Satz von einem oder mehreren Vermittlungsprozessen erzeugt wird.
  6. Medium nach Anspruch 1, wobei einer oder mehrere der Werte in dem ersten Satz an Werten von einer entfernten Quelle durch die erste Anwendung Dritter in Reaktion auf die Anfrage nach einem oder mehreren Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle abgerufen werden.
  7. Medium nach Anspruch 1, wobei: die jeweilige Anzeige eine Anzeige in einem Fahrzeuginformationsanzeigesystem ist, die aus einem Fahrersitz eines Fahrzeuges sichtbar ist; und die erste Vorlage der Benutzerschnittstelle eine aus einer Vielzahl von vorbestimmten Vorlagen von Benutzerschnittstellen ist, die eingerichtet sind, Benutzerschnittstellen für die erste Anwendung Dritter auf der jeweiligen Anzeige zu erzeugen, die eine Ablenkung des Fahrers verhindern.
  8. Medium nach Anspruch 1, wobei: die erste Vorlage der Benutzerschnittstelle von einer Vielzahl von unterschiedlichen Anwendungen Dritter verwendet wird, einschließlich der ersten Anwendung Dritter und einer zweiten Anwendung Dritter; das Befüllen der ersten Vorlage der Benutzerschnittstelle mit Werten, die von einer jeweiligen Anwendung Dritter empfangen wurden, ein Einsetzen von Werten beinhaltet, die von der jeweiligen Anwendung Dritter als zu einer ersten Klasse an Werten gehörend identifiziert wurden, in einer vordefinierten Region mit einer vordefinierten Schriftgröße in eine Benutzerschnittstelle, die der jeweiligen Anzeige bereitgestellt wird; und für die erste Vorlage der Benutzerschnittstelle: die erste Anwendung Dritter identifiziert einen ersten Typ an Information als die erste Klasse an Werten; und die zweite Anwendung Dritter identifiziert einen zweiten Typ an Information, der sich von dem ersten Typ an Information unterscheidet, als die erste Klasse an Werten.
  9. Medium nach Anspruch 8, wobei, für die erste Vorlage der Benutzerschnittstelle: die erste Anwendung Dritter identifiziert die Namen von Inhaltsstationen, die entfernt erzeugt wurden, als die erste Klasse an Werten; und die zweite Anwendung Dritter identifiziert die Namen von vorbestimmten Playlists als die erste Klasse an Werten.
  10. Medium nach Anspruch 8, wobei, für die erste Vorlage der Benutzerschnittstelle: die erste Anwendung Dritter identifiziert die Namen von Inhalt, der zu der Vorrichtung gestreamt werden kann, als die erste Klasse an Werten; und die zweite Anwendung Dritter identifiziert die Namen von Inhalt, der auf der Vorrichtung gespeichert ist, als die erste Klasse an Werten.
  11. Medium nach Anspruch 1, wobei: Werte bei der ersten Anwendung Dritter in einer Baumstruktur angeordnet werden, die eine Vielzahl von Knoten beinhaltet, die vorbestimmte Eigenschaften und eine Baumbeziehung mit einem oder mehreren anderen Knoten in der Baumstruktur haben; und die Anfrage nach einem oder mehreren Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle eine oder mehrere der Folgenden beinhaltet: eine Anfrage zur Zurückgabe von Werten, die mit einer Liste von Kind-Knoten eines jeweiligen Knoten aus der Vielzahl der Knoten korrespondieren; eine Anfrage zur Zurückgabe von Werten, die mit einer Liste von Eigenschaften eines jeweiligen Knoten aus der Vielzahl von Knoten korrespondieren; eine Anfrage zum Bereitstellen von Inhalt, der durch den jeweiligen Knoten dargestellt wird; eine Anfrage zum Bereitstellen einer Liste von Knoten, die mit einer Suchanfrage übereinstimmen; und eine Anfrage zum Bereitstellen einer Liste von Aktionen, die spezifisch für die erste Anwendung Dritter ist, und die vorgenommen werden kann, während Zugriff auf Inhalt, der mit der ersten Anwendung Dritter assoziiert ist, bereitgestellt wird.
  12. Medium nach Anspruch 1, wobei: die erste Anwendung Dritter eine Medienpräsentationsanwendung ist; die Vorrichtung eine Anwendung eines Erstanbieters beinhaltet, die eine Medienpräsentationsanwendung ist; die Anwendung des Erstanbieters eine Benutzerschnittstelle des Erstanbieters beinhaltet, die eine Vielzahl von auswählbaren Affordanzen zum Anfragen einer Durchführung von Medienpräsentationsoperationen und eine oder mehrere Inhaltspräsentationsregionen an jeweiligen Orten in der Benutzerschnittstelle des Erstanbieters beinhaltet; und das Erzeugen der ersten Benutzerschnittstelle für die erste Anwendung Dritter ein Erzeugen einer Benutzerschnittstelle beinhaltet, die auswählbare Affordanzen und eine oder mehrere Inhaltspräsentationsregionen beinhaltet, die hinsichtlich Funktion und Ort mit den auswählbaren Affordanzen und Inhaltspräsentationsregionen der Benutzerschnittstelle des Erstanbieters korrespondieren.
  13. Medium nach Anspruch 1, wobei das eine oder die mehreren Programme weiterhin Instruktionen aufweisen, die, wenn sie von einer elektronischen Vorrichtung mit einem oder mehreren Prozessoren und Speicher ausgeführt werden, die Vorrichtung veranlassen, Folgendes auszuführen: nach dem Senden der Information an die jeweilige Anzeige, die ermöglicht, dass die erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeige angezeigt wird: Empfangen, von der ersten Anwendung Dritter, eines aktualisierten ersten Satzes an Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle; und in Reaktion auf das Empfangen des aktualisierten ersten Satzes an Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle: Befüllen der ersten Vorlage der Benutzerschnittstelle mit dem aktualisierten ersten Satz an Werten, der von der ersten Anwendung Dritter empfangen wurde; Erzeugen einer aktualisierten ersten Benutzerschnittstelle für die erste Anwendung Dritter unter Verwendung der ersten Vorlage der Benutzerschnittstelle, die mit dem aktualisierten ersten Satz an Werten befüllt ist; und Bereitstellen von Information an die jeweilige Anzeige, die ermöglicht, dass die aktualisierte erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeige angezeigt wird.
  14. Medium nach Anspruch 1, wobei: die Vorrichtung einen digitalen, persönlichen Assistenzprozess mit Spracherkennungsfähigkeiten beinhaltet; und wobei das eine oder die mehreren Programme weiterhin Instruktionen aufweisen, die, wenn sie durch eine elektronische Vorrichtung mit einem oder mehreren Prozessoren und Speicher ausgeführt werden, die Vorrichtung veranlassen, Folgendes auszuführen: Bestimmen der Fähigkeiten der ersten Anwendung Dritter, basierend auf Antworten von der ersten Anwendung Dritter auf eine Vielzahl von Anfragen an die erste Anwendung Dritter nach Werten, die mit einem Befüllen von Vorlagen einer Benutzerschnittstelle für Benutzerschnittstellen für die jeweilige Anzeige assoziiert sind; Erzeugen eines Indexes der Fähigkeiten der ersten Anwendung Dritter; und Bereitstellen von Sprachzugriff auf die Fähigkeiten der ersten Anwendung Dritter über den digitalen, persönlichen Assistenzprozess.
  15. Medium nach Anspruch 14, wobei das eine oder die mehreren Programme weiterhin Instruktionen aufweisen, die, wenn sie durch eine elektronische Vorrichtung mit einem oder mehreren Prozessoren und Speicher ausgeführt werden, die Vorrichtung veranlassen, Folgendes auszuführen: Erkennen, dass eine vorbestimmte Bedingung eingetroffen ist; und in Reaktion auf das Erkennen, dass die vorbestimmte Bedingung eingetroffen ist: neues Bestimmen der Fähigkeiten der ersten Anwendung Dritter; und neues Erzeugen des Indexes der Fähigkeiten der ersten Anwendung Dritter.
  16. Elektronische Vorrichtung, aufweisend: einen oder mehrere Prozessoren; Speicher; und ein oder mehrere Programme, wobei das eine oder die mehreren Programme in dem Speicher gespeichert sind, und eingerichtet sind, von dem einen oder den mehreren Prozessoren ausgeführt zu werden, wobei das eine oder die mehreren Programme Instruktionen beinhalten zum: Empfangen einer ersten Anzeigenanfrage zur Anzeige einer Benutzerschnittstelle einer ersten Anwendung Dritter auf einer jeweiligen Anzeige, die mit der elektronischen Vorrichtung in Kommunikation steht; in Reaktion auf das Empfangen der ersten Anzeigenanfrage: Erhalten einer ersten Vorlage einer Benutzerschnittstelle, die eingerichtet ist, von einer Vielzahl von Anwendungen Dritter verwendet zu werden; und Anfragen, von der ersten Anwendung Dritter, eines oder mehrerer Werte zum Befüllen der ersten Vorlage der Benutzerschnittstelle; Empfangen, von der ersten Anwendung Dritter, während die erste Anwendung Dritter auf der elektronischen Vorrichtung ausgeführt wird, eines ersten Satzes an Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle; Befüllen der ersten Vorlage der Benutzerschnittstelle mit dem ersten Satz an Werten, der von der ersten Anwendung Dritter empfangen wurde; Erzeugen einer ersten Benutzerschnittstelle für die erste Anwendung Dritter unter Verwendung der ersten Vorlage der Benutzerschnittstelle, die mit dem ersten Satz an Werten befüllt ist; und Senden von Information an die jeweilige Anzeige, die ermöglicht, dass die erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeige angezeigt wird.
  17. Vorrichtung nach Anspruch 16, wobei das eine oder die mehreren Programme weiterhin Instruktionen beinhalten zum: während die erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Vorrichtung angezeigt wird, Empfangen, von einer Eingabevorrichtung für die jeweilige Anzeige, einer jeweiligen Eingabe, die mit einer Auswahl einer Option in der ersten Benutzerschnittstelle korrespondiert; und in Reaktion auf das Empfangen der jeweiligen Eingabe, Bereitstellen von Information an die erste Anwendung Dritter, die auf der elektronischen Vorrichtung ausgeführt wird, die ermöglicht, dass die erste Anwendung Dritter auf die Auswahl der Option in der ersten Benutzerschnittstelle antwortet; Empfangen, von der ersten Anwendung Dritter, der Antwort auf die Auswahl der Option aus der ersten Anwendung Dritter; und Senden von Information an die jeweilige Anzeige, die ermöglicht, dass die Antwort auf die Auswahl der Option dem Benutzer bereitgestellt wird.
  18. Vorrichtung nach Anspruch 16, wobei das eine oder die mehreren Programme weiterhin Instruktionen beinhalten zum: während die erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeige angezeigt wird: Empfangen von Information, die eine Auswahl einer jeweiligen Option in der ersten Benutzerschnittstelle angibt; und in Reaktion auf das Empfangen der Information, die die Auswahl der jeweiligen Option in der ersten Benutzerschnittstelle angibt: Erhalten einer zweiten Vorlage einer Benutzerschnittstelle, die sich von der ersten Vorlage der Benutzerschnittstelle unterscheidet; und Anfragen, von der ersten Anwendung Dritter, eines oder mehrerer Werte zum Befüllen der zweiten Vorlage der Benutzerschnittstelle; Empfangen, von der ersten Anwendung Dritter, während die erste Anwendung Dritter auf der elektronischen Vorrichtung läuft, eines zweiten Satzes an Werten zum Befüllen der zweiten Vorlage der Benutzerschnittstelle; Befüllen der zweiten Vorlage der Benutzerschnittstelle mit dem zweiten Satz an Werten, der von der ersten Anwendung Dritter empfangen wurde; Erzeugen einer zweiten Benutzerschnittstelle für die erste Anwendung Dritter unter Verwendung der zweiten Vorlage der Benutzerschnittstelle, die mit dem zweiten Satz an Werten befüllt ist; und Senden von Information an die jeweilige Anzeige, die ermöglicht, dass die zweite Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeige angezeigt wird.
  19. Vorrichtung nach Anspruch 16, wobei das eine oder die mehreren Programme weiterhin Instruktionen beinhalten zum: nach dem Senden der Information an die jeweilige Anzeige, die ermöglicht, dass die erste Benutzerschnittstelle für die erste Anwendung Dritter auf der jeweiligen Anzeige angezeigt wird: Empfangen einer zweiten Anzeigenanfrage zur Anzeige einer Benutzerschnittstelle für eine zweite Anwendung Dritter, die sich von der ersten Anwendung Dritter unterscheidet, auf der jeweiligen Anzeige; in Reaktion auf das Empfangen der zweiten Anzeigenanfrage, Anfragen, von der zweiten Anwendung Dritter, eines oder mehrerer Werte zum Befüllen der ersten Vorlage der Benutzerschnittstelle; Empfangen, von der zweiten Anwendung Dritter, während die zweite Anwendung Dritter auf der elektronischen Vorrichtung ausgeführt wird, eines dritten Satzes an Werten zum Befüllen der ersten Vorlage der Benutzerschnittstelle; Befüllen der ersten Vorlage der Benutzerschnittstelle mit dem dritten Satz an Werten, der von der zweiten Anwendung Dritter empfangen wurde; Erzeugen einer zweiten Benutzerschnittstelle für die zweite Anwendung Dritter unter Verwendung der ersten Vorlage der Benutzerschnittstelle, die mit dem dritten Satz an Werten befüllt ist; und Senden von Information an die jeweilige Anzeige, die ermöglicht, dass die zweite Benutzerschnittstelle für die zweite Anwendung Dritter auf der jeweiligen Anzeige angezeigt wird.
DE202014004555.0U 2013-06-08 2014-05-30 Vorrichtung zur Erzeugung von Benutzerschnittstellen aus einer Vorlage Active DE202014004555U1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201361832841P 2013-06-08 2013-06-08
US61/832,841 2013-06-08

Publications (1)

Publication Number Publication Date
DE202014004555U1 true DE202014004555U1 (de) 2014-09-18

Family

ID=51228624

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202014004555.0U Active DE202014004555U1 (de) 2013-06-08 2014-05-30 Vorrichtung zur Erzeugung von Benutzerschnittstellen aus einer Vorlage

Country Status (6)

Country Link
CN (2) CN110083411B (de)
AU (1) AU2014100585B4 (de)
DE (1) DE202014004555U1 (de)
NL (1) NL2012965C2 (de)
TW (1) TWI515640B (de)
WO (1) WO2014197340A1 (de)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US10003938B2 (en) 2015-08-14 2018-06-19 Apple Inc. Easy location sharing
EP3792742B1 (de) * 2015-09-09 2023-08-16 Apple Inc. Emoji und gespeicherte reaktionen
US10445425B2 (en) 2015-09-15 2019-10-15 Apple Inc. Emoji and canned responses
US20170124035A1 (en) * 2015-10-30 2017-05-04 Ford Global Technologies, Llc Layered user interfaces and help systems
CN105867931B (zh) * 2016-04-07 2019-05-07 北京橙鑫数据科技有限公司 信息展示界面的变更方法和装置
US11138566B2 (en) * 2016-08-31 2021-10-05 Fulcrum Global Technologies Inc. Method and apparatus for tracking, capturing, and synchronizing activity data across multiple devices
DK180171B1 (en) 2018-05-07 2020-07-14 Apple Inc USER INTERFACES FOR SHARING CONTEXTUALLY RELEVANT MEDIA CONTENT
KR20230037704A (ko) * 2018-05-07 2023-03-16 구글 엘엘씨 연결 디바이스를 제어하기 위한 복합 그래픽 어시스턴트 인터페이스를 제공하는 방법, 시스템, 및 장치
CN113273220A (zh) * 2018-09-06 2021-08-17 上海伴我科技有限公司 资源的配置方法、用户界面的导航方法及电子设备、存储介质
CN110401764B (zh) * 2018-09-06 2023-10-27 上海有偶咨询策划有限公司 简化的交互逻辑及交互方法、电子设备
CN111158803A (zh) 2018-11-07 2020-05-15 财团法人工业技术研究院 虚拟助理磋商系统及其方法
CN109600298A (zh) * 2018-11-15 2019-04-09 安徽信果网络科技有限公司 一种基于微信小程序的手机界面模拟显示系统
US11074408B2 (en) 2019-06-01 2021-07-27 Apple Inc. Mail application features
US11194467B2 (en) 2019-06-01 2021-12-07 Apple Inc. Keyboard management user interfaces
CN110837534A (zh) * 2019-11-07 2020-02-25 北京字节跳动网络技术有限公司 一种数据列表的展示方法、装置、设备和存储介质
US11413531B2 (en) * 2020-03-03 2022-08-16 Sony Interactive Entertainment Inc. Game console application with action card strand
US11169665B2 (en) 2020-03-03 2021-11-09 Sony Interactive Entertainment Inc. Game console user interface with application previews
US11185758B2 (en) * 2020-03-03 2021-11-30 Sony Interactive Entertainment Inc. Game console application with action cards
CN111985199B (zh) * 2020-08-13 2023-10-27 黄石示界创信息科技有限公司 基于思维导图的ppt生成方法及系统
TWI751653B (zh) * 2020-08-14 2022-01-01 博橡科技股份有限公司 人機介面開發方法、人機介面裝置以及電腦程式產品
CN112099872A (zh) * 2020-09-09 2020-12-18 杭州朗澈科技有限公司 一种基于语音引导的k8s资源创建系统
CN113095056B (zh) * 2021-03-17 2024-04-12 阿里巴巴创新公司 生成方法、处理方法、装置、电子设备以及介质
CN114153445B (zh) * 2022-02-09 2022-05-20 中国电子信息产业集团有限公司 一种通过批量选择组件实现快速生成连接关系的方法
WO2023235434A2 (en) * 2022-06-04 2023-12-07 Apple Inc. Synchronized rendering

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1378149A (zh) * 2001-04-02 2002-11-06 钱跃良 便携式农业专家系统
JP4903054B2 (ja) * 2003-12-31 2012-03-21 オープンピーク インコーポレイテッド 制御環境内のコンポーネントを自動的に管理するための方法、システムおよびコンピュータプログラム製品
US7509588B2 (en) * 2005-12-30 2009-03-24 Apple Inc. Portable electronic device with interface reconfiguration mode
US20090276730A1 (en) * 2008-03-04 2009-11-05 Alexandre Aybes Techniques for navigation of hierarchically-presented data
US20090284476A1 (en) * 2008-05-13 2009-11-19 Apple Inc. Pushing a user interface to a remote device
US9870130B2 (en) * 2008-05-13 2018-01-16 Apple Inc. Pushing a user interface to a remote device
US8970647B2 (en) * 2008-05-13 2015-03-03 Apple Inc. Pushing a graphical user interface to a remote device with display rules provided by the remote device
US8595371B2 (en) * 2008-09-19 2013-11-26 Samsung Electronics Co., Ltd. Sending a remote user interface
CN102193953B (zh) * 2010-03-17 2017-04-12 日电(中国)有限公司 桌面应用迁移系统和方法
US8386929B2 (en) * 2010-06-22 2013-02-26 Microsoft Corporation Personal assistant for task utilization
CN102455903B (zh) * 2010-10-29 2014-12-10 卓望数码技术(深圳)有限公司 一种用户应用界面的生成方法
US20120265784A1 (en) * 2011-04-15 2012-10-18 Microsoft Corporation Ordering semantic query formulation suggestions
US9104441B2 (en) * 2011-09-30 2015-08-11 Avaya Inc. Context and application aware selectors

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
IEEE 802.11a
IEEE 802.11b
IEEE 802.11g
IEEE 802.11n

Also Published As

Publication number Publication date
AU2014100585A4 (en) 2014-07-03
NL2012965C2 (en) 2015-03-10
CN110083411A (zh) 2019-08-02
TW201506759A (zh) 2015-02-16
CN104685470B (zh) 2018-11-30
NL2012965A (en) 2014-12-09
CN110083411B (zh) 2022-02-01
TWI515640B (zh) 2016-01-01
WO2014197340A1 (en) 2014-12-11
CN104685470A (zh) 2015-06-03
AU2014100585B4 (en) 2015-03-12

Similar Documents

Publication Publication Date Title
DE202014004555U1 (de) Vorrichtung zur Erzeugung von Benutzerschnittstellen aus einer Vorlage
DE202013012233U1 (de) Vorrichtung und grafische Benutzerschnittstelle zum Anzeigen zusätzlicher Informationen in Antwort auf einen Benutzerkontakt
DE202016001516U1 (de) Vorrichtungen und grafische Benutzerschnittstellen zur Interaktion mit einem Steuerobjekt, während ein weiteres Objekt verschoben wird
DE202014004544U1 (de) Vorrichtung und graphische Benutzerschnittstelle zum Bereitstellen von Navigations- und Suchfunktionalitäten
DE112016003459B4 (de) Sprecherkennung
DE202014004560U1 (de) Vorrichtung und grafische Benutzerschnittstelle zum Synchronisieren zweier oder mehrerer Anzeigen
DE202016001513U1 (de) Vorrichtung und Benutzerschnittstelle zur Verarbeitung einer Intensität von Berührungskontakten
DE202014004554U1 (de) Vorrichtung und grafische Benutzerschnittstelle zum Teilen von Inhalt aus einer jeweiligen Anwendung
DE202014004549U1 (de) Vorrichtung und grafische Benutzerschnittstelle zum Teilen von Inhalt aus einer jeweiligen Anwendung
DE202017004558U1 (de) Intelligenter automatisierter Assistent
DE202014004572U1 (de) Vorrichtung und grafische Benutzerschnittstelle zum Schalten zwischen Kameraschnittstellen
DE202015005999U1 (de) Benutzerschnittstelle zum Einschränken von Meldungen und Alarmen
DE202016001489U1 (de) Vorrichtungen und grafische Benutzerschnittstellen zum Anzeigen und Verwenden von Menüs
DE202016005219U1 (de) Benutzerschnittstelle zum Navigieren und Wiedergeben von Inhalt
DE102016214955A1 (de) Latenzfreier digitaler Assistent
DE202015003891U1 (de) Vorgefertigte Antworten in Nachrichten
DE202016002906U1 (de) Vorrichtungen zum Navigieren zwischen Benutzerschnittstellen
US20140365895A1 (en) Device and method for generating user interfaces from a template
DE202013011826U1 (de) Vorrichtung und grafische Benutzerschnittstelle zum Zugreifen auf eine Anwendung in einer gesperrten Vorrichtung
DE202016006323U1 (de) Vorrichtung zum Navigieren zwischen Benutzerschnittstellen
DE112016001105T5 (de) Reagieren von konkurrierenden Vorrichtungen auf Sprachauslöser
DE112013002412T5 (de) Vorrichtung, Verfahren und grafische Benutzeroberfläche zum Bereitstellen von Rückmeldung für das Wechseln von Aktivierungszuständen eines Benutzerschnittstellenobjekts
DE112016001104T5 (de) Aktivierung von virtuellen Assistenten
DE202016001483U1 (de) Geräte zur Steuerung einer Medienpräsentation
DE112013002381T5 (de) Vorrichtung, Verfahren und grafische Benutzeroberfläche für die Bewegung und Ablegen eines Benutzerschnittstellenobjekts

Legal Events

Date Code Title Description
R207 Utility model specification

Effective date: 20141030

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
R152 Utility model maintained after payment of third maintenance fee after eight years