-
QUERVERWEISE ZU VERWANDTEN ANMELDUNGEN
-
Diese Anmeldung beansprucht die Priorität und den Vorteil der nicht vorläufigen
US-Patentanmeldung Nr. 14/754,391 , die am 29. Juni 2015 angemeldet wurde. Die gesamten Inhalte und Substanz der zuvor erwähnten Anmeldung werden hiermit durch Verweis in deren gesamtem Umfang einbezogen, wie in ihrer Gesamtheit hierin dargestellt.
-
HINTERGRUND
-
Computergeräte, wie z. B. Mobiltelefone, können eine Anzahl von Merkmalen, Funktionalitäten und Anwendungen beinhalten, die konzipiert sind, um einem Benutzer erhöhten Nutzen des Computergeräts bereitzustellen. In einigen dieser Computergeräte können Merkmale ununterbrochen hinzugefügt werden, wenn Betriebssysteme oder Anwendungen Aktualisierungen empfangen. In einigen Situationen können Merkmale, Funktionalitäten und Anwendungen eines Computergeräts so reichlich und neu sein, dass ein Benutzer sie möglicherweise nicht bemerkt, selbst wenn sie für den Benutzer nützlich wären. Daher kann ein Benutzer Schwierigkeiten haben, sich Merkmalen bewusst zu werden, die der Benutzer ansonsten gerne verwenden würde. Zusätzlich können bestimmte Funktionalitäten, Merkmale und Anwendungen eines Computergeräts nur in einem bestimmten Kontext nützlich sein, wie z. B. in einer bestimmten Situation oder für einen Benutzer mit einer bestimmten Gruppe von Bedürfnissen. Daher können wesentliche Anstrengungen seitens eines Benutzers erforderlich sein, mehrere neue und alte Merkmale des Computergeräts zu lernen und sich daran zu erinnern. Des Weiteren können wesentliche zusätzliche Zeit und Anstrengungen seitens des Benutzers erforderlich sein, anschließend zu bestimmen, welche dieser Merkmale oder Anwendungen, und unter welchen Umständen die Merkmale oder Anwendungen nützlich sein könnten.
-
Figurenliste
-
Es wird nun auf die zugehörigen Figuren Bezug genommen, die nicht notwendigerweise maßstabsgetreu gezeichnet sind, und wobei:
- 1 eine Computersystemarchitektur 100 gemäß einer exemplarischen Implementierung der offenbarten Technologie darstellt.
- 2 ein Ablaufdiagramm eines Verfahrens 200 gemäß einer exemplarischen Implementierung zeigt.
- 3A ein Computergerät 300 gemäß einer exemplarischen Implementierung veranschaulicht.
- 3B ein Computergerät 300 mit einer Benachrichtigung in Zusammenhang mit einem kontextbasierten Merkmal veranschaulicht, das zum Anzeigen ausgegeben wird, gemäß einer exemplarischen Implementierung.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Einige Implementierungen der offenbarten Technologie werden unter Bezugnahme auf die zugehörigen Zeichnungen vollständiger beschrieben. Die offenbarte Technologie kann jedoch in vielen unterschiedlichen Formen enthalten sein, und sollte nicht als auf die hierin beschriebenen Implementierungen begrenzt angesehen werden.
-
Exemplarische Implementierungen der offenbarten Technologie können Systeme und Verfahren bereitstellen, um einen Benutzer eines mobilen Computergeräts über ein Merkmal des Geräts oder der Anwendung zur Verwendung mit dem Gerät zu benachrichtigen, die der Benutzer nützlich finden kann, deren er sich ansonsten jedoch nicht bewusst ist. Insbesondere können die offenbarten Systeme und Verfahren einen Benutzer eines Mobilgeräts über ein Merkmal oder eine Anwendung des Geräts benachrichtigen, die für den Benutzer in einem gegebenen Kontext nützlich ist. Beispielsweise kann das System einen Benutzer über eine Anwendung benachrichtigen, die konzipiert ist, um Bluetooth die gemeinsame Nutzung von Dateien zu erlauben, wenn das System beobachtet, dass der Benutzer versucht, Dateien per E-Mail an Freunde zu senden, die sich in der Nähe befinden. Nach dem Lernen der Bluetooth-Anwendung zur gemeinsamen Nutzung kann der Benutzer in der Lage sein, Dateien effizienter gemeinsam mit Freunden zu nutzen. Gemäß einigen Implementierungen kann das System den Benutzer über das Merkmal oder die Anwendung nur dann benachrichtigen, wenn der Benutzer nicht zuvor auf das Merkmal oder die Anwendung zugegriffen hat. Daher kann die offenbarte Technologie zum Informieren von Benutzern von Mobilgeräten ohne relevante Merkmale und Anwendungen sein, deren sich der Benutzer nicht bewusst ist. Implementierungen der offenbarten Technologie stellen dem Benutzer zudem Tutorials des kontextbasierten Merkmals oder der Anwendung bereit, und erlauben dem Benutzer, das Merkmal oder die Anwendung nach Benachrichtigung zu aktivieren.
-
Bestimmte Implementierungen der offenbarten Technologie können bequeme Verfahren zum Bestimmen des Umgebungskontexts eines Mobilgeräts, und Benachrichtigen eines Benutzers über ein Merkmal oder eine Anwendung bereitstellen, die im Verhältnis zu diesem bestimmten Umgebungskontext nützlich sind. Beispielsweise können Computergeräte eine Vielzahl von Sensoren und Sendeempfängern aufweisen, die überwacht werden können, um Daten zu sammeln, die beim Ableiten des Umgebungskontexts des Mobilgeräts verwendet werden können. Darüber hinaus kann ein Computergerät auch Signale von Anwendungen überwachen, die auf dem Computergerät ausgeführt werden, wie z. B. Webbrowser, Textnachrichten, E-Mail-Anwendungen und andere zur Information, die zusätzlich zu Sensordaten beim Ableiten des Umgebungskontextes des Geräts verwendet werden können. Gemäß einigen Implementierungen, wenn der Umgebungskontext des Mobilgeräts bekannt ist, kann das System der offenbarten Technologie den Benutzer über Merkmale und Anwendungen benachrichtigen, die für die aktuelle Situation oder die Umstände des Benutzers relevant sind.
-
Daher kann die offenbarte Technologie einem Benutzer Benachrichtigungen bereitstellen, die einem Benutzer erlauben, über neue und alte Merkmale eines Mobilgeräts in Situationen zu lernen, in denen ein bestimmtes Merkmal oder eine Anwendung für den Benutzer nützlich sein kann. Es versteht sich, das durch Benachrichtigen des Benutzers über ein fähigkeits- oder kontextbasiertes Merkmal des Geräts passend zu dem aktuellen Kontext ein Benutzer wahrscheinlicher die Nützlichkeit des Merkmals erkennen wird, und ein größeres Wissen gewinnen und einen größeren Nutzen aus den Merkmalen des Mobilgeräts ziehen kann.
-
Exemplarische Implementierungen der offenbarten Technologie werden nun unter Bezugnahme auf die zugehörigen Figuren beschrieben.
-
Wie gewünscht, können Implementierungen der offenbarten Technologie ein Computergerät mit mehr oder weniger als den in 1 veranschaulichten beinhalten. Es versteht sich, dass die Computergerätearchitektur 100 nur exemplarisch bereitgestellt wird, und den Umfang der unterschiedlichen Implementierungen der vorliegenden offenbarten Systeme, Verfahren und computerlesbaren Medien in keiner Weise begrenzt.
-
Die Computergerätearchitektur 100 von 1 beinhaltet einen Zentralprozessor (CPU) 102, in dem Computeranweisungen verarbeitet werden; und eine Anzeigeschnittstelle 104, die eine grafische Benutzeroberfläche unterstützt und Funktionen zum Wiedergeben von Video, Grafik, Bildern und Texten auf der Anzeige bereitstellt. In bestimmten exemplarischen Implementierungen der offenbarten Technologie kann die Anzeigeschnittstelle 104 direkt mit einer lokalen Anzeige, wie z. B. einer Touchscreen-Anzeige verbunden sein, die einem mobilen Computergerät zugeordnet ist. In einer anderen exemplarischen Implementierung kann die Anzeigeschnittstelle 104 zum Bereitstellen von Daten, Bildern und anderen Informationen für eine externe/entfernte Anzeige 150 konfiguriert sein, die nicht notwendigerweise physisch mit dem mobilen Computergerät verbunden ist. Beispielsweise kann ein Desktop-Monitor zum Spiegeln von Grafiken und anderen Informationen verwendet werden, die auf einem mobilen Computergerät präsentiert werden. In bestimmten Implementierungen kann die Anzeigeschnittstelle 104 z. B. drahtlos über einen WLAN-Kanal oder eine andere Netzwerkverbindungsschnittstelle 112 mit der externen/entfernten Anzeige kommunizieren.
-
In einer exemplarischen Implementierung kann die Netzwerkverbindungsschnittstelle 112 als eine verdrahtete oder drahtlose Kommunikationsschnittstelle konfiguriert sein, und kann Funktionen zum Wiedergeben von Videos, Grafiken, Bildern, Text oder anderen Informationen, oder eine beliebige Kombination derselben auf der Anzeige bereitstellen. In einem Beispiel kann eine Kommunikationsschnittstelle einen seriellen Anschluss, einen parallelen Anschluss, einen universellen Eingangs- und Ausgangs- (GPIO) Anschluss, einen Gameport, einen universellen seriellen Bus (USB), einen Mikro-USB-Anschluss, einen hochauflösenden Multimedia (HDMI) -Anschluss, einen Videoanschluss, einen Audioanschluss, einen Bluetooth-Anschluss, einen Nahfeldkommunikations (NFC) -Anschluss, einen anderen Kommunikationsanschluss oder eine beliebige Kombination derselben beinhalten.
-
Die Computergerätearchitektur 100 kann eine Tastaturschnittstelle 106 beinhalten, die eine Kommunikationsschnittstelle zu einer physischen oder virtuellen Tastatur bereitstellt. In einer exemplarischen Implementierung kann die Computergerätearchitektur 100 eine präsenzempfindliche Anzeigeschnittstelle 108 zum Verbinden mit einer präsenzempfindlichen Anzeige 107 beinhalten. Gemäß bestimmter exemplarischer Implementierungen der offenbarten Technologie kann die präsenzempfindliche Eingabeschnittstelle 108 eine Kommunikationsschnittstelle zu unterschiedlichen Geräten, wie z. B. ein Zeigegerät, ein kapazitiver Touchscreen, ein resistiver Touchscreen, ein Touchpad, eine Tiefenkamera usw. bereitstellen, die in einer Anzeige integriert sein können oder nicht.
-
Die Computergerätearchitektur 100 kann konfiguriert sein, um eine oder mehrere Eingabekomponenten über eine oder mehrere Eingabe-/Ausgabeschnittstellen (z. B. die Tastaturschnittstelle 106, die Anzeigeschnittstelle 104, die präsenzempfindliche Eingabeschnittstelle 108, die Netzwerkverbindungsschnittstelle 112, die Kameraschnittstelle 114, die Audioschnittstelle 116 usw.) konfiguriert sein, um der Computergerätearchitektur 100 zu ermöglichen, Informationen für einen Benutzer zu präsentieren und Informationen von der Umgebung eines Geräts, einschließlich Anweisungen von dem Benutzer des Geräts zu präsentieren. Die Eingabekomponenten können eine Maus, einen Trackball, ein Steuerkreuz, ein Trackpad, ein Touch-geprüftes Trackpad, ein präsenzempfindliches Trackpad, eine präsenzempfindliche Anzeige, ein Scrollrad, eine Digitalkamera, eine digitale Videokamera, eine Webkamera, ein Mikrofon, einen Sensor, eine Smartcard und dergleichen beinhalten. Zusätzlich kann eine Eingabekomponente in der Computergerätearchitektur 100 integriert sein oder kann ein separates Gerät sein. Als zusätzliche Beispiele können Eingabekomponenten einen Beschleunigungssensor, ein Magnetometer, eine Digitalkamera, ein Mikrofon und einen optischen Sensor beinhalten.
-
Exemplarische Implementierungen der Computergerätearchitektur 100 können eine Antennenschnittstelle 110 beinhalten, die eine Kommunikationsschnittstelle zu einer Antenne bereitstellt, eine Netzwerkverbindungsschnittstelle 112 kann eine drahtlose Kommunikationsschnittstelle zu einem Netzwerk unterstützen. Wie oben erwähnt, kann die Anzeigeschnittstelle 104 in Kommunikation mit der Netzwerkverbindungsschnittstelle 112 stehen, um z. B. Informationen zum Anzeigen auf einer entfernten Anzeige bereitzustellen, die nicht direkt mit dem System verbunden, oder daran angeschlossen ist. In bestimmten Implementierungen wird eine Kameraschnittstelle 114 bereitgestellt, die als eine Kommunikationsschnittstelle agiert und Funktionen zum Erfassen von Digitalbildern von einer Kamera bereitstellt. In bestimmten Implementierungen wird eine Audioschnittstelle 116 als eine Kommunikationsschnittstelle zum Umwandeln von Ton in elektrische Signale unter Verwendung eines Mikrofons und zum Umwandeln von elektrischen Signalen in Ton unter Verwendung eines Lautsprechers bereitgestellt. Gemäß exemplarischen Implementierungen wird ein Direktzugriffsspeicher (RAM) 118 bereitgestellt, auf dem Computeranweisungen und Daten in einem flüchtigen Speichergerät zum Verarbeiten durch die CPU 102 gespeichert werden können.
-
Gemäß einer exemplarischen Implementierung beinhaltet die Computergerätearchitektur 100 einen schreibgeschützten Speicher (ROM) 120, bei dem unveränderlicher niedrigstufiger Systemcode oder Daten für grundlegende Systemfunktionen, wie z. B. grundlegende Eingaben und Ausgaben (E/A), Inbetriebnahme oder Empfangen von Tastenanschlägen von einer Tastatur, in einem nicht flüchtigen Speichergerät gespeichert werden. Gemäß einer exemplarischen Implementierung beinhaltet die Computergerätearchitektur 100 ein Archivierungsmedium 122 oder einen anderen geeigneten Speichertyp (z. B. RAM, ROM, programmierbaren Nur-Lese-Speicher (PROM), löschbaren programmierbaren Nur-Lese-Speicher (EPROM), elektrisch löschbaren programmierbaren Nur-Lese-Speicher (EEPROM), magnetische Platten, optische Datenträger, Floppy-Disks, Festplatten, entfernbare Kassetten, Flash-Laufwerke), zum Speichern von Dateien, das ein Betriebssystem 124, Anwendungsprogramme 126 (einschließlich z. B. einer Webbrowseranwendung, einem Widget oder einem Gadget-Modul, und/oder andere Anwendungen, sofern notwendig), und Datendateien 128 beinhaltet. Gemäß einer exemplarischen Implementierung beinhaltet die Computergerätearchitektur 100 eine Stromquelle 130, die einen angemessenen Wechselstrom (AC) oder Gleichstrom (DC) für Leistungskomponenten bereitstellt.
-
Gemäß einer exemplarischen Implementierung beinhaltet die Computergerätearchitektur 100 ein Telefonie-Subsystem 132, das zulässt, dass das Gerät 100 Audio- und Dateninformationen über ein Telefonnetz überträgt. Obwohl als separates Subsystem dargestellt, kann das Telefonie-Subsystem 132 als Teil der Netzwerkverbindungsschnittstelle 112 implementiert werden. Die bestandteilbildenden Komponenten und die CPU 102 kommunizieren miteinander über einen Bus 134.
-
Gemäß einer exemplarischen Implementierung weist die CPU 102 eine angemessene Struktur auf, um einen Computerprozessor zu bilden. In einer Anordnung kann die CPU 102 mehr als eine Verarbeitungseinheit beinhalten. Der RAM 118 bildet eine Schnittstelle mit dem Computerbus 134, um schnelle RAM-Speicherung für die CPU 102 während der Ausführung der Softwareprogramme, wie z. B. dem Betriebssystem, Anwendungsprogrammen und Gerätetreibern, bereitzustellen. Genauer gesagt, lädt die CPU 102 computerausführbare Prozessschritte von dem Speichermedium 122 oder anderen Medien in ein Feld des RAM 118, um Softwareprogramme auszuführen. Daten können in dem RAM 118 gespeichert werden, wobei auf die Daten während der Ausführung durch die Computer-CPU 102 zugegriffen werden kann. In einer exemplarischen Konfiguration beinhaltet die Gerätearchitektur 100 mindestens 128 MB RAM und 256 MB Flash-Speicher.
-
Das Speichermedium 122 selbst kann eine Anzahl von physischen Laufwerkseinheiten beinhalten, wie z. B. ein redundantes Array von unabhängigen Platten (RAID), ein Diskettenlaufwerk, einen Flash-Speicher, ein USB-Flash-Laufwerk, ein externes Festplattenlaufwerk, einen USB-Stick, Pen-Drive, ein Key-Drive, ein optisches HD-DVD (High-Density Digital Versatile Disc)-Laufwerk, ein internes Festplattenlaufwerk, ein optisches Blu-Ray-Disc-Laufwerk oder ein optisches HDD-Plattenlaufwerk (Holographie Digital Data Storage), einen synchronen dynamischen Direktzugriffsspeicher (SDRAM) mit externem Mini-Dual-Inline-Speichermodul (DIMM) oder ein externes Mikro-DIMM-SDRAM Solch ein computerlesbares Archivierungsmedium ermöglicht einem Computergerät, auf computerausführbare Verfahrensschritte, Anwendungsprogramme und dergleichen zuzugreifen, die auf entfernbaren und nicht entfernbaren Speichermedien gespeichert sind, Daten von dem Gerät herunterzuladen oder Daten auf das Gerät zu laden. Ein Computerprogrammprodukt, wie z. B. eines zum Verwenden eines Kommunikationssystems, kann physisch in einem Archivierungsmedium 122 enthalten sein, welches ein maschinenlesbares Archivierungsmedium beinhalten kann.
-
Gemäß einer exemplarischen Implementierung kann der Begriff Computergerät, wie hierin verwendet, eine CPU sein, oder als eine CPU (z. B. die CPU 102 von 1) konzeptualisiert sein. In dieser exemplarischen Implementierung kann das Computergerät (CPU) mit einem oder mehreren Peripheriegeräten, wie z. B. einer Anzeige, gekoppelt, verbunden und/oder in Kommunikation damit sein. In einer anderen exemplarischen Implementierung kann sich der Begriff Computergerät, wie hierin verwendet, auf ein mobiles Computergerät, wie z. B. ein Smartphone, Tablet-Computer oder eine Smart Watch beziehen. In dieser exemplarischen Implementierung kann das Computergerät Inhalt auf seiner lokalen Anzeige und/oder Lautsprecher(n) ausgeben. In einer anderen exemplarischen Implementierung kann das Computergerät Inhalt (z. B. über WLAN) auf einem externen Anzeigegerät, wie z. B. einem Fernseher oder einem externen Computersystem, ausgeben.
-
In exemplarischen Implementierungen der offenbarten Technologie kann ein Computergerät eine beliebige Anzahl von Hardware- und/oder Software-Anwendungen beinhalten, die ausgeführt werden, um jeden beliebigen der Vorgänge zu erleichtern. In exemplarischen Implementierungen können eine oder mehrere E/A-Schnittstellen die Kommunikation zwischen dem Computergerät und einem oder mehreren Eingabe-/Ausgabegeräten erleichtern. Beispielsweise können ein universeller serieller Busanschluss, ein serieller Anschluss, ein Plattenlaufwerk, ein CD-ROM-Laufwerk und/oder ein oder mehrere Benutzerschnittstellengeräte, wie z. B. eine Anzeige, eine Tastatur, eine Zehnertastatur, eine Maus, ein Bedienfeld, eine Touchscreen-Anzeige, ein Mikrofon usw., eine Benutzerinteraktion mit dem Computergerät erleichtern. Die eine oder mehreren E/A-Schnittstellen können zum Empfangen oder Sammeln von Daten und/oder Benutzeranweisungen von einer großen Vielfalt von Eingabegeräten verwendet werden. Empfangene Daten können durch einen oder mehrere Computerprozessoren wunschgemäß in unterschiedlichen Implementierungen der offenbarten Technologie verarbeitet, und/oder in einem oder mehreren Speichergeräten gespeichert werden.
-
Eine oder mehrere Netzwerksschnittstellen können die Verbindung der Computergeräteingänge und -ausgänge mit einem oder mehreren geeigneten Netzwerken und/oder Verbindungen erleichtern, z. B. die Verbindungen, die die Kommunikation mit einer beliebigen Anzahl von dem System zugeordneten Sensoren erleichtern. Das eine oder die mehreren Netzwerke können darüber hinaus die Verbindung mit einem oder mehreren geeigneten Netzwerken, beispielsweise einem lokalen Netzwerk, einem Großraumnetzwerk, dem Internet, einem Mobilfunknetz, einem Hochfrequenznetzwerk, einem Bluetooth-fähigen Netzwerk, einem WLAN-fähigen Netzwerk, einem satellitenbasierten Netzwerk, einem beliebigen drahtgebundenen Netzwerk, einem beliebigen drahtlosen Netzwerk, usw. zur Kommunikation mit externen Geräten und/oder Systemen, ermöglichen.
-
2 zeigt ein Ablaufdiagramm eines Verfahrens 200 gemäß einer exemplarischen Implementierung der offenbarten Technologie. Das Verfahren 200 beginnt bei Block 202, wo ein Computergerät eine Angabe über Kontextinformationen und eine Angabe über Verlaufsinformationen in Zusammenhang mit dem Computergerät und/oder dem Benutzer des Computergeräts empfängt. Bei Block 204 kann das Computergerät einen Umgebungskontext von einem Mobilgerät (d. h. ein Computergerät eines bestimmten Benutzers) bestimmen, wobei der Umgebungskontext einem oder mehreren kontextbasierten Merkmalen des Computergeräts zugeordnet ist. In exemplarischen Implementierungen kann das Computergerät den Umgebungskontext des Mobilgeräts in Reaktion auf Empfangen der Angabe über Kontextinformationen und der Angabe über Verlaufsinformationen des Benutzers des Computergeräts bestimmen. Bei Entscheidungsblock 206 kann das Computergerät von der Angabe über Verlaufsinformationen bestimmen, ob ein Verwendungskriterium, das dem kontextbasierten Merkmal zugeordnet ist, welches dem Umgebungsmerkmal zugeordnet ist, erfüllt wurde.
-
Ein Verwendungskriterium kann eine Gruppe von Bedingungen sein, die mit der verlaufsmäßigen Verwendung des kontextbasierten Merkmals oder einem damit in Zusammenhang stehenden Merkmal in Zusammenhang stehen. Gemäß einigen Implementierungen kann ein Verwendungskriterium beinhalten, ob das kontextbasierte Merkmal jemals zuvor aktiviert wurde, die Anzahl von Malen, die ein kontextbasiertes Merkmal in der Vergangenheit aktiviert oder verwendet wurde, die Anzahl von Malen, die das kontextbasierte Merkmal über einen spezifizierten Zeitrahmen aktiviert wurde (das Merkmal z. B. in den letzten 6 Monaten 3 Mal aktiviert wurde), oder ob ein ähnliches Merkmal durch den Benutzer aktiviert wurde. Fachleute auf dem Gebiet werden verstehen, dass diese Beispiele von Verwendungskriterien lediglich der Veranschaulichung dienen, und dass Verwendungskriterien eine große Bandbreite von Bedingungen umfassen könnten. Die Verwendungskriterien können nützlich beim Ermitteln sein, ob ein Benutzer sich wahrscheinlich bereits des kontextbasierten Merkmals bewusst ist, oder ob der Benutzer über das Vorhandensein des Merkmals benachrichtigt werden sollte. Beispielsweise kann ein Verwendungskriterium in einigen Implementierungen sein, ob das dem Umgebungskontext zugeordnete kontextbasierte Merkmal in der Vergangenheit drei oder mehr Male aktiviert wurde. In exemplarischen Implementierungen kann ein Computergerät diese Bestimmung basierend auf den zuvor empfangenen Verlaufsinformationen vornehmen. Gemäß einigen Implementierungen, wenn ein Computergerät bestimmt, dass das kontextbasierte Merkmal die Verwendungskriterien bestimmt hat, kann das Verfahren bei Block 290 enden, andernfalls kann das Verfahren zu Block 208 vorrücken. Bei Block 208 kann das Computergerät in Reaktion auf Bestimmen, dass das dem Umgebungskontext zugeordnete kontextbasierte Merkmal die Verwendungskriterien nicht erfüllt hat, eine Angabe der Bestimmung ausgeben, dass das kontextbasierte Merkmal die Verwendungskriterien nicht erfüllt hat, sodass das Mobilgerät eine Benachrichtigung in Zusammenhang mit dem kontextbasierten Merkmal ankündigt. Auf diese Weise kann das Mobilgerät den Benutzer über ein Merkmal oder eine Anwendung des Geräts benachrichtigen, das/die für den Benutzer unter den aktuellen Umständen (d. h. dem aktuellen Umgebungskontext) nützlich sein könnte. Gemäß exemplarischen Implementierungen kann die Benachrichtigung den Benutzer des Mobilgeräts darüber informieren, wie das Merkmal oder die Anwendung des Mobilgeräts zu verwenden ist. Die Details des Verfahrens 200 werden nun nachfolgend ausführlicher beschrieben.
-
Wie zuvor erläutert, kann die offenbarte Technologie in unterschiedlichen Implementierungen eine Benachrichtigung zum Darstellen für einen Benutzer von einem Mobilgerät in Bezug auf Merkmale oder Anwendungen des Geräts ausgeben, die dem Benutzer möglicherweise nicht vertraut sind. Gemäß einigen Implementierungen kann die Benachrichtigung ein Merkmal oder eine Anwendung betreffen, das/die kontextbasiert ist (d. h. ein Merkmal oder eine Anwendung, die basierend auf dem bestimmten Umgebungskontext des mobilen Computergeräts 300 nützlich sein können). Gemäß Implementierungen der offenbarten Technologie kann ein Umgebungskontext grob als die Situation oder die Umstände des mobilen Computergeräts 300 und/oder des Benutzers darstellend verstanden werden. Gemäß einigen Implementierungen kann ein Computergerät der offenbarten Technologie, wie z. B. ein mobiles Computergerät 300, oder ein entfernter Server den Umgebungskontext des mobilen Computergeräts 300 in Reaktion auf Empfangen 202 von Angaben über Kontextinformationen und Angaben über Verlaufsinformationen bestimmen.
-
Fachleute auf dem Gebiet werden verstehen, dass „Angaben über Kontext-/Verlaufsinformationen“ austauschbar mit „Kontext-/Verlaufsinformationen“ verwendet werden können, da Fachleute auf dem Gebiet erkennen werden, dass Computergeräts in der Lage sind, Informationen und Angaben über Informationen zu empfangen und zu verarbeiten, je nachdem wie notwendig und angemessen sie sind. In einigen Implementierungen können Kontextinformationen Daten sein, die von Sensoren von mobilen Computergeräten 300 abgeleitet sind, die die physische Umgebung des mobilen Computergeräts 300 angeben. Beispielsweise kann dies Sensormesswerte in Bezug auf Ton von einer Audioschnittstelle 116 von 1, Licht von einer Umgebungslichtsensorschnittstelle 140, Bilder von Kameraschnittstelle 114, Temperatur von Thermometerschnittstelle 142, Bewegung von Beschleunigungssensorschnittstelle 144, Ausrichtung von Gyroskopschnittstelle 146, Standort von GPS-Standortschnittstelle 148, Luftdruck von einer Luftdruckschnittstelle 152 (die ein Barometer beinhalten kann), Feuchte- oder Feuchtigkeit von einer Feuchtigkeitssensorschnittstelle 154, und andere Sensormesswerte beinhalten, die für die aktuelle Umgebung des mobilen Computergeräts 300 relevant sind. Darüber hinaus können Kontextinformationen Daten beinhalten, die von Überwachungssignalen des Computergeräts 300 an Antennenschnittstelle 110, Netzwerkverbindungsschnittstelle 112 oder Telefonie-Subsystem 132 abgeleitet sind, um Informationen über die Aktivitäten des Benutzers auf dem mobilen Computergerät 300 zu erhalten. Beispielsweise können Kontextinformationen aus der Überwachung von Textnachrichten, E-Mails, Telefonanrufen oder Webbrowsing auf dem mobilen Computergerät 300 abgleitet werden.
-
Verlaufsdaten können grob dahingehend verstanden werden, dass sie Informationen beinhalten, die mit der vergangenen Verwendung von Merkmalen und Anwendungen des mobilen Computergeräts 300 durch einen Benutzer in Zusammenhang stehen, die lokal in RAM 118 oder Datendateien 128, oder entfernt gespeichert sind, und worauf durch Netzwerkverbindungsschnittstelle 112 zugegriffen wird. Verlaufsdaten können zudem andere Informationen über den Benutzer, wie z. B. Wohnadresse der Benutzer, ihr Telefonbuch, soziale Netzwerkverbindungen, Orte, an denen sie sich in der Vergangenheit aufgehalten haben, ihren Webbrowsingverlauf und ein großes Sortiment an anderen ähnlichen Informationen beinhalten. Um diese Konzepte zu veranschaulichen, kann ein Benutzer in einem Beispiel eine Internetsuche nach Wegbeschreibungen zu der Bibliothek (d. h. Verlaufsinformationen) durchgeführt haben, während Messwerte von dem Beschleunigungssensor und GPS auf dem mobilen Computergerät des Benutzers den Standort und die Bewegung eines Benutzers (d. h. Kontextinformationen) angeben können. Basierend auf den Verlaufsinformationen der Internetsuche nach Wegbeschreibungen zu der Bibliothek kann ein Computergerät der vorliegenden Offenbarung in der Lage sein, die Absicht des Benutzers vorherzusagen, zu der Bibliothek zu gehen. Darüber hinaus kann ein Computergerät die Beförderungsart des Benutzers und das Ziel basierend auf aktuellen und Verlaufsdaten bestimmen, die von dem Beschleunigungssensor und GPS erfasst werden. Daher kann in dem vorangegangenen Beispiel das System der vorliegenden Technologie bestimmen, dass sich der Benutzer (z. B. gehend, auf einem Fahrrad oder in einem Auto) auf einer bestimmten Route auf den Weg zur Bibliothek begibt (d. h. der Umgebungskontext).
-
Gemäß einigen Implementierungen kann ein Computergerät den Umgebungskontext des mobilen Computergeräts unter Verwendung der Kontextinformationen oder einer Kombination der Kontextinformationen und Verlaufsinformationen bestimmen. In dem zuvor beschriebenen Beispiel kann das System, nachdem der Umgebungskontext von den Verlaufsinformationen und Kontextinformationen bestimmt ist, Benachrichtigungen an den Benutzer in Bezug auf Merkmale und Anwendungen des mobilen Computergeräts 300 bereitstellen, die zu dem Umgebungskontext gehören. Beispielsweise kann das System eine Benachrichtigung für den Benutzer in Bezug auf eine interaktive Bibliotheksanwendung bereitstellen, die Öffnungszeiten, Etagenpläne und ein durchsuchbares Inventar von Büchern bereitstellt.
-
Wie zuvor erwähnt, kann ein Computergerät der offenbarten Technologie in einigen Implementierungen Kontextinformationen empfangen. Wie erläutert, können Kontextinformationen Informationen in Bezug auf die physische Umgebung oder Benutzeraktivität des mobilen Computergeräts 300 zu einem gegebenen Zeitpunkt bereitstellen. Die physische Umgebung kann ohne Begrenzung beinhalten, ob es laut oder ruhig ist, ob es hell oder dunkel ist, ob es heiß oder kalt ist, ob es trocken oder feucht ist, den Luftdruck, die atmosphärischen Bedingungen, wie z. B. Regen, Schnee, Wind oder Bewölkungsgrad, sowie den Standort des mobilen Computergeräts 300. Gemäß einigen Implementierungen kann ein Computergerät Informationen über die physische Umgebung durch Sensoren, wie z. B. einen Luftdrucksensor erhalten, der Daten für das mobile Computergerät 300 durch eine Luftdruckschnittstelle 152 bereitstellen kann. Gemäß einigen Implementierungen kann ein Computergerät der vorliegenden Offenbarung außerdem Informationen über die physische Umgebung von entfernten Geräten, wie z. B. Servern, erhalten, die Websites hosten, die Wetterinformationen enthalten, die zu dem Standort des mobilen Computergeräts gehören. Der Standort des mobilen Computergeräts 300 kann z. B. ein geografischer Standort (wie z. B. GPS-Koordinaten), ein semantischer Standort (z. B. „Georgia Tech Campus“) oder ein bestimmter Raum in einem Gebäude sein. Die Benutzeraktivität kann eine Beobachtung der Aktionen des Benutzers beinhalten, die durch Erkennen und Überwachen des mobilen Computergeräts 300 abgeleitet wurden. Beispielsweise kann es sich bei der Benutzeraktivität um Gehen, Laufen, Fahren, Fahrradfahren, Telefonieren, Stillsitzen, Textnachrichten senden, einen Webbrowser verwenden, um nach einem bestimmten Artikel zu suchen, oder um eine beliebige Anzahl anderer Aktivitäten handeln, von denen es möglich ist, Nutzungsdaten und -informationen zu unterscheiden, die von einem oder mehreren Computergeräten gesammelt wurden.
-
Gemäß einigen Implementierungen können Kontextinformationen von Sensoren und Hörern auf einem mobilen Computergerät erhalten werden, die die Aktivität eines Mobilgeräts überwachen können. 3A veranschaulicht ein mobiles Computergerät 300 gemäß einer exemplarischen Implementierung der offenbarten Technologie, das einige oder alle der Komponenten des in 1 dargestellten Computergeräts 100 beinhalten kann. Typischerweise weist das mobile Computergerät 300 eine Vielfalt von Sensoren auf. Beispielsweise kann ein Anzeigebildschirm 302 des mobilen Computergeräts 300 eine Implementierung eines präsenzempfindlichen Eingabegeräts 108 von 1, wie z. B. ein kapazitiver Touchscreen, sein, der Berührungen auf dem Anzeigebildschirm 302 wahrnehmen kann, die durch einen Benutzer ausgeführt wurden. Ein anderer Sensor des mobilen Computergeräts 300 kann ein Audioeingabegerät 310, wie z. B. ein Mikrofon, zum Empfangen von Audio- oder Sprachbefehlen, und deren Bereitstellung für das mobile Computergerät 300 durch Audioschnittstelle 116 von 1 sein. Audioeingabegerät 310 kann zudem aktiviert werden, um Audiodaten, wie z. B. Hintergrundgeräusche der Umgebung zu erkennen und zu empfangen, die das mobile Computergerät 300 umgeben. Das mobile Computergerät 300 kann außerdem einen Beschleunigungssensor und/oder ein Gyroskop beinhalten, wovon jedes in der Lage sein kann, die Bewegung, Beschleunigung und Ausrichtung des mobilen Computergeräts 300 zu erkennen und dem mobilen Computergerät 300 Sensormessungen jeweils durch eine Beschleunigungssensorschnittstelle 144 und eine Gyroskopschnittstelle 146 bereitzustellen. Das mobile Computergerät 300 kann zudem einen optischen Sensor, wie z. B. einen Lichtsensor, zum Erkennen von Licht, oder eine Kamera beinhalten, die Digitalfotos oder -videos aufnehmen, und Daten für das mobile Computergerät 300 jeweils durch eine Umgebungslichtsensorschnittstelle 140 und eine Kameraschnittstelle 114 bereitstellen kann, die repräsentativ für das Licht, Fotos oder Videos sind. Das mobile Computergerät 300 kann auch einen GPS-Empfänger zum Erkennen der geografischen Position des mobilen Computergeräts 300 beinhalten und kann dem mobilen Computergerät 300 GPS-Daten durch eine GPS-Standortschnittstelle 148 bereitstellen.
-
Das mobile Computergerät 300 kann eine beliebige Anzahl von anderen Sensoren beinhalten, die auf dem Gebiet bekannt sind, wie z. B. unter anderem einen Drucksensor, einen Herzfrequenzmonitor, einen Temperatursensor, einen Vibrationssensor, einen chemischen Sensor oder einen Feuchte- oder Feuchtigkeitssensor. Durch die Verwendung einer Mobilfunkantenne, Bluetooth-Antenne oder dergleichen kann das mobile Computergerät 300 außerdem in der Lage sein, bestimmte andere elektronische Geräte innerhalb einer spezifizierten Nähe zu erkennen. Wie von Fachleuten auf dem Gebiet verstanden werden wird, kann das mobile Computergerät 300 unterschiedliche Sensorschnittstellen ähnlich denjenigen in 1 aufweisen, die konfiguriert sind, um die Übertragung von Daten von den Sensoren zu dem mobilen Computergerät 300 zuzulassen. In einigen Implementierungen kann ein entferntes Computergerät in der Lage sein, einen oder mehrere der Sensoren des mobilen Computergeräts 300 zu aktivieren.
-
Es versteht sich, dass Fachleute auf dem Gebiet der aktuell offenbarten Technologie eine große Bandbreite von Sensoren verwenden können, um aktiv oder passiv Kontextinformationen über das mobile Computergerät 300 und dessen Umgebung gemäß der offenbarten Technologie zu sammeln. Zusätzlich zum Erhalten von Kontextinformationen von den oben beschriebenen Sensoren, und wie zuvor beschrieben, kann das mobile Computergerät 300 auch Kontextinformationen durch Überwachen von Informationen und Signalen in Zusammenhang mit der Verwendung von Gerätemerkmalen erhalten, wie z. B. den Inhalt von mobilen Anwendungen, Textnachrichten, E-Mails, Telefongesprächen und anderen Inhalt, auf den durch einen Benutzer des mobilen Computergeräts 300 zugegriffen wird (kollektiv „Anwendungsdaten“). Gemäß einigen Implementierungen können einige oder alle der Sensordaten und Anwendungsdaten (kollektiv Kontextinformationen) auf dem mobilen Computergerät 300 oder auf einem entfernten Computergerät, wie z. B. einem entfernten Server, gespeichert werden. Darüber hinaus, wenn gemäß einigen Implementierungen ein Benutzer mehr als einem Gerät zugeordnet ist, können alle Daten, die einem Benutzer zugeordnet sind, einem Benutzerprofil zugeordnet werden, das zentralisierte Überwachung der Aktivität des Benutzers über alle Geräte ermöglichen kann, und somit kann auf alle beliebigen Sensor- oder Anwendungsdaten, die von einem Gerät gesammelt wurden, durch die anderen, damit in Zusammenhang stehenden Geräte, zugegriffen werden. Wenn beispielsweise ein Benutzer eine Webseite auf einem Heimcomputer besucht, der dem Profil des Benutzers zugeordnet ist, kann das mobile Computergerät 300 Daten in Zusammenhang mit dem Besuch des Benutzers auf der Webseite empfangen. Gemäß einigen Implementierungen können Daten von allen Geräten des Benutzers einem Benutzerprofil zugeordnet werden. Gemäß einigen Implementierungen können Daten von einigen oder allen Geräten eines Benutzers auf dem mobilen Computergerät 300 oder auf einem entfernten Server gespeichert werden.
-
Wie zuvor beschrieben, kann ein Computergerät der offenbarten Technologie vor Bestimmen eines Umgebungskontexts und Generieren einer Benachrichtigung Verlaufsinformationen in Zusammenhang mit dem Benutzer des Computergeräts empfangen. In einigen Implementierungen können Verlaufsinformationen, die in RAM 118 auf einem entfernten Computergerät und/oder auf einem Cloud-Server gespeichert sein können, ganz allgemein Datensätze von einer vergangenen Verwendung von Merkmalen und Anwendungen des mobilen Computergeräts 300 durch den Benutzer, sowie andere Informationen über den Benutzer, wie z. B. seine Wohnadresse, sein Telefonbuch, seine sozialen Netzwerkverbindungen, Orte, an denen er sich in der Vergangenheit aufgehalten hat, seinen Webbrowsingverlauf, und ein großes Sortiment an anderen ähnlichen Informationen beinhalten. Beispielsweise können Verlaufsinformationen eine Angabe beinhalten, dass ein Benutzer im Rahmen eines Versuchs, ein bestimmtes Buch zu kaufen, eine Internetsuche ausgeführt hat. Verlaufsinformationen können zudem beinhalten, ob ein Benutzer zuvor auf ein bestimmtes Merkmal oder eine Anwendung des mobilen Computergeräts 300 zugegriffen, oder diese verwendet hat. Beispielsweise könnten Verlaufsinformationen eine Angabe beinhalten, dass der Benutzer nie auf eine Bilderfassungsanwendung des mobilen Computergeräts 300 zugegriffen hat. In einigen Implementierungen können Verlaufsinformationen beinhalten, wie viele Male und/oder wie oft ein Benutzer ein bestimmtes Merkmal oder eine Anwendung des mobilen Computergeräts 300 aktiviert hat. Gemäß einigen Implementierungen kann ein Computergerät der offenbarten Technologie die Verwendung eines mobilen Computergeräts 300 überwachen und Verlaufsinformationen basierend auf der überwachten Aktivität speichern. In einigen Implementierungen können die Verlaufsinformationen des Benutzers des Computergeräts auf einem entfernten Computergerät gespeichert werden. In einigen Implementierungen können die Informationen, die von der Überwachung der Verwendung des mobilen Computergeräts 300 erhalten werden, mit Verlaufsinformationen von anderen Geräten kombiniert werden, die dem Benutzerprofil eines Benutzers zugeordnet sind.
-
Gemäß einigen Implementierungen der offenbarten Technologie kann ein Computergerät der offenbarten Technologie vor dem Generieren einer Benachrichtigung einen Umgebungskontext des mobilen Computergeräts 300 in Reaktion auf Empfangen von Angaben über Kontextinformationen und einer Angabe über Verlaufsinformationen des Benutzers des Computergeräts bestimmen. Wie zuvor bemerkt, kann der Umgebungskontext des mobilen Computergeräts 300 allgemein die Situation oder Umstände des Mobilgeräts und des Benutzers repräsentieren. Gemäß einigen Implementierungen kann eine Vielzahl von unterschiedlichen Umgebungskontexten von unterschiedlichen Kombinationen von Kontextinformationen und Verlaufsinformationen abgeleitet werden. Wie zuvor erwähnt, kann das System in einer exemplarischen Situation Kontextinformationen, wie z. B. GPS- und Beschleunigungssensormessungen gepaart mit Verlaufsinformationen, wie z. B. einer Internetsuche eines Weges zur Bibliothek, verwenden, um zu bestimmen, dass der Umgebungskontext des Beispiels darin besteht, dass ein Benutzer mit einem Fahrrad zu der Bibliothek fährt. In einer anderen exemplarischen Situation kann das System Kontextinformationen, darunter auch die Zeit von der Uhr eines Geräts, die Dunkelheit von dem optischen Sensor des Mobilgeräts, und/oder die Schnarchgeräusche, die von dem Mikrofon eines Geräts erkannt wurden, sowie die Verlaufsdaten der vergangenen Herzfrequenz des Benutzers und Bewegungsdaten verwenden, die angeben, dass der Benutzer dazu neigt, während des relevanten Zeitraums zu schlafen, um zu bestimmen, dass es sich bei der Kontextumgebung der exemplarischen Situation um jene handeln könnte, dass der Benutzer schläft und nicht durch Telefonanrufe gestört werden möchte. Falls in dieser Instanz ein unerwünschter Anruf eingeht, während der Benutzer schläft, kann das System eine Benachrichtigung in Bezug auf ein Merkmal generieren, das dem Benutzer ermöglicht, das Mobilgerät stummzuschalten, wenn der Benutzer schläft. Daher versteht sich, dass jeder bestimmte Umgebungskontext durch eine andere Gruppe von Kontextinformationen und Verlaufsinformationen bestimmt werden kann. Gemäß einigen Implementierungen kann der Umgebungskontext des mobilen Computergeräts 300 durch einen Kontextmanager bestimmt werden. In einigen Implementierungen kann ein Kontextmanager eine Anwendung sein, die Kontextinformationen und Verlaufsinformationen von einem oder mehreren Geräten sammeln kann, die durch den Benutzer verwendet werden, um den Umgebungskontext des mobilen Computergeräts 300 zu bestimmen.
-
Nachdem ein Umgebungskontext bestimmt ist, kann ein Computergerät 100 vor dem Generieren einer Benachrichtigung gemäß der vorliegenden Offenbarung einen Kontext basierend auf einem Merkmal identifizieren, das zur Verwendung in dem Umgebungskontext geeignet ist. Kontextbasierte Merkmale und Anwendungen können Merkmale und Anwendungen sein, die unter einer bestimmten Gruppe von Umständen nützlich sind. Wie oben zuvor beschrieben, kann der Umgebungskontext des mobilen Computergeräts 300 einem oder mehreren kontextbasierten Merkmalen oder Anwendungen des mobilen Computergeräts 300 zugeordnet werden, die zur Verwendung in dem Umgebungskontext geeignet sind. Dementsprechend kann eine Benachrichtigung, die auf dem mobilen Computergerät 300 generiert und von demselben ausgegeben wird, mit einem kontextbasierten Merkmal oder einer Anwendung in Zusammenhang stehen, die dem aktuellen Umgebungskontext zugeordnet ist. Auf diese Weise kann der Benutzer über ein kontextbasiertes Merkmal oder eine Anwendung benachrichtigt werden, deren Verwendung zu der Zeit und an dem Ort der Benachrichtigung vorteilhaft sein kann (d. h. wenn der Benutzer in dem Umgebungskontext anwesend ist, auf den das kontextbasierte Merkmal oder die Anwendung anwendbar ist).
-
Ein kontextbasiertes Merkmal kann sich auf eine bestimmte Zeit, einen Ort oder eine Gruppe von Umständen beziehen. Beispielsweise kann eine Anwendung, die es einem Benutzer ermöglicht, Inhalt von dem Gerät des Benutzers mit anderen Geräten unter Verwendung einer Bluetooth-Verbindung gemeinsam zu nutzen, nur in dem Fall nützlich sein, wenn sich andere Bluetooth-aktivierte Geräte, die Personen gehören, mit denen ein Benutzer wünscht, Inhalt gemeinsam zu nutzen, innerhalb einer angemessenen Nähe zu dem Gerät des Benutzers befinden. Daher würde in dem vorangegangenen Beispiel ein System der vorliegenden Offenbarung idealerweise Verlaufsinformationen und Kontextinformationen kennen, wie z. B.: 1) dass der Benutzer Inhalt mit anderen über die Anwendung gemeinsam nutzen möchte, 2) die Identitäten von zugeordneten Personen und Geräten, mit denen der Benutzer Inhalt gemeinsam nutzen möchte, und 3) ob sich beliebige der zugeordneten Personen und Geräte innerhalb des Bereichs des Bluetooth-Signals des mobilen Computergeräts 300 befinden. Gemäß diesem Beispiel würde das System Verlaufsinformationen verlangen, die die Freunde und Familie des Benutzers angeben, mit denen der Benutzer Inhalt gemeinsam nutzen möchte, und Kontextinformationen, die angeben, ob sich eine solche Person aktuell innerhalb der Bluetooth-Nähe zu dem mobilen Computergerät 300 des Benutzers befindet. Dementsprechend kann das Computergerät nach Empfangen der relevanten Kontextinformationen und Verlaufsinformationen, und nach Bestimmen des entsprechenden Umgebungskontexts veranlassen, dass dem Benutzer eine Benachrichtigung präsentiert wird, um den Benutzer über die gemeinsame Nutzung des Bluetooth-Merkmals zu informieren, sodass der Benutzer in der Lage sein kann, das Merkmal zum Zeitpunkt der Benachrichtigung zu verwenden.
-
Ein weiteres Beispiel einer kontextbasierten Anwendung kann eine Anwendung sein, die einem Benutzer ermöglicht, passiv einen elektronischen Arretierungsmechanismus des mobilen Computergeräts 300 zu deaktivieren, wenn der Benutzer zu Hause ist („intelligentes Schloss“). In diesem Fall bestünde der Umgebungskontext darin, dass der Benutzer zu Hause ist, und dass der Benutzer Zugriff auf die Inhalte eines mobilen Computergeräts 300 haben möchte (wie durch den Versuch des Benutzers angegeben, das mobile Computergerät 300 zu entsperren). Daher würde in dem vorangegangenen Beispiel ein System der vorliegenden Offenbarung idealerweise Verlaufsinformationen und Kontextinformationen kennen, wie z. B.: 1) dass der Benutzer Zugriff auf die Inhalte seines mobilen Computergeräts haben möchte, wenn zu Hause, 2) wo sich das Zuhause des Benutzers befindet, und 3) wann der Benutzer zu Hause ist. Dies könnte ohne das Wissen über die Verlaufsinformationen des Heimatstandorts des Benutzers und die Kontextinformationen des aktuellen Standorts des Benutzers implementiert werden. Gemäß einigen Implementierungen kann das System eine Benachrichtigung generieren, um den Benutzer über das Smart Lock-Merkmal zu informieren, nachdem es beobachtet hat, dass der Benutzer versucht, das Mobilgerät zu Hause zu entsperren. Wie von Fachleuten verstanden werden wird, kann eine große Bandbreite an kontextbasierten Merkmalen eines Mobilgeräts vorhanden sein, für die es erforderlich ist, dass eine Vielzahl von unterschiedlichen Verlaufs- und Kontextinformationen funktioniert.
-
Gemäß Implementierungen der offenbarten Technologie kann das Computergerät vor dem Generieren einer Benachrichtigung in Zusammenhang mit einem kontextbasierten Merkmal bestimmen (206 aus 2), ob ein kontextbasiertes Merkmal ein Verwendungskriterium nicht erfüllt. Wie erkannt werden wird, kann z. B. Bestimmen, dass der Benutzer das Merkmal bereits in der Vergangenheit (z. B. ein exemplarisches Verwendungskriterium) aktiviert hat, dem Computergerät ermöglichen, das Generieren von Benachrichtigung in Bezug auf Merkmale und Anwendungen zu vermeiden, deren sich der Benutzer bereits bewusst ist. Daher wird gemäß einigen Implementierungen keine Benachrichtigung in Zusammenhang mit einem kontextbasierten Merkmal des mobilen Computergeräts 300 generiert, wenn die vergangene Verwendung des kontextbasierten Merkmals durch den Benutzer das Verwendungskriterium erfüllt. Daher kann das Verfahren in einigen Implementierungen beim Bestimmen, ob eine Benachrichtigung generiert wird oder nicht, zuerst bestimmen, ob ein Verwendungskriterium erfüllt wurde. Beispiele eines Verwendungskriteriums können die Anzahl von Malen, die auf ein kontextbasiertes Merkmal durch den Benutzer zugegriffen wurde, die Häufigkeit, mit der auf das kontextbasierte Merkmal zugegriffen wurde, oder die abgelaufene Zeit, seitdem das letzte Mal auf das kontextbasierte Merkmal zugegriffen wurde, beinhalten, sind jedoch nicht darauf beschränkt. Beispielsweise kann das Verfahren in einigen Implementierungen, wenn der Benutzer mehrere Male auf das kontextbasierte Merkmal zugegriffen hat, trotzdem eine Benachrichtigung an den Benutzer generieren, wenn auf das kontextbasierte Merkmal das letzte Mal vor über einem Jahr zugegriffen wurde.
-
Eine exemplarische Implementierung der offenbarten Technologie wird nun in Bezug auf das zuvor beschriebene kontextbasierte Merkmal Smart Lock beschrieben. Wie verstanden werden wird, kann ein Smart Lock-Merkmal passiv eine Blockierungsfunktion eines mobilen Computergeräts 300 deaktivieren, wenn sich das mobile Computergerät 300 zu Hause bei dem Benutzer befindet, sodass ein Benutzer auf die Inhalte seines mobilen Computergeräts 300 zugreifen kann, ohne es zuerst entsperren zu müssen. Daher empfängt ein Computergerät in einer exemplarischen Implementierung eine Angabe über Verlaufsinformationen, wobei die Verlaufsinformationen den Standort des Heims des Benutzers (z. B. wie zuvor von dem Benutzer spezifiziert, oder von dem Adressbuch des Benutzers erhalten), sowie den Verlauf des Benutzers beinhalten könnten, die angibt, ob der Benutzer jemals zuvor auf das Smart Lock zugegriffen, oder es verwendet hat. Das Computergerät könnte darüber hinaus eine Angabe über Kontextinformationen empfangen, die, wie z. B. durch die GPS-Koordinaten des Geräts bestimmt, den aktuellen Standort des mobilen Computergeräts 300 beinhalten könnten, oder darüber, dass sich das Gerät innerhalb des WLAN-Bereichs eines Heim-Zugangspunktes befindet. Die Angabe über Kontextinformationen kann zudem eine Angabe beinhalten, dass der Benutzer versucht, auf Inhalt auf dem mobilen Computergerät 300 zuzugreifen. Das Computergerät kann den Umgebungskontext des mobilen Computergeräts 300 von den Verlaufsinformationen und den Kontextinformationen bestimmen, die in diesem Fall dem Szenario entsprechen können, dass „der Benutzer zu Hause ist und auf Inhalt auf dem Mobilgerät zugreifen möchte“. Der Umgebungskontext, dass der Benutzer zu Hause ist und auf Inhalt auf dem Gerät zugreifen möchte, ist dem kontextbasierten Merkmal des Smart Lock-Merkmals zugeordnet, da dieses Merkmal in diesem Umgebungskontext nützlich wird. Danach kann das Computergerät basierend auf der Angabe über zuvor empfangenen Verlaufsinformationen bestimmen, ob der Benutzer das Smart Lock-Merkmal zuvor aktiviert hat oder nicht. Gemäß einigen Implementierungen kann das Computergerät, wenn es bestimmt, dass der Benutzer zuvor nicht auf das Smart Lock-Merkmal zugegriffen hat, eine Benachrichtigung in Zusammenhang mit dem Smart Lock-Merkmal veranlassen, die auf dem mobilen Computergerät 300 zu generieren ist. In einigen Implementierungen kann die Benachrichtigung konzipiert sein, um den Benutzer über das Vorhandensein des Smart Lock-Merkmals zu informieren. Beispielsweise kann das mobile Computergerät 300, wie in 3B dargestellt, eine Benachrichtigung 308 in Reaktion darauf ausgeben, dass ein Benutzer versucht, die Sperre 306 des Mobilgeräts zu entsperren, während er zu Hause ist.
-
Gemäß einigen Implementierungen kann eine Benachrichtigung eine Nachricht sein, die auf dem Bildschirm 302 des mobilen Computergeräts 300 präsentiert wird. Die Nachricht kann bestimmt sein, um den Benutzer über das Vorhandensein des kontextbasierten Merkmals oder der Anwendung des mobilen Computergeräts 300 zu informieren. Gemäß einigen Implementierungen kann die Nachricht einen Link zu dem kontextbasierten Merkmal des mobilen Computergeräts 300 bereitstellen, das dem Benutzer ermöglichen kann, leicht auf das kontextbasierte Merkmal auf dem mobilen Computergerät 300 zuzugreifen. In einigen Implementierungen kann die Nachricht eine Übersicht der Funktionalitäten und Nützlichkeit des kontextbasierten Merkmals beinhalten. In einigen Implementierungen kann die Nachricht ein Tutorial beinhalten, das konzipiert ist, um dem Benutzer zu zeigen, wie das kontextbasierte Merkmal zu verwenden oder einzurichten ist. Darüber hinaus kann die Nachricht in einigen Implementierungen ein Link zu einer externen Webseite bereitstellen, die mehr Informationen in Bezug auf das kontextbasierte Merkmal bereitstellen kann. In einigen Implementierungen kann eine Benachrichtigung hörbar sein. Beispielsweise kann das mobile Computergerät 300 einen Ton, wie z. B. einen Klingelton oder Piepton, ausgeben. In einigen Implementierungen kann eine Benachrichtigung taktil sein. Beispielsweise kann das mobile Computergerät 300 vibrieren.
-
Gemäß einigen Implementierungen kann es wünschenswert sein, das Benachrichtigen eines Benutzers über ein Merkmal oder eine Anwendung zu vermeiden, bevor er genügend Zeit hatte, die Merkmale und Anwendungen des mobilen Computergeräts 300 auszuprobieren. Daher können gemäß einigen Implementierungen Aspekte der vorliegenden Offenbarung nach dem Bestimmen, dass ein dem Merkmal zugeordnetes Verwendungskriterium nicht erfüllt würde, ferner einen Schritt des Bestimmens beinhalten, jedoch bevor veranlasst wird, dass eine Benachrichtigung generiert wird, ob sich das mobile Computergerät 300 mehr als eine Schwellenwertanzahl von Malen in dem Umgebungskontext befand. Mit anderen Worten können Verwendungskriterien minimale und maximale Parameterwerte oder mehr als einen Bereich von Parameterwerten aufweisen. In einigen Implementierungen kann das Computergerät die Anzahl von Malen, die das Mobilgerät in dem Umgebungskontext war, mit einem bestimmten Benachrichtigungsschwellenwert vergleichen und ggf. nur eine Angabe der Bestimmung ausgeben, dass das kontextbasierte Merkmal die Verwendungskriterien nicht erfüllt hat, nachdem der Benachrichtigungsschwellenwert überschritten ist. Beispielsweise kann im Falle des zuvor beschriebenen Smart Lock ein Benachrichtigungsschwellenwert von zehn Versuchen vorhanden sein, um das mobile Computergerät zu entsperren, während es sich im Zuhause des Benutzers befindet. Mit anderen Worten kann das Verfahren in dieser Implementierung den Benutzer nicht nach dem ersten Mal benachrichtigen, wenn der Benutzer versucht, das mobile Computergerät 300 zu Hause zu entsperren, könnte jedoch bis zum elften Mal warten, an dem der Benutzer versucht, das mobile Computergerät 300 zu Hause zu entsperren, bevor es das Senden einer Benachrichtigung veranlasst. In einigen Implementierungen kann jedes kontextbasierte Merkmal einen anderen Benachrichtigungsschwellenwert aufweisen. Wie erkannt werden wird, kann Integrieren eines Schwellenwertes oder Bereitstellen zusätzlicher Einschränkungen in Bezug darauf, wie bald eine Benachrichtigung an einen Benutzer über ein bestimmtes kontextbasiertes Merkmal zu senden ist, Benutzern Zeit geben, Merkmale ihres mobilen Computergeräts selbst auszuprobieren und verhindern, dass Benutzer mit Benachrichtigung überfordert werden, wenn ihre mobilen Computergeräte neu sind. In einigen Implementierungen kann der Benachrichtigungsschwellenwert zurückgesetzt werden, nachdem die Benachrichtigung generiert ist. Beispielsweise kann das System in dem zuvor beschriebenen Fall des Smart Lock-Merkmals, das einen Benachrichtigungsschwellenwert von zehn aufweist, nach dem elften Versuch des Entsperrens des Telefons zu Hause eine Benachrichtigung generieren, wenn der Benutzer jedoch auf die Benachrichtigung nicht reagiert oder auf das Smart Lock-Merkmal zugreift und es aktiviert, kann das System nach den nächsten elf Entsperrungsversuchen eine weitere Benachrichtigung in Zusammenhang mit dem Smart Lock-Merkmal generieren.
-
Gemäß einigen Implementierungen können Aspekte der vorliegenden Offenbarung zusätzliche Schritte aufweisen, um zu verhindern, dass Benachrichtigungen einen Benutzer mit Benachrichtigungen über verfügbare Merkmale und Anwendungen überfordern. In einigen Implementierungen der offenbarten Technologie kann die Anzahl von Benachrichtigungen, die dem Benutzer über einen spezifizierten Zeitrahmen bereitgestellt werden, durch einen Benachrichtigungsgrenzwert begrenzt werden. Beispielsweise kann in einigen Implementierungen ein Benachrichtigungsgrenzwert von zwei die Anzahl von Benachrichtigungen auf zwei Benachrichtigungen pro Monat begrenzen. Wenn die Anzahl von Benachrichtigungen so begrenzt ist, können in einigen Implementierungen Benachrichtigungen über dieser Anzahl einfach vorübergehend verworfen werden. Beispielsweise kann in einigen Implementierungen eine Benachrichtigung über dem Grenzwert verworfen werden, und wird erst nach dem nächsten Mal generiert, wenn das mobile Computergerät 300 in den erforderlichen Umgebungskontext eintritt, der mit dem kontextbasierten Merkmal in Zusammenhang steht, der Gegenstand der Benachrichtigung war. In einigen Implementierungen kann eine Benachrichtigung über dem Grenzwert verzögert, und dem Benutzer bei Ablauf des spezifizierten Zeitrahmens präsentiert werden. In einigen Implementierungen kann die Benachrichtigung über dem Grenzwert in dem mobilen Computergerät 300 gespeichert werden, und kann durch einen Benutzer nach eigenem Ermessen zugänglich sein. In einigen Implementierungen kann ein Benachrichtigungsgrenzwert die Anzahl von Malen begrenzen, die das System einen Benutzer über ein bestimmtes kontextbasiertes Merkmal benachrichtigt. Beispielsweise kann das System in einigen Implementierungen nur eine Benachrichtigung über ein bestimmtes kontextbasiertes Merkmal zwei Mal anzeigen, und dann nie mehr.
-
Gemäß einigen Implementierungen kann die offenbarte Technologie Daten von anderen Benutzern integrieren, um den Benachrichtigungsprozess zu verbessern. In einigen Implementierungen kann das System Informationen über alle Benutzer in Bezug auf an Benutzer erfolgte Benachrichtigungen sammeln, sowie die nachfolgenden Antworten der Benutzer auf diese Benachrichtigung, um zu bestimmen, welche Benachrichtigungen am wahrscheinlichsten zur Folge haben, dass ein Benutzer das kontextbasierte Merkmal verwendet, das der Gegenstand der Benachrichtigung ist. Das System kann dann priorisieren, über welche kontextbasierten Merkmale ein Benutzer zuerst zu benachrichtigen ist. Darüber hinaus kann in einigen Implementierungen das System einen Schwellenwert einstellen, der verwendet wird, um zu bestimmen, wann eine Benachrichtigung an einen Benutzer basierend auf der Rate von Benutzerakzeptanz des kontextbasierten Merkmals zu senden ist. Wenn beispielsweise ein bestimmtes kontextbasiertes Merkmal durch eine hohe Rate von Benutzern nach Empfangen einer Benachrichtigung verwendet wird, kann das System den Schwellenwert verringern, dessen Erreichen erforderlich ist, bevor ein Benutzer benachrichtigt wird, der bis dahin noch nicht über das kontextbasierte Merkmal benachrichtigt wurde. Auf diese Weise kann das System aktive kontextbasierte Merkmale fördern, die ein Benutzer wahrscheinlicher verwenden möchte, wodurch der Benachrichtigungsprozess für den Benutzer weniger aufdringlich gestaltet wird.
-
Bestimmte Implementierungen der offenbarten Technologie sind oben unter Bezugnahme auf Block- und Ablaufdiagramme von Systemen und Verfahren und/oder Computerprogrammprodukten gemäß exemplarischen Implementierungen der offenbarten Technologie beschrieben. Es versteht sich, dass einer oder mehrere Blöcke der Blockdiagramme und Ablaufdiagramme, und Kombinationen von Blöcken in den Blockdiagrammen und Ablaufdiagrammen jeweils durch computerausführbare Programmanweisungen implementiert werden können. Auf ähnliche Weise brauchen einige Blöcke der Blockdiagramme und Ablaufdiagramme nicht notwendigerweise in der präsentierten Reihenfolge ausgeführt zu werden, oder brauchen gemäß einigen Implementierungen der offenbarten Technologie nicht notwendigerweise überhaupt ausgeführt werden.
-
Diese computerausführbaren Programmanweisungen können auf einen Universalcomputer, einen Spezialcomputer, einen Prozessor oder andere programmierbare Datenverarbeitungsvorrichtungen geladen werden, um ein bestimmtes Modul, wie z. B. Anweisungen, zu erzeugen, die auf dem Computer, Prozessor ausgeführt werden, oder andere programmierbare Datenverarbeitungsvorrichtungen erzeugen Mittel zum Implementieren einer oder mehrerer Funktionen, die in dem Ablaufdiagrammblock oder den Ablaufdiagrammblöcken spezifiziert sind. Diese Computerprogrammanweisungen können auch in einem computerlesbaren Speicher gespeichert sein, der einen Computer oder eine andere programmierbare Datenverarbeitungsvorrichtung anweisen kann, auf eine bestimmte Art zu arbeiten, sodass die Anweisungen in dem computerlesbaren Speicher einen Herstellungsgegenstand produzieren, der Anweisungsmittel beinhaltet, die eine oder mehrere Funktionen implementieren, die in dem Ablaufdiagrammblock oder den Ablaufdiagrammblöcken spezifiziert sind. Beispielsweise können Implementierungen der offenbarten Technologie ein Computerprogrammprodukt, einschließlich einem computerverwendbaren Medium, bereitstellen, das einen computerlesbaren Programmcode oder darin enthaltene Programmanweisungen aufweist, wobei der computerlesbare Programmcode angepasst ist, um ausgeführt zu werden, um eine oder mehrere Funktionen zu implementieren, die in den Ablaufdiagrammblock oder den Ablaufdiagrammblöcken spezifiziert sind. Die Computerprogrammanweisungen können auch auf einen Computer oder eine andere programmierbare Datenverarbeitungsvorrichtung geladen werden, um zu veranlassen, dass eine Reihe von Betriebselementen oder -schritten auf dem Computer oder der anderen programmierbaren Vorrichtung ausgeführt werden, um einen computerimplementierten Prozess zu produzieren, sodass die Anweisungen, die auf dem Computer oder der anderen programmierbaren Vorrichtung ausgeführt werden, Elemente oder Schritte zum Implementieren der Funktionen bereitstellen, die in dem Ablaufdiagrammblock oder -blöcken spezifiziert sind.
-
Dementsprechend unterstützen Blöcke der Blockdiagramme und Ablaufdiagramme Kombinationen von Mitteln zum Ausführen der spezifizierten Funktionen, Kombinationen von Elementen oder Schritte zum Ausführen der spezifizierten Funktionen und Programmanweisungsmittel zum Ausführen der spezifizierten Funktionen. Es versteht sich ebenfalls, dass jeder Block der Blockdiagramme und Ablaufdiagramme, und Kombinationen von Blöcken in den Blockdiagrammen und Ablaufdiagrammen durch spezielle hardwarebasierte Computersysteme implementiert werden kann, die die spezifizierten Funktionen, Elemente oder Schritte, oder Kombinationen von speziellen Hardware- und Computeranweisungen ausführen.
-
Bestimmte Implementierungen der offenbarten Technologie sind oben unter Bezugnahme auf mobile Computergeräte beschrieben. Fachleute auf dem Gebiet erkennen, dass es mehrere Kategorien von Mobilgeräten gibt, die allgemein als tragbare Computergeräte bekannt sind die mit Batterien betrieben werden können, jedoch nicht gewöhnlich als Laptops klassifiziert sind. Beispielsweise können Mobilgeräte tragbare Computer, Tablet-PCs, Internet-Tablets, PDAs, Ultra Mobile PCs (UMPCs) und Smartphones beinhalten, sind jedoch nicht darauf beschränkt.
-
In dieser Beschreibung wurden zahlreiche spezifische Details beschrieben. Es versteht sich jedoch, dass Implementierungen der offenbarten Technologie ohne diese spezifischen Details praktiziert werden können. In anderen Fällen wurden bekannte Verfahren, Strukturen und Techniken nicht ausführlich beschrieben, um ein Verständnis dieser Beschreibung nicht zu erschweren. Verweise auf „eine Implementierung“, „exemplarische Implementierung“, „unterschiedliche Implementierungen“ usw. geben an, dass die Implementierung(en) der so beschriebenen offenbarten Technologie ein bestimmtes Merkmal, eine Struktur oder eine Charakteristik beinhalten kann/können, jedoch nicht jede Implementierung notwendigerweise das bestimmte Merkmal, die Struktur oder die Charakteristik beinhaltet. Darüber hinaus bezieht sich die wiederholte Verwendung der Phrase „in einer Implementierung“ nicht notwendigerweise auf dieselbe Implementierung, obwohl dies durchaus der Fall sein kann.
-
In der gesamten Beschreibung und den Ansprüchen nehmen die nachfolgenden Begriffe mindestens die hier explizit verbundenen Bedeutungen an, sofern der Kontext nicht eindeutig etwas anderes vorschreibt. Der Begriff „verbunden“ bedeutet, dass eine Funktion, ein Merkmal, eine Struktur oder eine Charakteristik direkt mit einer anderen Funktion, einem anderen Merkmal, einer anderen Struktur oder einer anderen Charakteristik verbunden ist oder mit dieser in Verbindung steht. Der Begriff „gekoppelt“ bedeutet, dass eine Funktion, ein Merkmal, eine Struktur oder eine Charakteristik direkt oder indirekt mit einer anderen Funktion, einem anderen Merkmal, einer anderen Struktur oder einer anderen Charakteristik verbunden ist oder mit dieser in Verbindung steht. Der Begriff „oder“ soll ein einschließendes „oder“ bedeuten. Darüber hinaus sollen die Begriffe „eine/ein“ und „der/die/das“ als ein/e oder mehrere verstanden werden, sofern nichts anderes angegeben ist, oder klar aus dem Zusammenhang zu einer singulären Form abgeleitet werden kann.
-
Wie hier verwendet, gibt, wenn nicht anders angegeben, die Verwendung der ordinalen Adjektive „erster/erste/erstes“, „zweiter/zweite/zweites“, „dritter/dritte/drittes“ usw., um ein gemeinsames Objekt zu beschreiben, lediglich an, dass unterschiedliche Instanzen ähnlicher Objekte angesprochen werden und nicht beabsichtigt ist, zu implizieren, dass die so beschriebenen Objekte, entweder zeitlich, räumlich, in Rangordnung oder auf irgendeine andere Weise in einer gegebenen Reihenfolge sein müssen.
-
Obwohl bestimmte Implementierungen der offenbarten Technologie in Verbindung mit dem beschrieben wurden, was gegenwärtig als die praktischsten und verschiedensten Implementierungen angesehen wird, versteht sich, dass die offenbarte Technologie nicht auf die offenbarten Implementierungen beschränkt sein soll, sondern im Gegenteil unterschiedliche Modifikationen und äquivalente Anordnungen einbeziehen soll, die in den Umfang der beigefügten Ansprüche fallen. Obwohl hierin spezifische Begriffe verwendet werden, werden sie nur in einem generischen und beschreibenden Sinn, und nicht zum Zwecke der Einschränkung verwendet.
-
Diese schriftliche Beschreibung verwendet Beispiele zum Offenbaren bestimmter Implementierungen der offenbarten Technologie, einschließlich des besten Modus, und ermöglicht allen Fachleuten auf dem Gebiet, bestimmte Implementierungen der offenbarten Technologie zu praktizieren, einschließlich der Herstellung und Verwendung beliebiger Vorrichtungen oder Systeme und der Ausführung beliebiger integrierter Verfahren. Der patentierbare Umfang bestimmter Implementierungen der offenbarten Technologie ist in den Ansprüchen definiert, und kann andere Beispiele beinhalten, die Fachleuten auf dem Gebiet bekannt sind. Diese anderen Beispiele sollen im Umfang der Ansprüche liegen, wenn sie Strukturelemente aufweisen, die sich von der wörtlichen Sprache der Ansprüche nicht unterscheiden, oder wenn sie äquivalente Strukturelemente mit unwesentlichen Unterschieden von der wörtlichen Sprache der Ansprüche beinhalten.
-
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 Patentliteratur
-