-
Verwandte Anmeldungen
-
Diese Anwendung ist eine nicht-vorläufige Anwendung und beansprucht die Priorität der vorläufigen US-Anmeldung Nr. 61/655,427 (Anwalts-Aktenzeichen Nr. 90911-839726) (eingereicht am 4. Juni 2012), der vorläufigen US-Anmeldung Nr. 61/657,403 (Anwalts-Aktenzeichen Nr. 90911-842936) (eingereicht am 8. Juni 2012) und der vorläufigen US-Anmeldung Nr. 61/699,705 (Anwalts-Aktenzeichen Nr. 90911-851278) (eingereicht am 1. September 1 2012), deren Inhalte unter Bezugnahme für alle Zwecke hierin aufgenommen sind.
-
Hintergrund
-
Die vorliegende Erfindung bezieht sich allgemein auf eine mobile Vorrichtung mit lokalisierten App-(englisch: „application”, deutsch: „Anwendung”, im Nachfolgenden „App”)-Empfehlungen, und insbesondere auf das Verwenden von Crowdsourcing-App-Nutzungsdaten, um relevante App-Empfehlungen an Benutzer mobiler Vorrichtungen basierend auf einem Ort bereitzustellen.
-
Mobile rechnende Vorrichtungen, wie Smartphones, Tablet-Computer, Media-Player, Laptops und dergleichen, sind mittlerweile allgegenwärtig geworden. Menschen sind bei ihren täglichen Aktivitäten immer mehr auf mobile Vorrichtungen angewiesen. Mobile Vorrichtungen können Softwareanwendungen oder Apps ausführen, die entwickelt wurden, um den Benutzern zu helfen, bestimmte Aufgaben ausführen. Benutzer haben eine große Menge von Anwendungen zur Auswahl. Zum Beispiel sind hunderttausende von Apps im App StoreSM erhältlich. Apps sind millionenfach heruntergeladen und verwendet worden. Der App StoreSM hat Milliarden von Apps zum Download zur Verfügung gestellt.
-
Angesichts der großen Anzahl von zur Verfügung stehenden Apps kann es für die Benutzer schwierig sein, die nützlichsten Apps zu finden.
-
Die Ausführungsformen der Erfindung adressieren diese und andere Probleme individuell und kollektiv.
-
KURZE ZUSAMMENFASSUNG
-
In einigen Ausführungsformen können mobile Vorrichtungen App-Empfehlungen bereitstellen, die für einen Ort, der vom Interesse ist, relevant sind. Eine lokalisierte App-Empfehlung kann ausgelöst werden (zum Beispiel durch eine mobile Vorrichtung, die innerhalb eines Schwellenabstands eines Anwendungs-Hotspots gelangt, oder durch eine andere Benutzer-Aktion). Ein Ort, der von Interesse ist, kann bestimmt werden. Der Ort, der von Interesse ist, kann die aktuelle Position der mobilen Vorrichtung oder ein anderer Ort sein (zum Beispiel das Ziel in einer Karten-App). Unter Verwendung des Orts, der von Interesse ist, können Ranking-Datenbanken lokalisierter Anwendungen mit einem App-Hotspot und Informationen zu Daten-App-Ranking/-Scoring mit Ortsdaten abgefragt werden, wobei Ortsdaten den Ort, der von Interesse ist, repräsentieren. App-Empfehlungen können erhalten und auf der mobilen Vorrichtung angezeigt werden. So können zum Beispiel Icons für Apps, die für den Ort, der von Interesse ist, relevant sind, visuell von anderen Apps unterschieden werden. Diese und andere Ausführungsformen der vorliegenden Erfindung werden weiter unten beschrieben.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1 ist ein Blockdiagramm einer mobilen Vorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung.
-
2 zeigt ein High-Level-Blockdiagramm eines Systems gemäß einer Ausführungsform der vorliegenden Erfindung.
-
3A und 3B zeigen High-Level-Flussdiagramme von Verfahren zum Bereitstellen von App-Empfehlungen gemäß bestimmter Ausführungsformen der vorliegenden Erfindung.
-
4 zeigt ein High-Level-Blockdiagramm eines Systems gemäß einer Ausführungsform der vorliegenden Erfindung.
-
5 zeigt ein Beispiel einer Benutzerschnittstelle für eine vom Benutzer ausgelöste App-Empfehlung gemäß einer Ausführungsform der vorliegenden Erfindung.
-
6A und 6B zeigen beispielhafte Benutzeroberflächen zum visuellen Unterscheiden lokal relevanter Anwendungen gemäß einer Ausführungsform der vorliegenden Erfindung.
-
7A und 7B zeigen beispielhafte Benutzerschnittstellen für das Integrieren von App-Empfehlungen in andere Anwendungen gemäß einer Ausführungsform der vorliegenden Erfindung.
-
8 zeigt eine beispielhafte rechnende Vorrichtung, die gemäß Ausführungsformen der vorliegenden Erfindung verwendet werden können.
-
9 zeigt eine beispielhafte mobile Vorrichtung, die gemäß der Ausführungsformen der vorliegenden Erfindung verwendet werden kann.
-
DETAILLIERTE BESCHREIBUNG
-
Angesichts der großen Menge von Apps, die verfügbar sind, wäre es von Vorteil, Mechanismen für die Benutzer bereitzustellen, um noch einfacher Apps zu entdecken, die relevant sind, und Apps zu filtern, die weniger relevant sind. Relevanz kann in Bezug auf eine bestimmte Aufgabe oder ein bestimmtes Ziel oder allgemeiner in Bezug auf eine bestimmte Tätigkeit definiert werden. App-Relevanz kann wie folgt definiert werden: eine App Xi ist relevant für eine bestimmte Tätigkeit Aj, falls Xi das Durchführen der Aktivität Aj in einer Weise unterstützt, die das Durchführen von Aj möglich macht oder schneller macht, oder einfacher macht, oder mehr Spaß macht, oder auf eine andere Weise eine verbesserte Benutzererfahrung beim Durchführen von Aj bietet. Daher wäre es vorteilhaft, es einem Benutzer zu ermöglichen, Apps zu entdecken, die für die Tätigkeiten relevant sind, die der Benutzer durchführen muss oder an denen der Benutzer interessiert ist.
-
Oft gibt es eine Verbindung zwischen der räumlich-zeitlichen Lokalisierung und der Relevanz. Das heißt, Menschen zeigen oft ein hohes Maß an zeitlicher und räumlicher Regelmäßigkeit. Zum Beispiel ist es wahrscheinlich, dass Einzelpersonen einige wenige hochfrequentierte Orte besuchen. Einzelpersonen können, aufgrund der Aktivitäten, die an den Orten durchgeführt werden und/oder aufgrund der Aufgaben, die an den Orten durchgeführt werden, zu stark frequentierten Orten zurückkehren. Ähnlich kann die Tageszeit, zu der Orte frequentiert werden, zusammenhängen mit den Aktivitäten, die an den Orten ausgeführt werden und/oder den Aufgaben, die an den Orten erledigt werden. Zum Beispiel werden Restaurants oft zu den Zeiten der Mahlzeiten frequentiert; Turnhallen werden zum „Work-Out” besucht; Büros dienen zum Arbeiten; Bibliotheken dienen für Studium oder Forschung; usw. Auf der Grundlage dieser Annahmen kann die App-Nutzung auf die Aktivitäten bezogen sein, die an einem bestimmten Ort ausgeführt werden können. Darüber hinaus kann durch das Analysieren lokalisierter App-Nutzung eine Raum-Zeit-Lokalisierung menschlicher Aktivitäten identifiziert werden (einige Gebiete können verschiedene beliebte Aktivitäten zu unterschiedlichen Zeiten des Tages aufweisen). Daher ermöglichen es einige Ausführungsformen der vorliegenden Erfindung dem Benutzer, Apps zu finden, die für spezifische Orte relevant sind.
-
App-Nutzungsdaten, zum Beispiel das Verwenden oder Downloaden einer App, können mit einer Orts- und/oder Zeit-Information versehen werden und aus einer Vielzahl von mobilen Vorrichtungen crowdsourced werden. Eine lokalisierte App-Empfehlungs-Engine kann Apps identifizieren, die statistisch für bestimmte Orte relevant sind (z. B. Orte, an denen die Anwendungen ”Hotspots” für die Nutzung haben und relevanter für den bestimmten Ort sind als ”Peer”-Apps). Verschiedene Verfahren, Systeme und Vorrichtungen zum Identifizieren von Anwendungen, die Lokalisierungseigenschaften (z. B. Apps, die ”Hotspot”-Orte haben) aufweisen, werden in der US-Patentanmeldung Nr. 13/842,724 (Anwaltsaktennr: 90911-844496) beschrieben, eingereicht gleichzeitig mit der vorliegenden Anmeldung, wobei die Offenbarung der US-Patentanmeldung unter Bezugnahme in ihrer Gesamtheit für alle Zwecke aufgenommen ist. Apps können von App-Entwicklern, Anwendungs-Geschäfts-Betreibern oder dergleichen manuell als besonders relevant für bestimmte Orte bezeichnet werden.
-
Sobald App-Hotspots identifiziert wurden, können App-Empfehlungen auf der Basis des aktuellen Orts der mobilen Vorrichtung oder eines anderen bestimmten Orts an die Benutzer von mobilen Vorrichtungen bereitgestellt werden. App-Empfehlungen können in einer Anzahl von Weisen ausgelöst werden und, einmal ausgelöst, können dem Benutzer auf verschiedene Weisen dargestellt werden. Zum Beispiel könnte ein Benutzer einen vorbestimmten Radius eines identifizierten Hotspots für eine bestimmte Anwendung betreten, und eine Benachrichtigung für diese Anwendung kann automatisch auf der mobilen Vorrichtung des Benutzers angezeigt werden. In einem anderen Beispiel kann der Benutzer offen oder auf andere Weise Apps anfragen, die für einen bestimmten Ort relevant sind (z. B. Apps, die für den endgültigen Zielort relevant sind, der in einer Karten-App angegeben ist, Apps, die für den aktuellen Ort relevant sind, usw.).
-
In einem Beispiel kann dem Benutzer die ”Ski Mountain Guide”-App präsentiert werden (z. B. ein Alarm oder eine Benachrichtigung), immer wenn der Benutzer in der Nähe des Skigebiets mit dem Namen ”Ski Mountain” ist. Die „American Museum of Natural History”-App kann präsentiert werden, wenn der Benutzer im oder in der Nähe des Museums ist. In einem anderen Beispiel können lokal relevante Anwendungen in Erwiderung auf eine Suche präsentiert werden (z. B. Suche nach ”Paris” gibt Apps zurück, die für Paris lokal relevant sind). In einem anderen Beispiel können Anwendungen, die lokal für ein bestimmtes Gebiet relevant sind, gruppiert und kategorisiert werden (z. B. in dem App Store in einer Paris-Anwendungskategorie oder allgemeiner in einer Reise-Kategorie).
-
Diese und andere Ausführungsformen werden weiter unten nach den beispielhaften mobilen Vorrichtungen und Systemen beschrieben, die in dem folgenden Abschnitt beschrieben werden.
-
I. Mobile Vorrichtung und System
-
1 zeigt ein High-Level-Blockdiagramm einer mobilen Vorrichtung 101. Es versteht sich ferner, dass die in 1 gezeigte Vorrichtung veranschaulichend ist und dass Variationen und Modifikationen möglich sind. Die mobile Vorrichtung 101 kann eine Steuerung 102, ein drahtloses Modul 104, ein Ortsmodul 106, ein App-Empfehlungs-Modul 108, ein Computer-lesbares Medium (CRM) 110, ein Anzeigemodul 112 und ein Eingabemodul 114 umfassen. Die mobile Vorrichtung 101 kann zusätzliche Module umfassen. In einigen Ausführungsformen kann die mobile Vorrichtung 101 von einer ausreichenden Größe, einer ausreichenden Abmessung und einem ausreichenden Gewicht sein, um zu ermöglichen, dass die Vorrichtung leicht von einem Benutzer bewegt werden kann. Zum Beispiel kann die mobile Vorrichtung 101 von einer Taschengröße sein.
-
Die Steuerung 102, die als eine oder mehrere integrierte Schaltungen implementiert werden kann, kann den Gesamtbetrieb der mobilen Vorrichtung 101 steuern und verwalten. Zum Beispiel kann die Steuerung 102 verschiedene Aufgaben ausführen, wie zum Beispiel das Beschaffen von verschiedenen Assets, die im CRM 110 gespeichert werden können, das Zugreifen auf die Funktionalitäten verschiedener Module (z. B. Interagieren mit anderen Bluetooth-fähigen Vorrichtungen über ein Bluetooth-Modul), das Ausführen verschiedener Software-Programme (z. B. Betriebssysteme und Anwendungen), die sich auf dem CRM 110 befinden, und so weiter. In einigen Ausführungsformen kann die Steuerung 102 einen oder mehrere Prozessoren (zum Beispiel Mikroprozessoren oder Mikrosteuerungen) umfassen, die konfiguriert sind, maschinenlesbare Anweisungen auszuführen. Zum Beispiel kann die Steuerung 102 einen Einzelchip-Anwendungsprozessor umfassen. Die Steuerung 102 kann weiter mit dem CRM 110 in jeder geeigneten Weise verbunden sein.
-
Das drahtlose Modul 104 kann jede geeignete drahtlose Kommunikationstechnologie umfassen. Zum Beispiel könnte das drahtlose Modul 104 ein Bluetooth-Modul, ein Hochfrequenz(HF (RF)) -Modul, ein WLAN-Modul und/oder Ähnliches umfassen. Das Bluetooth-Modul kann jegliche geeignete Kombinationen von Hardware zum Ausführen drahtloser Kommunikationen mit anderen Bluetooth-fähigen Vorrichtungen umfassen und ermöglicht, dass ein HF-Signal zwischen der Steuerung 102 und anderen Bluetooth-fähigen Vorrichtungen ausgetauscht werden kann. In einigen Ausführungsformen kann ein Bluetooth-Modul solche drahtlose Kommunikationen nach Bluetooth Basic Rate/Enhanced Data Rate-(BR/EDR) und/oder Bluetooth Low Energy-(LE)Standards ausführen. Das Bluetooth-Protokoll ermöglicht im Allgemeinen drahtlose Punkt-zu-Punkt-Kommunikation zwischen mehreren Vorrichtungen über kurze Distanzen (z. B. 30 Meter). Bluetooth hat seit seiner Einführung große Popularität gewonnen und wird derzeit in einer Reihe von verschiedenen Vorrichtungen verwendet. Damit Bluetooth in einer größeren Vielfalt von Anwendungen eingesetzt werden kann, wurde eine Niedrig-Energie-Variante der Technologie in die Bluetooth-Core-Spezifikation, Version 4.0 eingeführt. Bluetooth Low Energy (LE) ermöglicht es Vorrichtungen im Allgemeinen, drahtlos zu kommunizieren und dabei geringe Leistungsmengen zu ziehen. Vorrichtungen, die Bluetooth LE verwenden, können oft mehr als ein Jahr arbeiten, ohne dass ihre Batterien wieder aufgeladen werden müssen.
-
Ein Bluetooth-Modul kann zum Beispiel geeignete Hardware zum Ausführen der Erkennung von Vorrichtungen, des Verbindungsaufbaus und der Kommunikation basierend nur auf Bluetooth LE (z. B. Einzelmodusbetrieb) umfassen. Als weiteres Beispiel kann ein Bluetooth-Modul geeignete Hardware für die Erkennung von Vorrichtungen, den Verbindungsaufbau und die Kommunikation basierend sowohl auf Bluetooth BR/EDR als auch Bluetooth LE (z. B. Dualmodusbetrieb) aufweisen. In einem noch weiteren Beispiel kann ein Bluetooth-Modul eine geeignete Hardware für die Erkennung von Vorrichtungen, den Verbindungsaufbau und die Kommunikation nur basierend auf Bluetooth BR/EDR aufweisen.
-
Ein HF-Modul kann jegliche geeignete Kombinationen von Hardware zur Durchführen von drahtlosen Kommunikationen mit drahtlosen Sprach- und/oder Daten-Netzwerken umfassen. Zum Beispiel kann ein HF-Modul einen HF-Transceiver umfassen, der es einem Benutzer einer mobilen Vorrichtung 101 erlaubt, Telefongespräche über ein drahtloses Sprachnetzwerk zu auszuführen.
-
Ein WiFi-Modul kann jegliche geeigneten Kombinationen von Hardware zur Ausführen von WiFi-basierten Kommunikationen mit anderen WiFi-fähigen Vorrichtungen umfassen. Zum Beispiel kann ein WiFi-Modul mit IEEE 802.11a, IEEE 802.11b, IEEE 802.11g und/oder IEEE 802.11n kompatibel sein.
-
Das Ortsmodul 106 kann jegliche geeignete Orts-Bestimmungs-Technologie umfassen, die ein oder mehr drahtlose Signale verwendet, um eine aktuelle Position zu bestimmen. In einigen Ausführungsformen umfasst das Ortsmodul 106 ein Modul des globalen Positionierungssystems (GPS). In einigen Ausführungsformen umfasst das Ortsmodul 106 eines oder mehre der Folgenden: ein WiFi Orts-Bestimmungs-Modul, ein zelluläres Orts-Bestimmungs-Modul, ein Crowdsourcing-WiFi-Orts-Bestimmungs-Modul, ein Time-of-Flight-Berechnungs-(ToF)Orts-Bestimmungs-Modul und Ähnliches.
-
Das App-Empfehlungs-Modul 108 kann einen Code umfassen, der, wenn er ausgeführt wird, eine App-Empfehlung bestimmt oder dem Benutzer bereitstellt basierend auf einem Ort. Zum Beispiel kann der Benutzer App-Empfehlungen für einen bestimmten Ort anfordern. In einem anderen Beispiel könnte eine Benachrichtigung bezüglich einer lokal relevanten App basierend auf dem derzeitigen Ort der mobilen Vorrichtung bereitgestellt werden. Das App-Empfehlungs-Modul 108 kann auch eine Vorrichtungs-seitige Sammlung und Aggregation von App-Nutzungsdaten für Crowdsourcing ausführen.
-
CRM 110 kann implementiert werden z. B. unter Verwendung einer Disc, eines Flash-Speichers, eines Arbeitsspeichers (RAM), hybrider Speichertypen, Laufwerke optischer Discs oder jeglicher anderen Speichermedien, die Programmcode und/oder Daten speichern können. CRM 110 kann Software-Programme speichern, die durch die Steuerung 102 ausführbar sind, einschließlich Betriebssystemen, Anwendungen und zugehöriger Programmcodes (z. B. Code für das App-Empfehlungs-Modul 108).
-
Software-Programme (hierin auch als Software oder Apps bezeichnet) können jegliches Programm umfassen, das durch die Steuerung 102 ausführbar ist. In einigen Ausführungsformen können bestimmte Software-Programme auf der mobilen Vorrichtung 101 von dem Hersteller installiert werden, während andere Software-Programme durch den Benutzer installiert werden können. Beispiele für Software-Programme können Betriebssysteme, Navigations- oder andere Karten-Anwendungen, Orts-Bestimmungs-Anwendungen, Produktivitätsanwendungen, Videospiel-Anwendungen, Anwendungen für die Verwaltung persönlicher Informationen, Anwendungen für die Wiedergabe von Medien-Assets und/oder zum Navigieren einer Datenbank von Medien-Assets, Anwendungen zum Steuern einer Telefonschnittstelle, um Anrufe auszuführen und/oder empfangen, und so weiter umfassen. Obwohl nicht speziell gezeigt, können ein oder mehr Anwendungsmodule (oder ein Satz von Anweisungen) bereitgestellt werden zum Starten und Ausführen eines oder mehr Anwendungen, zum Beispiel verschiedene Softwarekomponenten, die im Medium 110 gespeichert sind, um verschiedene Funktionen für die mobile Vorrichtung 101 auszuführen.
-
Das Anzeigemodul 112 kann unter Verwendung einer jeglichen geeigneter Anzeigetechnologie implementiert werden, einschließlich einer CRT-Anzeige, einer LCD-Anzeige (z. B. Berührungs-Bildschirm), einer Plasmaanzeige, einer direkten Projektion oder einer Rückprojektion DLP, einer Mikro-Anzeige und/oder Ähnlichem. In verschiedenen Ausführungsformen kann das Anzeigemodul 112 verwendet werden, um visuell Benutzer-Schnittstellen, Bilder und/oder Ähnliches anzuzeigen.
-
Das Eingabemodul 114 kann implementiert werden als Berührungs-Bildschirm (z. B. LCD-basierter Berührungs-Bildschirm), ein Sprachbefehlssystem, eine Tastatur, eine Computer-Maus, ein Trackball, eine drahtlose Fernbedienung, ein Button und/oder Ähnliches. Das Eingabemodul 114 kann es einem Benutzer erlauben, Eingaben bereitzustellen, um die Funktionalität der Steuerung 102 zu aktivieren. In einigen Ausführungsformen können das Eingabemodul 114 und das Anzeigemodul 112 kombiniert oder integriert werden. Zum Beispiel kann die mobile Vorrichtung 101 eine LCD-basierte Berührungsanzeige umfassen, die Bilder anzeigt und auch Benutzereingaben erfasst. Veranschaulichend kann ein Benutzer seinen oder ihren Finger auf einen Bereich der Oberfläche der Berührungsanzeige tippen, die ein Icon anzeigt. Die Berührungsanzeige kann das Tippen erfassen und in Erwiderung ein Software-Programm starten, das mit dem Symbol verbunden ist. Beim Starten der Software kann eine grafische Benutzerschnittstelle für die Anwendung auf dem Berührungsbildschirm zur Darstellung an den Benutzer angezeigt werden.
-
2 zeigt ein High-Level-Blockdiagramm eines Systems 200 zum Ausführen bestimmter Ausführungsformen der vorliegenden Erfindung. Das System 200 umfasst eine Vielzahl von mobilen Crowdsourcing-Vorrichtungen 210 zum Bereitstellen von Crowdsourcing-App-Nutzungsdaten, eines App-Empfehlungs-Systems 220 und eines App-Store-Systems 230.
-
Die Crowdsourcing-Ortsdaten können anonym aus der Vielzahl von mobilen Vorrichtungen 210 crowdsourced werden. Vorrichtungen können diese Funktion auswählen. Mobile Corwdsourcing-Vorrichtungen 210 können verschiedene Hardware- und Software-Komponenten umfassen, wie zum Beispiel in 1 dargestellt, und/oder ein App-Modul 212, ein Ortsmodul 214 und ein Anonymisierungsmodul 216.
-
Mobile Vorrichtungen 210 können Anwendungen mit einer oder mehreren App-Modulen 212 ausführen, die verschiedene Anwendungen starten und ausführen können. Mobile Vorrichtungen 210 können Ortsdaten für die App-Nutzung markieren. Ein Ortsmodul 214 kann einen aktuellen Ort, der mit dem App-Ereignis verbunden ist (z. B. Starten der App), bestimmen und das App-Ereignis mit dem bestimmten Ort markieren. In einer Ausführungsform ist eine eindeutige App-Kennung mit einer App verbunden. Wenn diese App verwendet wird, sind die Ortsdaten mit der App-Kennung verknüpft. Zum Beispiel kann eine Anwendungskennung (z. B. App-Bundle-ID) mit dem bekanntesten aktuellen Ort verbunden werden. Privatsphäre wahrende Regeln („privacy preserving rules” (PPR)) können bereitgestellt werden, und nur, wenn die Privatsphäre wahrenden Regeln eingehalten werden, werden App-Nutzungsdaten gesammelt und übermittelt. Ein Anonymisierungsmodul 216 kann auf den mobilen Crowdsourcing-Vorrichtungen bereitgestellt werden, um Daten zu dezimieren und/oder um sicherzustellen, dass die Privatsphäre wahrenden Regeln erfüllt sind. In einer Ausführungsform können Ortsdaten für die App-Nutzung und gegebenenfalls Zeitdaten auf der Vorrichtungs-Seite anonymisiert werden und dem App-Empfehlungs-System für die weitere Verarbeitung übermittelt werden. Die Anonymisierung kann auf der Server-Seite zusätzlich zu oder anstelle der Vorrichtungs-seitigen Anonymisierung auftreten.
-
Das lokalisierte App-Empfehlungs-System 220 kann ein App-Analysemodul 222, ein Vorrichtungs-Populationsmodul 224 und ein lokalisiertes Ranking-Modul 226 aufweisen. Die rohen Crowdsourcing-Daten von der Vielzahl von mobilen Vorrichtungen 210 können aggregiert werden, und die signifikante Nutzung kann durch das Empfehlungs-System 220 extrahiert werden. Privatsphäre kann gewahrt werden und relevante Empfehlungen können durch eine Datenverarbeitungspipeline bereitgestellt werden, die aufweist: Datendezimierung; Schätzung der räumlichen oder räumlich-zeitlichen Verteilung der Nutzung für einzelne Apps; Erfassen einzelner App-Nutzungs-Hotspots; und Kombinieren der Nutzungsinformationen aller verarbeiteten Apps mit Metadaten (Kategorie, Benutzer-Bewertungen usw.), um eine Relevanz-bewertete Liste von Apps für jeden Raum-Zeit-Sammelbehälter mit signifikanter App-Nutzung zu erzeugen. Das App-Empfehlungs-System kann aggregierte Daten analysieren und statistische Ausreißer identifizieren, um Apps zu finden, die besonders relevant für einen Ort sind. Eine Datenbank von nach Relevanz bewerteten Apps kann in einer Datenbank nach Relevanz bewerteter Apps 228 gespeichert werden. Ein Beispiel einer Anwendung, die stark lokalisiert werden kann, ist die Apple-Store-Anwendung, weil sie häufiger bei oder nahe Apple-Einzelhandels-Geschäften verwendet werden kann. Das App-Empfehlungs-System kann Apps herausfiltern, die an vielen verschiedenen Orten verbreitet sind. Zum Beispiel kann eine Sozialnetzwerk-App (wie zum Beispiel Facebook) eine sehr schwache Lokalisierung haben und daher für einen bestimmten Ort nicht relevant sein. Ein weiteres mögliches Beispiel ist die Find-My-iPhone-Anwendung, da die Anwendung in der Regel verwendet wird, wenn die Benutzer ihr iPhone nicht finden können, eher als wenn ein Benutzer in der Nähe eines bestimmten Orts ist.
-
Das App-Store-System 230 kann Mechanismen für den Benutzer bereitstellen, lokal relevante Apps zu entdecken. Das App-Store-System 230 kann eine Datenbank 232 zum Speichern von Metadaten umfassen, die Apps betreffen, die in dem App-Store verfügbar sind. Das App-Store-System 230 kann ferner eine Datenbank 234 mit App-Daten umfassen, so dass eine App von einem Benutzer heruntergeladen werden kann.
-
Das App-Store-System 230 kann eine Schnittstelle (nicht gezeigt) zum Kommunizieren mit einer mobilen Vorrichtung 240 umfassen. Diese Komponente kann Mechanismen umfassen, um dem Benutzer lokal relevante Apps zu präsentieren. Die Mechanismen für den Benutzer, um lokal relevante Apps zu entdecken, umfassen: Warnungen und Benachrichtigungen, Such-Werkzeuge, App-Kategorisierung, Anwendungspakete usw. In einigen Ausführungsformen werden App-Empfehlungen an die mobile Vorrichtung vor-verfolgt, zum Beispiel aus dem lokalisierten App-Empfehlungs-System 220. Die mobile Vorrichtung 240 kann verschiedene Hardware- und Software-Komponenten umfassen, solche wie zum Beispiel in 1 veranschaulicht und/oder eine App-Kachel-(„tile”)-Datenbank 242, ein App-Empfehlungsmodul 108 und ein App-Store-Modul 244.
-
App-Kacheln für einen vorbestimmten Bereich in der Nähe eines Orts können auf der mobilen Vorrichtung 240 vor-gespeichert werden. Vorgespeicherte Kacheln können in einer App-Kachel-Datenbank 242 auf der mobilen Vorrichtung 240 gespeichert werden. Auf diese Weise können die spezifischeren Orts-Empfehlungen auf der Seite der Vorrichtung auftreten (z. B. auf der mobilen Vorrichtung, ohne Senden eines Orts an den App Store-Server, um eine Empfehlung zu erhalten).
-
Dies kann Privatsphäre-Überlegungen fördern und den Batterie- und Datenverbrauch reduzieren.
-
Das App-Empfehlungs-Modul 108 kann Code umfassen, der, wenn er ausgeführt wird, eine App-Empfehlung an den Benutzer basierend auf einem Ort bestimmt oder bereitstellt. Zum Beispiel kann der Benutzer App-Empfehlungen für einen bestimmten Ort anfordern. In einem anderen Beispiel könnte eine Benachrichtigung bezüglich einer lokal relevanten App basierend auf dem aktuellen Ort der mobilen Vorrichtung bereitgestellt werden. Das App-Empfehlungs-Modul 108 kann mit dem App-Store-Modul 244 über eine Schnittstelle verbunden sein, die in einigen Ausführungsformen eine Benutzerschnittstelle zum Empfehlen von Apps bereitstellen kann.
-
Nachdem beispielhafte Vorrichtungen und Systeme beschrieben worden sind, wenden wir uns nun einer High-Level-Beschreibung eines Verfahrens nach einer Ausführungsform der vorliegenden Erfindung zu. Die oben beschriebenen Vorrichtungen und Systeme können bei der Implementierung des folgenden Verfahrens verwendet werden.
-
II. Überblick über Verfahren
-
Einer oder mehr der Prozessblöcke der hierin beschriebenen Verfahren können optional sein und können weggelassen werden. Die Sequenz von einem oder mehr Prozessblöcken kann modifiziert werden, und die Prozessblöcke können in jeder geeigneten Reihenfolge ausgeführt werden. Einige der optionalen Blöcke und/oder Sequenzmodifikationen sind hierin speziell zu den Zwecken der Veranschaulichung beschrieben; allerdings wird ein Fachmann erkennen, dass andere Modifikationen und Änderungen innerhalb des Rahmens der Offenbarung in Betracht gezogen werden können.
-
3A zeigt ein Flussdiagramm, das ein Verfahren 300 zum Erhalten von lokal relevanten App-Empfehlungen auf einer mobilen Vorrichtung (z. B. der mobilen Vorrichtung 101 oder 240) veranschaulicht. Im Block 302 wird eine Empfehlung ausgelöst. Das Auslösen einer Empfehlung kann auf zwei allgemeine Weisen erfolgen: (1) in Erwiderung auf einen Ort-Trigger (z. B. auf eine automatische Benachrichtigung des Benutzers oder einen Alarm); oder (2) in Erwiderung auf eine Benutzereingabe, die lokalisierte Apps anfordert (z. B. Benutzeranforderung). Ein Benutzer-Trigger könnte eine offene Aktion sein, die eine lokale App-Empfehlung anfordert, oder eine weniger offenkundige Aktion durch den Benutzer sein (z. B. gerichtet an Spotlight oder Notification Center auf einer iOS-Vorrichtung).
-
Im Block 304 wird ein Ort für die Empfehlung bestimmt. In einer Ausführungsform kann der Ort der aktuelle Ort einer mobilen Vorrichtung sein (z. B. unter Verwendung des GPS oder einer anderen geeigneten Positionierungstechnik). In einer Ausführungsform kann der Ort der zuletzt bestimmte Ort sein, um die Batterie zu sparen. In einer Ausführungsform kann der Ort einer anderer als der aktuellen Ort einer mobilen Vorrichtung sein (z. B. ein Ziel auf einer Karte, ein Ort, der in einer Suche eingegeben wurde, ein Ort, der in einem Kalendereintrag angegeben wurde usw.).
-
Im Block 306 wird das App-Empfehlungs-System nach einer Empfehlung basierend auf dem Ort aus dem Block 304 abgefragt. Zum Beispiel kann das App-Store-System 230 in 2 das lokalisierte App-Empfehlungs-System 220 abfragen. In einer Ausführungsform fragt der Benutzer eine Liste von einer oder mehr lokal relevanten Apps an. Dies kann zum Beispiel unter Verwendung der App-Store-Benutzeroberfläche vorkommen. Eine offene Benutzeranfrage nach einer Liste von lokal relevanten Apps wird wahrscheinlich nicht sehr oft passieren, also kann das Herunterladen einer Liste von relevanten Apps in Erwiderung auf die Benutzeranfrage nur minimale Batterieleistung und Datenbandbreite verwenden.
-
In anderen Ausführungsformen kann es von Vorteil sein, Benutzer asynchron über lokal relevante Apps unter Wahrung der Batterieleistung und unter Reduzierung der Datennutzung zu benachrichtigen. In einer Ausführungsform können lokalisierte App-Empfehlungen lokal auf der mobilen Vorrichtung gespeichert werden. In einer Ausführungsform können die lokal relevanten App-Empfehlungen der Vorrichtung asynchron geliefert werden. In einer Ausführungsform werden die lokal gespeicherten relevanten App-Empfehlungen mit einem geographischen Ort verbunden, der in der Nähe und neben der mobilen Vorrichtung ist. Asynchrone Bereitstellung einer lokalen App-Empfehlung wird unten in Abschnitt V beschrieben.
-
Im Block 308 werden dem Benutzer Empfehlungen präsentiert. Das tatsächliche Ranking kann auf der Seite der Vorrichtung erzeugt werden, unter Verwendung der Daten, die durch die Empfehlungs-Engine bereitgestellt wurden. Auf diese Weise können zusätzliche Teile von Informationen, die der mobilen Vorrichtung bekannt sind, zum Verbessern der Relevanz verwendet werden. Zum Beispiel die Spracheinstellungen auf der Vorrichtung, das aktuelle Datum, der Anfang/das Ziel für Routen, das aktuelle Wetter usw. Dies kann unter Wahrung der Privatsphäre ausgeführt werden, weil in bestimmten Ausführungsformen sensible Daten nicht an einen Server gesendet werden, vielmehr können sensitive Daten auf der Seite der Vorrichtung verwendet werden.
-
3B zeigt ein Flussdiagramm eines Verfahrens 350 zum Bestimmen, welche Apps in einer App-Empfehlung präsentiert werden sollen. Dieser Prozess kann durch ein App-Empfehlungs-System auf einer mobilen Vorrichtung (z. B. der mobilen Vorrichtung 101, 240 oder dergleichen) oder einem App-Empfehlungs-System oder auf einem Remote-Server-Computer (z. B. einem App-Empfehlungs-Server 220, einem App Store-System 230 oder Ähnlichem) ausgeführt werden.
-
Im Block 352 empfingt das App-Empfehlungs-System Ortsdaten für den Ort, der von Interesse ist. Der Ort, der von Interesse ist, könnte der aktuelle Ort einer mobilen Vorrichtung oder ein anderer Ort, der von Interesse ist, sein. Lokal relevante Apps für den Ort, der von Interesse ist, können, soweit sie existieren, bereitgestellt werden.
-
Im Block 354 bestimmt das App-Empfehlungs-System einen Satz von Apps mit Hotspots innerhalb eines Schwellenabstands von dem Ort, der von Interesse ist. Der Schwellenabstand kann von einer App zu einer anderen App basierend auf einer Reihe von Faktoren variieren, umfassend, wie lokalisiert die App-Nutzung für diese App an dem Ort ist, das Volumen der App-Nutzung für diese App an dem Ort und andere App-Nutzungsdaten und App-Metadaten. Zum Beispiel könnte eine erste App stark an einem bestimmten Gebäude lokalisiert sein (z. B. eine App für ein bestimmtes Museum), während eine zweite App ganz allgemein an einer Stadt oder Nachbarschaft lokalisiert sein kann. Der Schwellenabstand für die erste App kann kleiner als der Schwellenabstand für die zweite App sein.
-
Im Block 356 kann das App-Empfehlungs-System die Apps nach Relevanz ordnen. Das Relevanz-Ranking kann Relevanz hinsichtlich des Orts als auch Relevanz für andere Kriterien (z. B. Benutzerprofil, Nutzerinteressen, die allgemeine Beliebtheit, Benutzer-Bewertungen, App-Kategorie und dergleichen) enthalten. In einigen Ausführungsformen wird das Ranking unter Verwendung einer Relevanzbewertung durchgeführt. In einigen Ausführungsformen wird das Ranking durch das Ordnen/das erneutes Ordnen des Satzes von Apps innerhalb von Hotspots innerhalb des Schwellenabstands von dem Ort von Interesse vorgenommen.
-
In einigen Ausführungsformen kann das Ranking auf der Seite der Vorrichtung unter Verwendung von Daten, die durch das App-Empfehlungs-System bereitgestellt wurden, erzeugt werden. Auf diese Weise können zusätzliche Teile von Informationen zum Verbessern der Relevanz verwendet werden (z. B. Benutzerdaten, Historie der Orte des Benutzers usw.). Zum Beispiel die Spracheinstellungen der Vorrichtung, das aktuelle Datum, der Ausgangsort/Zielort für Routen, aktuelles Wetter usw. In einigen Ausführungsformen kann dies unter Wahrung der Privatsphäre integriert werden, da sensible Daten nicht an einen Remote-Server-Computer zurückgesendet werden; vielmehr werden sensible Informationen innerhalb der mobilen Vorrichtung verwendet, um dem Benutzer ein relevanteres Ranking zu präsentieren.
-
Im Block 358 kann das App-Empfehlungs-System Apps auswählen, die als empfohlene Apps basierend auf dem Ranking und/oder der Relevanzbewertung bereitzustellen sind, die in dem vorherigen Schritt berechnet wurde. In einigen Ausführungsformen wird eine große Anzahl von lokal relevanten Apps zurückgegeben (z. B. viele Apps haben Hotspots und sind lokal für einen bestimmten Ort relevant), in diesem Fall kann das App-Empfehlungs-System die Liste der empfohlenen Apps kürzen, so dass nur die relevantesten Apps mit lokalen Hotspots ausgewählt werden. Zum Beispiel könnten die Top 5- oder die Top 10-Apps für einen bestimmten Ort ausgewählt werden.
-
Im Block 360 kann das App-Empfehlungs-System die App-Empfehlungs-Daten bereitstellen. Die App-Empfehlungs-Daten können eine Anwendungs-Kennung, eine Relevanz-Bewertung, Hotspot-Orte für die App und andere Informationen umfassen, die die App oder ihre lokalisierten Verwendungs-Eigenschaften beschreibt. Der Schritt des Bereitstellens von App-Empfehlungs-Daten (Block 360) kann in Erwiderung auf eine Anfrage an das App-Empfehlungs-System erfolgen (z. B. Block 306 in 3A). In einigen Ausführungsformen, falls ein Benutzer eine Empfehlung (z. B. durch das Starten oder das Herunterladen einer der empfohlenen Apps) übernimmt, kann die Rückmeldung zurück in das App-Empfehlungs-System gesendet werden. Die Daten können zum Bestimmen der Wirksamkeit der bereitgestellten Empfehlungen und zum Verfeinern künftiger Empfehlungen verwendet werden.
-
III. Benutzerermittlungsmechanismen
-
Wie oben beschrieben, können die App-Empfehlungen basierend auf dem aktuellen Ort einer mobilen Vorrichtung ausgelöst werden, d. h. basierend auf ortsbedingt ausgelösten Benachrichtigungen oder Warnungen mit App-Empfehlungen und/oder durch den Benutzer ausgelösten App-Empfehlungen, d. h. ausgelöst durch irgendeine Aktion des Benutzers, die anders als der Ort der mobilen Vorrichtung ist. Ortsbedingt ausgelöste Benachrichtigungen oder Warnungen mit Empfehlungen sind im Unterabschnitt A unten detaillierter beschrieben. Durch den Benutzer ausgelöste App-Empfehlungen werden im Unterabschnitt B unten beschrieben.
-
A. Ortsbedingt ausgelöste Benachrichtigungen mit lokalisierten Empfehlungen
-
Einer der Mechanismen für eine lokale App-Ermittlung sind Benachrichtigungen zu relevanten Apps, wenn der Benutzer in einem Bereich mit stark lokalisierten Apps ankommt. Die Benachrichtigungen können sowohl für Apps, die bereits auf der mobilen Vorrichtung des Benutzers installiert sind (”installierte Apps”), als auch für Apps, die nicht auf der mobilen Vorrichtung des Benutzers installiert sind (”nicht installierte Apps”) zur Verfügung gestellt werden. 4 veranschaulicht ein System 400 gemäß einer Ausführungsform der vorliegenden Erfindung. Der Maßstab des Systems 400 wird nur zum Zwecke der Veranschaulichung dargestellt, und der Fachmann wird erkennen, dass jeder geeignete Maßstab verwendet werden kann. Zum Beispiel können Hotspots relativ klein sein (z. B. Gebäude oder großer Stadtblock) oder relativ groß (z. B. ganze Städte, Landkreise, Länder usw.).
-
Das System 400 umfasst eine Reihe von App-Nutzungs-Hotspots 440, 450 und 460, die Hotspots für Anwendungen sind, die einen hohen Grad der Lokalisierung aufweisen. Der Hotspot 440 ist ein Hotspot für ”Lokale App A”, der Hotspot 450 ist ein Hotspot für ”Lokale App B” und der Hotspot 460 ist ein Hotspot für ”Lokale App C.” Die Hotspots können hinsichtlich der Größe variieren. Wie dargestellt, ist der Hotspot 450 größer als die Hotspots 440 und 460. Der Hotspot 460 für die Lokale App C ist der kleinste dargestellte Hotspot. Zum Beispiel könnte die Lokale App C eine App sein, die mit der Absicht entworfen ist, als würde sie in erster Linie und/oder stark mit einem bestimmten Geschäft verwendet werden (z. B. wird die Apple Geschäfts-App oft innerhalb eines Apple Einzelhandelsgeschäfts verwendet), während die Lokale App B eine App für das Entdecken der ”zu erledigenden Dinge” am Union Square in San Francisco, Kalifornien sein kann.
-
Eine Anzahl von Benutzern (410–415) sind in verschiedenen Positionen innerhalb des Systems 400 dargestellt. Jeder Benutzer 410–415 kann eine mobile Vorrichtung (z. B. mobile Vorrichtung 101, 240, usw.) zum Bereitstellen von App-Empfehlungen gemäß der Ausführungsformen der Erfindung haben. Nur eine der mobilen Vorrichtungen (420) ist in 4 gezeigt, die dem Benutzer der mobilen Vorrichtung 410 entspricht. Die Bezugszeichen 410–415 könnten sich auch auf die verschiedenen Positionen eines einzelnen Benutzers zu verschiedenen Zeiten beziehen. Die Bezugszeichen 410–415 könnten sich auch auf Orte eines Benutzers, die von Interesse sind, beziehen, die anders als der aktuelle Ort des Benutzers ist (z. B. eine Sucheingabe, eine Karten-Eingabe usw.).
-
Der Benutzer 410 ist innerhalb von zwei Bereichen, die als der Hotspot 440 für die Lokale App A und als der Hotspot 450 für die Lokale App B identifiziert sind, positioniert. Der Benutzer 410 kann mit der mobilen Vorrichtung 420 verbunden sein. Zum Beispiel könnte der Benutzer 410 die mobile Vorrichtung 420 tragen. Ein Ortsmodul der mobilen Vorrichtung 420 kann den aktuellen Ort der mobilen Vorrichtung 420 bestimmen. Ein App-Empfehlungsmodul auf der mobilen Vorrichtung 420 (oder in Betriebsverbindung mit der mobilen Vorrichtung 420) kann bestimmen, ob der aktuelle Ort der mobilen Vorrichtung 420 einem oder mehr Hotspots für bestimmte Anwendungen entspricht. In einigen Ausführungsformen können die Apps mit den Hotspots bereits auf der mobilen Vorrichtung 420 installiert sein. In einigen Ausführungsformen können die Apps mit den Hotspots derzeit nicht auf der mobilen Vorrichtung 420 installiert sein. In diesem Fall entspricht der aktuelle Ort der mobilen Vorrichtung 420 den Hotspot-Bereichen für die zwei Apps (Lokale App A und Lokale App B).
-
In einigen Ausführungsformen kann eine Benachrichtigung auf einer Anzeige 421 der mobilen Vorrichtung 420 bereitgestellt werden. Die Anzeige 421 kann eine Benutzerschnittstelle umfassen, die jegliche geeignete Informationen anzeigt. Zum Beispiel könnte die Anzeige Informationen umfassen, die den Grund für die Benachrichtigung und/oder Relevanz der in der Benachrichtigung (422) empfohlen Apps erläutert. In einigen Ausführungsformen kann ein grafisches Element (z. B. ein Icon), das der identifizierten App entspricht, angezeigt werden (z. B. 423, 424 und dergleichen). In einigen Ausführungsformen können Apps, die als lokal relevant identifiziert wurden (d. h. empfohlene Apps), durch das Auswählen des graphischen Elements (z. B. 423 oder 424) heruntergeladen werden. In einigen Ausführungsformen können die empfohlenen Apps durch das Auswählen des graphischen Elements (z. B. 423 oder 424) gestartet werden.
-
Der Benutzer 410 ist nicht innerhalb eines Hotspots 460 für die Lokale App C. Daher kann die Lokale App C in einigen Ausführungsformen aus den lokalen App-Empfehlungen, die auf der mobilen Vorrichtung 420 bereitgestellt sind, herausgefiltert werden. Zum Beispiel kann die Lokale App C ein niedriges Relevanz-Ranking erhalten oder dergleichen. In einigen Ausführungsformen kann der Benutzer 410 immer noch eine Benachrichtigung über die Lokale App C auf der mobilen Vorrichtung 420 empfangen, da sie dem Benutzer 410 relativ nahe ist. In einigen Ausführungsformen kann die Benachrichtigung für eine App wie die Lokale App C mit einem niedrigeren Ranking als lokal relevantere Apps ausgestattet sein, wie z. B. Lokale App A und Lokale App B.
-
Der Benutzer 411 ist innerhalb eines Bereichs positioniert, der als der Hotspot 440 für die Lokale App A identifiziert ist. In einigen Ausführungsformen kann eine Benachrichtigung mit einer Empfehlung für die Lokale App A auf einer mobilen Vorrichtung bereitgestellt werden, die mit dem Benutzer 411 verbunden ist. Da der Benutzer 411 nicht innerhalb eines Hotspots für die Lokale App B oder die Lokale App C ist, können in einigen Ausführungsformen solche Apps aus den App-Empfehlung herausgefiltert werden und in der Benachrichtigung nicht bereitgestellt werden. In einigen Ausführungsformen könnten Lokale App B und/oder Lokale App C in einer Benachrichtigung enthalten sein, da sie dem Benutzer 411 relativ nahe sind. In einigen Ausführungsformen basieren die Apps, die in der Benachrichtigung präsentiert werden, auf einem Ranking oder einer Relevanz-Bewertung.
-
Die Benutzer 412 und 413 können wie der Benutzer 411 eine Benachrichtigung für die Lokale App C bzw. die Lokale App B empfangen, da jeder der jeweiligen Benutzer sich in Bereichen befindet, die als ein Hotspot für jede der jeweiligen App identifiziert sind. In einigen Ausführungsformen können andere Apps basierend auf der Tatsache herausgefiltert werden, dass sie nicht innerhalb eines Hotspots sind, nicht innerhalb eines Schwellenabstands von einem Hotspot sind und/oder anderweitig ein Relevanz-Ranking oder eine Relevanz-Bewertung unterhalb einer Schwelle haben.
-
Der Benutzer 414 ist in einem Bereich, der keinem Hotspot für irgendeine Anwendung zugeordnet ist. In einigen Ausführungsformen kann das bedeuten, dass keine Benachrichtigung an den Benutzer 414 bereitgestellt wird. In einigen Ausführungsformen kann eine Benachrichtigung für Apps mit Hotspots innerhalb eines Schwellenabstands des Benutzers 414 zu Verfügung gestellt werden. Zum Beispiel kann eine Benachrichtigung für die Lokale App B bereitgestellt werden, da die Lokale App B einen Hotspot aufweist, der (im Vergleich zu den anderen dargestellten Hotspots) in der Nähe des Benutzers 414 ist.
-
Ebenso befindet sich der Benutzer 415 in einem Bereich, der keinem Hotspot für irgendeine Anwendung zugeordnet ist. In einigen Ausführungsformen kann das bedeuten, dass keine Benachrichtigung an Benutzer 415 bereitgestellt wird. In einigen Ausführungsformen kann eine Benachrichtigung für Apps mit Hotspots innerhalb eines Schwellenabstands von dem Benutzer 415 bereitgestellt werden. Zum Beispiel kann eine Benachrichtigung für jede der Apps Lokale App A, Lokale App B und Lokale App C bereitgestellt werden, da der Benutzer 415 im Wesentlichen gleich weit von den Kanten jedes der Hotspots 440, 450 und 460 entfernt ist.
-
Die Benachrichtigungen können jede geeignete Form annehmen. Obwohl visuelle Benachrichtigungen auf dem Display 421 beschrieben wurden, könnte eine Benachrichtigung Audio-, audio-visuelle und/oder physikalische Formen umfassen. Zum Beispiel kann eine Audio- (z. B. ein ”ding”, ein Klingelton oder dergleichen) oder Sprach-Anzeige (z. B. SIRI) den Benutzer über lokal relevanten App-Empfehlungen benachrichtigen. In einigen Ausführungsformen kann die Anzeige ein Vibrationsalarm oder ein LED-Alarm sein. Ein Fachmann wird erkennen, dass andere Arten von Benachrichtigungen im Rahmen der Erfindung in Betracht gezogen werden können.
-
B. Benutzer-ausgelöste lokalisierte Empfehlungen
-
5 zeigt eine beispielhafte mobile Vorrichtung 500 für Benutzer-ausgelöste lokalisierte Empfehlungen. Eine Benutzer-ausgelöste App-Empfehlung bezieht sich allgemein auf das Auslösen einer App-Empfehlung basierend auf einer Benutzeraktion, die anzeigt, dass der Benutzer interessiert sein könnte, eine App-Empfehlung zu empfangen, oder an anderen Szenarien interessiert sein könnte, in denen ein Benutzer eine App-Empfehlung hilfreich finden könnte. Ein Fachmann wird erkennen, dass die mobile Vorrichtung 500 von ihrer Natur her beispielhaft ist und dass viele andere Ausführungsformen möglich sind.
-
Die mobile Vorrichtung 500 umfasst eine Anzeige 510 mit einer Benutzerschnittstelle. Die Benutzerschnittstelle kann eine Option 520 (wie eine Soft-Taste oder einen anderen Auswähl-Mechanismus) für den Benutzer umfassen, um Apps offen anzufragen, die für einen bestimmten Ort relevant sind. In Erwiderung auf einen Benutzer, der die Option 520 auslöst, kann die mobile Vorrichtung 500 lokal relevante App-Empfehlung für den Benutzer präsentieren.
-
In einigen Ausführungsformen kann der Ort, der von Interesse ist, der aktuelle Ort der mobilen Vorrichtung 500 sein. In diesem Fall kann die mobile Vorrichtung 500 ihren Ort in Erwiderung auf die Anfrage für die lokalen App-Empfehlungen bestimmen oder sie kann den letzten bekannten Ort nachschlagen, der auf der mobilen Vorrichtung 500 gespeichert ist. Unter Verwendung der Ortsinformationen kann eine lokalisierte App-Empfehlung bereitgestellt werden. In einigen Ausführungsformen kann ein bestimmter Ort ein anderer als der aktuelle Ort der mobilen Vorrichtung 520 sein.
-
In einer Ausführungsform kann der Benutzer, der eine App löscht, eine App-Empfehlung auslösen. Das heißt, wenn ein Benutzer eine App löscht, kann eine alternative App präsentiert werden. Zum Beispiel, falls die gelöschte App eine stark lokalisierte App für einen bestimmten Ort ist, kann eine andere App mit hoher Lokalisierung für den bestimmten Ort vorgeschlagen werden, nachdem der Benutzer die App gelöscht hat.
-
Die Benutzer können lokalisierte Empfehlungen auch in einer weniger offensichtlichen Art und Weise auslösen. In einigen Ausführungsformen können lokalisierte Empfehlungen ausgelöst werden, wenn der Benutzer eine App zum Herunterladen neuer Apps startet (z. B. App Store). In einigen Ausführungsformen kann eine Benutzersuche Empfehlungen für lokalisierte Apps auslösen. Diese Suchen können Web-Suchen, die eine Engine-Suche verwenden, oder Suchen auf der mobilen Vorrichtung umfassen (z. B. Durchsuchen des Speichers der mobilen Vorrichtung unter Verwendung eines Tools wie Spotlight). In einigen Ausführungsformen können lokalisierte Empfehlungen ausgelöst werden, wenn der Benutzer auf einen Benachrichtigungsbereich der Benutzeroberfläche zugreift (z. B. Notification Center). In einigen Ausführungsformen können lokalisierte Empfehlungen ausgelöst werden, wenn die mobile Vorrichtung in einem Bildschirmschoner-Zustand oder einem Lock-Screen-Zustand ist (z. B., wenn eine Anzeige der mobilen Vorrichtung von einem Aus-Zustand zu einem Lock-Screen Zustand wechselt, oder wenn eine mobile Vorrichtung aufgrund der Untätigkeit des Benutzers in einen Bildschirmschoner-Zustand wechselt usw.).
-
Andere Benutzeraktionen (oder nicht-Aktionen), die eine App-Empfehlung auslösen können, sind in den folgenden Abschnitten beschrieben.
-
C. Benutzerschnittstelle zum Präsentieren lokalisierter Empfehlungen
-
Sobald eine Empfehlung ausgelöst wurde und lokalisierte Anwendungen identifiziert wurden, kann die App-Empfehlung einem Benutzer auf einer Anzeige einer mobilen Vorrichtung angezeigt werden. Es gibt viele Optionen für das Bereitstellen der App-Empfehlungen an die Benutzer, so dass ein Benutzer lokal relevante Apps entdecken kann. Einige der Mechanismen zur Entdeckung von Apps werden unten detaillierter beschrieben.
-
In einigen Ausführungsformen können lokalisierte Apps visuell von nicht-lokalisierten Apps unterschieden werden. Zum Beispiel können visuelle Hinweise für Apps, die an einem Ort relevant sind, präsentiert werden. Visuelle Hinweise können eine Hervorhebung des App-Icons, ein Animieren des Icons, ein Hinzufügen einer Schärpe oder eines Abzeichens zu dem App-Icon, das Ändern der Farbe/Sättigung/Position/Größe/Opazität des App-Icons oder ein anderweitiges visuelles Unterscheiden lokal relevanter Apps von anderen Apps umfassen.
-
Die 6A und 6B zeigen ein Beispiel für visuelles Unterscheiden lokalisierter Apps aus nicht-lokalisierten Apps auf einer Anzeige auf einer mobilen Vorrichtung 600. 6A zeigt eine mobile Vorrichtung 600 mit einer Benutzerschnittstelle 610, die eine Reihe von Apps anzeigt, die auf der mobilen Vorrichtung 60o verfügbar sind. Zum Beispiel können Icons für verschiedene Anwendungen zur Verfügung gestellt werden, einschließlich eines Kalenders, einer Uhr, Fotos, Anwendungs-Store, Wetter, Karten und Einstellungs-Apps. Die Benutzeroberfläche 610 umfasst auch ein SF-Führer-App-Icon 620, ein Parkplatz-App-Icon 630, ein „Fischerman's Wharf”-App-Icon 640 und ein Paris-Führer-App-Icon 650. In 6A werden alle App-Icons in ihrem normalen Standard-Anzeigemodus ohne ein Unterscheiden visueller Merkmale angezeigt, die anzeigen, dass die App eine lokalisierte App oder eine nicht-lokalisierte App ist. Dies könnte daran liegen, dass die mobile Vorrichtung 600 in einem Bereich ist, in dem es keine lokalisierten Apps gibt, oder dass keine App-Empfehlung ausgelöst wurde.
-
6B zeigt die gleiche mobile Vorrichtung 600 mit einer modifizierten Benutzeroberfläche 611, nachdem eine Empfehlung ausgelöst wurde. Die Benutzerschnittstelle 611, wie die Benutzerschnittstelle 610, zeigt eine Reihe von Apps, die auf der mobilen Vorrichtung 600 verfügbar sind. Im Gegensatz zu der Benutzerschnittstelle 610 unterscheidet die Benutzerschnittstelle 611 optisch Anwendungen, die für einen bestimmten Ort lokal relevant sind. Zum Beispiel können das SF-Führer-App-Icon 621, das Parkplatz App-Icon 631 und das „Fisherman's Wharf”-App-Icon 641 optisch unterschieden werden. In der gezeigten Ausführungsform sind Icons für Apps, die nicht lokal relevant sind, ”ausgegraut”. Zum Beispiel sind die Icons für den Kalender, die Uhr, die Fotos, den App Store, die Einstellungen und den Paris-Führer 651” ausgegraut”. In einigen Ausführungsformen können visuell unterscheidbare Anwendungen durch das Auswählen des Anwendungs-Icons immer noch gestartet werden oder heruntergeladen werden, während in anderen Ausführungsformen verhindert werden kann, dass visuell unterscheidbare Anwendungen gestartet oder herunterladen werden können.
-
Zum Beispiel kann sich eine mobile Vorrichtung 600 in San Francisco, Kalifornien, USA, befinden, wenn die App-Empfehlung in 6B ausgelöst wird. Da sich die Vorrichtung in San Francisco befindet, kann die SF-Führer-App lokal relevant sein, und damit kann das Icon für die App in der Benutzerschnittstelle 611 hervorgehoben werden. Ähnlich kann die Paris-Führer-App visuell unterschieden werden, da diese für San Francisco nicht lokal relevant sein könnte. Andere Apps, wie zum Beispiel Wetter-, Karten- und Parkplatz-Apps, die einen hohen Grad der lokalen Nutzung aufweisen, können hervorgehoben werden. Zum Beispiel kann es sein, dass die Wetter-, Karten-, Parkplatz-, und „Fisherman's Wharf”-Apps vom Benutzer häufiger (mit statistisch signifikanter lokalisierter Anwendung) in San Francisco als zum Beispiel die Uhr-App verwendet werden. Daher können lokalisierte Apps hervorgehoben werden, während nicht-lokalisierte Apps weniger hervorgehoben werden können.
-
In einigen Ausführungsformen kann ein interaktives Visualisierungswerkzeug für das Entdecken lokaler Apps bereitgestellt werden. In einigen Ausführungsformen wird das interaktive Visualisierungswerkzeug für das Entdecken lokaler Apps innerhalb eines Anwendungs-Store wie zum Beispiel des App Store zur Verfügung gestellt. Zum Beispiel kann eine Karte des Bereichs, der von Interesse ist, angezeigt werden. Die angezeigte Karte kann durch Hineinzoomen und Herauszoomen und durch das Ändern des Bereichs, der von Interesse ist, manipuliert werden. Auf der Karte können dort Anzeigen bereitgestellt werden, wo lokalisierte Apps identifiziert wurden. In einigen Ausführungsformen können Empfehlungen lokalisierter Apps durch die interaktiven Visualisierungswerkzeuge für die lokale App-Entdeckung bereitgestellt werden. Zum Beispiel kann eine Empfehlung einer lokalisierten App basierend auf einem Relevanz-Ranking, Benutzerinformationen und/oder anderen Rang-Informationen bereitgestellt werden.
-
In einigen Ausführungsformen kann eine lokalisierte App-Empfehlung in andere Anwendungen integriert werden, die auf der mobilen Vorrichtung ausgeführt werden. Zum Beispiel kann eine lokalisierte App-Empfehlung in Karten-Suchen, in der Routenplanung, im Web-Browser, in Kalenderereignissen und dergleichen integriert werden. 7A und 7B zeigen zwei Beispiele für eine solches Integrieren.
-
7A zeigt ein Beispiel für das Integrieren von App-Empfehlungen in eine Kalender-App. Die mobile Vorrichtung 700 umfasst eine Benutzerschnittstelle 710 für eine Kalender-Anwendung. Die Benutzerschnittstelle 710 kann einen oder mehr Kalendereinträge (720 und 730) umfassen. Die Kalendereinträge können Informationen umfassen, die mit den Kalendereinträgen verbunden sind, die das Ereignis beschreiben (z. B. Datum, Uhrzeit, Name, Ort und dergleichen). Die Kalendereinträge können in jeder geeigneten Weise angezeigt werden; die Benutzerschnittstelle 710 ist ein Beispiel. Da Kalendereinträge einen Ort für das Kalenderereignis haben können, können lokalisierte App-Empfehlungen basierend auf dem Ort zur Verfügung gestellt werden. Zum Beispiel kann eine Anwendungs-Empfehlung ausgelöst werden, und ein App-Empfehlungsmodul (oder Kalender-Modul) kann eine Kalenderinformation, die einen Ereignis-Ort umfasst, aus einer Kalender-App extrahieren. Der Ereignis-Ort kann als der Ort, der von Interesse ist, für eine App-Empfehlung verwendet werden.
-
Zum Beispiel gibt es in dem dargestellten Beispiel einen Kalendereintrag 720 für einen Skiurlaub in einem bestimmten Ort eines Skigebiets. Gemäß einigen Ausführungsformen der vorliegenden Erfindung kann das App-Empfehlungs-Modul bestimmen, ob es irgendwelche Anwendungen mit Hotspot-Nutzung an oder nahe des Orts des Skigebiets gibt. Es können andere Kriterien angewendet werden, um App-Empfehlungen zu filtern, einschließlich der Beschreibung des Ereignisses oder der Aktivität, der Benutzer-Profilinformation und dergleichen. In diesem Fall kann dem Benutzer eine Anwendung für das Skigebiet aus der Benutzerschnittstelle der Kalender-App heraus empfohlen werden. In einigen Ausführungsformen kann ein Icon 725 für die Anwendung auf der Benutzeroberfläche 710 angezeigt werden. In einigen Ausführungsformen veranlasst das Betätigen des Icons 725 die mobile Vorrichtung 700, die Anwendung herunterzuladen und/oder zu starten, mit der das Icon 725 verbunden ist (hier die ”Ski Whistler App”).
-
In einem anderen Beispiel gibt es einen Kalendereintrag 730 für einen Flug nach Vancouver. Gemäß einiger Ausführungsformen der vorliegenden Erfindung kann das App-Empfehlungsmodul bestimmen, ob es irgendwelche Anwendungen mit Hotspot-Nutzung am oder nahe des San Francisco International Airports oder des Vancouver International Airports gibt. In diesem Fall kann dem Benutzer eine Anwendung für den SFO-Flughafen aus der Benutzerschnittstelle der Kalender-App heraus empfohlen werden. In einigen Ausführungsformen kann ein Icon 735 für die Anwendung auf der Benutzerschnittstelle 710 angezeigt werden, und ein Betätigen des Icons 725 kann die mobile Vorrichtung 700 veranlassen, die Anwendung herunterzuladen und/oder zu starten.
-
7B zeigt ein Beispiel für das Integrieren von App-Empfehlungen in die Karten- und Routenplanungs-Apps. Mittels der Karten-Apps werden die Orte oft über eine Benutzerschnittstelle 760 eingegeben. Zum Beispiel können ein Startpunkt 770 und ein Endpunkt 780 angegeben werden. Die Karten-App kann dann eine Route 775 vom Startpunkt 770 bis Punkt 780 bestimmen. Orts-Informationen aus der Karten-Anwendung, die Orts-Informationen für den Startpunkt 770, die Route 775, und das Ziel 780 umfassen, können verwendet werden, um lokal relevante App-Empfehlungen für einen Benutzer bereitzustellen. In einigen Ausführungsformen können App-Empfehlungen mit Apps, die für das Ziel lokal relevant sind, auf der Benutzerschnittstelle 760 bereitgestellt werden. In 7B ist das Ziel der Louvre in Paris, Frankreich. In einigen Ausführungsformen kann ein Icon 785 für eine lokal relevante empfohlene App auf der Benutzerschnittstelle 760 innerhalb der Karten-Anwendung angezeigt werden. In einigen Ausführungsformen kann eine visuelle Anzeige wie zum Beispiel eine Schärpe (787) oder ein Abzeichen darauf hinweisen, dass die App lokal relevant ist. In einigen Ausführungsformen kann die empfohlene App dem Benutzer mittels anderer Benachrichtigungsmechanismen präsentiert werden. In einigen Ausführungsformen veranlasst das Betätigen des Icons 785 die mobilen Vorrichtung 700, die Anwendung (hier die „Musee de Louvre App”) herunterzuladen und/oder zu starten. Empfehlungen können auch für Orte entlang der Route 775 und/oder den Start-Punkt der Route 770 bereitgestellt werden.
-
In einigen Ausführungsformen kann eine lokalisierte App-Empfehlung mittels Audio bereitgestellt werden. Zum Beispiel könnte der Benutzer Siri nach lokalisierten Apps fragen, die für den derzeitigen Ort des Benutzers oder einen anderen Ort relevant sind. In einigen Ausführungsformen kann Siri akustisch durch Bereitstellen lokaler App-Empfehlungen reagieren. In einigen Ausführungsformen kann Siri eine Benutzeranweisung zum Herunterladen und/oder zum Starten einer lokalisierten App anfragen, die von Siri empfohlen wurde. In einigen Ausführungsformen kann die Benutzeranweisung unter Verwendung von Sprachbefehlen bereitgestellt werden.
-
In einer Ausführungsform kann ein ”App-Koffer” für eine Reise eines Benutzers erstellt werden. Der App-Koffer kann ein Koffer-Icon (oder ein Ordner-Icon) auf der Benutzerschnittstelle sein, das mit einer Stadt oder einem Reiseziel verbunden ist. Die Apps im Koffer können Apps mit einem hohen Grad der Lokalisierung für das Reiseziel sein.
-
Es gibt viele andere Möglichkeiten für die Benutzerschnittstellen, dem Benutzer lokalisierte App-Empfehlungen bereitzustellen, einschließlich der Empfehlungen in Benachrichtigungen (z. B. im Notification Center, in Pop-Up-Benachrichtigungen, in Bannern, in E-Mail-Benachrichtigungen, in Text-Benachrichtigungen oder ähnlichen Meldungs-Benachrichtigungen und dergleichen), auf dem Bildschirmschoner, auf dem Sperr-Bildschirm und dergleichen. Der Fachmann wird erkennen, dass es auch andere Möglichkeiten gibt.
-
IV. Beispielhafte Anwendungsfälle
-
Das Nachfolgende sind beispielhafte Anwendungsfälle gemäß einiger Ausführungsformen der vorliegenden Erfindung.
-
Beispiel eins: Ein Benutzer nimmt am 2012 Annual Scientific Meeting der Gesellschaft für Interventionelle Radiologie (SIR) im Moscone Center in San Francisco, CA teil und hat ein Opt-In für lokalisierte Empfehlungen unter Orts-Verwendung. Nach einer sehr langen Parkplatzsuche kommt er zu dem Moscone Center, dem Ort für die Konferenz. Während der Wartezeit in der Schlange für die Registrierung erhält er eine Benachrichtigung, die anzeigt, dass es eine relevante lokale App für diesen Ort und dieses Datum gibt: „SIR 2012 Annual Scientific Meeting-App”. Der Benutzer installiert die App und ist nun in der Lage, die aktuellen Informationen über die Konferenz zu prüfen. Der Benutzer prüft, welche anderen Orts-spezifische App-Empfehlungen durch die Empfehlungs-Engine bereitgestellt werden. Der Benutzer sieht, dass eine App namens ”SFpark” eingepflegt ist und häufig am und rund um seinen Ort verwendet wird. Da der Benutzer eine so schwierige Zeit bei der Suche nach einem Parkplatz vor der Konferenz hatte, entscheidet sich der Benutzer, die SFpark App herunterzuladen. Eine lokale Empfehlung für die ”Zagat”-App ist ebenfalls als lokal relevant bereitgestellt. Der Benutzer entscheidet sich, Zagat herunterzuladen, zur Unterstützung bei der Suche nach einem Ort für das Mittagessen.
-
Beispiel zwei: Eine Benutzerin besucht Fisherman's Wharf während ihrer ersten Reise nach San Francisco, CA. Das Nachfolgende ist ein beispielhaftes Ranking, das sie aus der Empfehlungs-Engine sehen kann: (1) „CityGuideDeals”-San Francisco für Besucher und Einheimische; (2) Top 25 Sehenswürdigkeiten-Führer für San Francisco; (3) San Francisco Way; (4) San Francisco Reiseführer-tripwolf; (5) San Francisco Erkundungs-Handbuch; und (6) San Francisco Führer-mTrip.
-
Beispiel Drei: Eine Benutzerin besucht den Times Square, im Theater District in New York City. Das Nachfolgende ist ein beispielhaftes Ranking, das sie aus der Empfehlungs-Engine sehen kann: (1) Broadway und Theater-TheaterMania.com; (2) tkts; (3) New York; (4) essentieller Führer für New York City; (5) Reiseführer für New York City-GuidePal; und (6) NYC Way.
-
Beispiel vier: Eine Benutzerin plant ihre Reise von New York nach Paris. Sie beschließt, dass sie den Louvre besuchen will. Sie sucht Karten, um die Route vom Hotel aus zu finden, in dem sie übernachten wird. Sie erhält die Route und auch eine Präsentation einer Anzeige (visueller Hinweis), dass es lokal relevante Apps für den Zielort gibt. Sie tippt auf das entsprechende Angebot, und es wird ihr eine hoch-relevante Liste von Apps für den Louvre präsentiert. Zum Beispiel ist das Nachfolgende ein beispielhaftes Ranking, das sie aus der Empfehlungs-Engine sehen kann: Musée du Louvre; Denkmal-Aufspürer PARIS; Audio-Führer für Touristen in Paris; Museen in Paris. In einigen Ausführungsformen wurde die Liste nach Sprache gefiltert (z. B. unter Verwendung der iOS Spracheinstellung), so dass nur Apps in Englisch (oder in der Muttersprache des Benutzers) angezeigt werden. Die Benutzerin hat auch die Möglichkeit, ihre Apps für diese Reise zu bündeln und in ihren ”App-Koffer” (oder einen anderen App-Behälter, wie zum Beispiel einen Ordner) zu packen. In einigen Ausführungsformen können zusätzliche Rabatte angeboten werden, wenn die lokal relevanten Apps zusammen gekauft werden. In einigen Ausführungsformen, wenn die Benutzerin sich entscheidet, einen ”App-Koffer” für diese Reise zu kaufen, werden die Anwendungen heruntergeladen, während sie noch zu Hause ist (keine Roaming-Gebühren für die Daten), und die Apps werden zur Benutzung bereit sein, wenn sie in Paris ankommt.
-
Beispiel fünf: Ein Benutzer reist von Dijon nach Paris (3 Stunden) und wird mit Freunde in den Louvre gehen, die Paris zum ersten Mal besuchen. Er findet die Route von Zuhause zum Louvre und es wird ihm eine Anzeige präsentiert, dass es lokal relevante Apps für diesen Ort gibt. Allerdings hat er in diesem Moment keine Zeit, die Apps zu kaufen und/oder herunterzuladen. Er kommt am Louvre an, und es gibt eine sehr lange Schlange (z. B. für mehr als eine Stunde). Während er in der Schlange steht, erhält er eine Benachrichtigung mit einer relevanten lokalen App: Musée du Louvre. Er entscheidet sich, sie auszuprobieren, und installiert die App. Da die Schlange sich noch langsam bewegt, sieht er mit seinen Freunden lokale App-Empfehlungen für Paris durch und beschließt, zusätzliche Apps herunterzuladen. Das Nachfolgende ist ein beispielhaftes Ranking, das er aus der Empfehlungs-Engine sehen kann: Musée du Louvre; Denkmal-Aufspürer für Paris; Paris, Le Guide du routard; und Musées de Paris. Es ist zu beachten, dass die Liste nur Apps auf Französisch gemäß seiner Spracheinstellung anzeigt (vergleiche mit Beispiel vier).
-
Beispiel sechs: Monate später steht derselbe Benutzer aus Beispiel fünf wieder in der Schlange vor dem Louvre mit einer anderen Gruppe von Freunden. Während der Wartezeit in der Schlange erinnert er sich, dass er die Louvre App hat; er überprüft seine Telefon und sieht die hervorgehobene (oder anderweitig visuell unterscheidbare) Louvre App, da die App für den Ort, an dem er in diesem Moment ist, lokal relevant ist.
-
Beispiel sieben: Ein Benutzer in einem Einzelhandelsgeschäft will Amazon-Bewertungen für ein Produkt überprüfen. Wenn der Benutzer eine Menge von installierten Apps hat, die nicht in Ordnern organisiert sind, könnte es derzeit schwierig sein, das richtige Werkzeug für die jeweilige Aufgabe zu finden. Da die Anzahl der installierten Apps wächst, wächst auch die Zeit für die Suche nach der App, die der Benutzer starten will. Unter Verwendung lokal relevanter Apps zeigt die Vorrichtung die nicht-relevanten Anwendungen in ausgegrauter Form. Dies macht es einfacher, die lokal relevanten installierten Apps für einen bestimmten Ort und für eine bestimmte Zeit zu finden, in diesem Fall die Amazon App.
-
Beispiel acht: Eine Benutzerin wartet auf eine Straßenbahn auf der Powell Street in San Francisco. Während sie wartet, blättert sie in den lokal relevanten Apps. Der Apple-Store-App ist eine lokal relevante App (wahrscheinlich, weil es in der Nähe ein Einzelhandelsgeschäft auf Stockton Street gibt). Der Benutzerin war nicht bewusst, dass ein Apple Store in der Nähe war. Sie lädt die Apple-Store-App herunter und lernt EasyPay kennen.
-
Diese Beispiele sind nur zur Veranschaulichung bereitgestellt, und der Fachmann wird erkennen, dass es zahlreiche weitere Anwendungen der Ausführungsformen der vorliegenden Erfindung gibt.
-
V. Asynchrone Lieferung und Caching lokalisierter Empfehlungen
-
In einer Ausführungsform werden lokalisierte App-Empfehlungen an die Vorrichtung übermittelt, die einen asynchronen Übermittlungsmechanismus verwendet. Die ”top” lokalisierten Apps für den Bereich, der die Vorrichtung umgibt, können der Vorrichtung übermittelt werden. Zum Beispiel können App-Kacheln, die Kennungen für die Top-lokalisierten Apps und deren entsprechenden Hotspots umfassen, können auf der mobilen Vorrichtung im Cache vorgespeichert werden. Die Vorrichtung speichert im Cache die lokalisierten Empfehlungen, so dass Empfehlungen ohne Abfragen eines Servers mit dem Ort, der für den Benutzer von Interesse ist, bereitgestellt werden können. Asynchrones Übermitteln und Cachen von Empfehlungen minimiert den Batterie-Strom-Verbrauch und das Verwenden von zellulären Daten. Gemäß der Ausführungsformen der vorliegenden Erfindung können die top-lokalisierten Apps für bestimmte Orte in überschaubare Dateigrößen verpackt werden (”App-Kacheln”) zum Übermitteln und Vorspeichern im Cache für eine Vorrichtung. In einigen Ausführungsformen können mehr oder weniger Informationen basierend auf der Datenverbindung und/oder dem Stromstatus der Vorrichtung heruntergeladen werden. Obwohl lokalisierte App-Empfehlungen asynchron geliefert werden, werden die Empfehlungen nicht notwendiger Weise sofort für den Benutzer der Vorrichtung bereitgestellt. Die asynchrone Übermittlung und das Vorspeichern im Cache kann dem Benutzer einen schnelleren Zugriff auf lokalisierte App-Empfehlungen gestatten, weil die Vorrichtung keinen Server kontaktieren muss und die Informationen nicht herunterladen müssen.
-
Ein Beispiel eines asynchronen Übermittlungsmechanismus ist wie folgt: Ein Benutzer geht in einen Starbucks; aus diesem Grund könnte der Benutzer die Starbucks-App haben wollen. Anstatt eine Anfrage an den App Store oder an das App-Empfehlungs-System mit dem aktuellen Ort der Vorrichtung zu übermitteln, was oft auftreten kann, sind die lokalen App-Empfehlungen für die Vorrichtung für Bereiche in der Nähe und angrenzend an den Ort der Vorrichtung im Cache vorgespeichert. Das Vorspeichern von lokalen App-Empfehlungen für nahe gelegenen Bereiche im Cache stellt einen effizienteren Mechanismus bereit, um die relevanten Daten bei gleichzeitiger Minimierung der Daten- und der Batterie-Nutzung an die Vorrichtung zu übermitteln.
-
In einer Ausführungsform eines asynchronen Übermittlungsmechanismus kann ein serverseitiges App-Empfehlungs-System ein oder mehr Behälter („bins”) in ein binäres Kachel-Verpackungs-Format verpacken. Das Interessengebiet wird in ein Gitter (oder eine andere Partition) unterteilt. In einer Ausführungsform der binären Kachel-Verpackungs-Formatierung kann jede Kachel ein 5 km × 5 km großes Quadrat abdecken. Jede Kachel kann in 10 m × 10 m große Behälter unterteilt werden. Die Kacheln können in jede geeignete Größe unterteilt werden, einschließlich 10 m × 10 m großer Behälter, 100 m × 100 m großer Behälter, 1000 m × 1000 m großer Behälter oder 5 km × 5 km großer Behälter. Ein Fachmann wird erkennen, dass andere Granularitäten in Abhängigkeit von der Anwendung verwendet werden können.
-
Für jeden Behälter kann eine Liste von hyper-lokalen Apps für den Behälter bereitgehalten werden. Ein Beispiel, innerhalb eines jeden der 10 m × 10 m Behälter, ist eine Liste der Top-3-Anwendungen, die als super-/hyper-lokal identifiziert wurden. Die Top hyper-lokalen Apps für einen bestimmten Behälter können basierend auf der hierin beschriebenen Hotspot-Analyse beibehalten werden. Ein Fachmann wird erkennen, dass, während eine andere geeignet bemessene Länge der hyper-lokalen Anwendungen beibehalten werden kann, es für den asynchron übermittelten Inhalt vorteilhaft ist, keine exzessive Bandbreite zu konsumieren. Die hyper-lokalen Top-Apps können periodisch aktualisiert werden, um lokalisierte Apps zu reflektieren, die saisonabhängig sind oder Trends unterliegen. In einer Ausführungsform können die hyper-lokalen Top-Apps alle 2 oder 3 Tage aktualisiert werden. Ein Fachmann wird erkennen, dass andere Aktualisierungsraten geeignet sind.
-
Die eine oder die mehreren binären Kacheln können periodisch an die Vorrichtung geliefert werden und in der Vorrichtung für eine spätere Verwendung im Cache gespeichert werden. Die Anzahl der zu einem bestimmten Zeitpunkt an die Vorrichtung übermittelten binären Kacheln kann basierend auf dem Ort der Vorrichtung, den verfügbaren Datenverbindungen und/oder dem Strom-/Lade-Zustand der Vorrichtung variieren.
-
Die Übermittlung der binären Kachel (n) kann basierend auf dem Ort der Vorrichtung, den zur Verfügung stehenden Datenverbindungen, und/oder dem Strom-/Lade-Zustand der Vorrichtung variieren. In einer Ausführungsform, falls die Vorrichtung zelluläre Daten verwendet, wird eine einzelne Kachel heruntergeladen, die mit dem aktuellen Ort verbunden ist. Dies kann die zelluläre Datennutzung und die damit verbundenen Kosten für den Anwender reduzieren. In einer Ausführungsform, falls die Vorrichtung WiFi verwendet, können mehrere Kacheln heruntergeladen werden und in der Vorrichtung im Cache abgespeichert werden. Zum Beispiel können die Kachel, die mit dem aktuellen Ort verbunden ist, und die benachbarten Kacheln, die mit anderen nahe gelegenen Gebieten verbunden sind, heruntergeladen werden. Dies erlaubt, dass mehr Informationen während der Verwendung einer potenziell schnelleren und kostengünstigeren Datenverbindung im Cache vorgespeichert werden. In einer Ausführungsform, falls die Verbindungsgeschwindigkeit schneller ist (zelluläe oder WiFi), werden mehr Kacheln heruntergeladen. In einer Ausführungsform, falls eine Vorrichtung an eine externe Stromversorgung angeschlossen ist, können mehr Kacheln heruntergeladen werden und in der Vorrichtung im Cache gespeichert werden. Zum Beispiel, wenn mit Batteriestrom betrieben, kann die Vorrichtung weniger Kacheln herunterladen. Wenn die Vorrichtung an eine Stromquelle angeschlossen ist, kann die Vorrichtung mehr Kacheln herunterladen. Wenn die Vorrichtung mit einem niedrigeren Akkustrom betrieben wird, kann die Vorrichtung weniger Kacheln herunterladen.
-
Sobald die Daten auf der Vorrichtung im Cache gespeichert wurden, kann die Vorrichtung die im Cache gespeicherten lokalisierten App-Empfehlungen verwenden. In einer Ausführungsform überprüft die Vorrichtung die im Cache gespeicherten Kacheln und insbesondere einen Behälter, der mit dem aktuellen Ort verbunden ist, wenn ein neuer Ort erhalten wurde, um festzustellen, ob es irgendwelche lokalisierte Apps für den aktuellen Ort gibt. In einer Ausführungsform wird der Ort periodisch erhalten und der periodisch erhaltene Ort wird gegen die im Cache vorgespeicherten Kacheln geprüft.
-
In einer Ausführungsform wird eine neue Kachel an die Vorrichtung übertragen, wenn es keine im Cache vorgespeicherte Kachel gibt, die einen Behälter umfasst, der mit dem derzeitigen Ort der Vorrichtung verbunden ist. In einer Ausführungsform werden neue Kacheln übermittelt, wenn ein Anschluss an die Stromversorgung besteht. In einer Ausführungsform werden neue Kacheln übermittelt, wenn eine Verbindung mit einem WLAN-Netzwerk besteht.
-
Das asynchrone Übermitteln lokal relevanter Inhalte kann zusätzlich zu den lokalisierten App-Empfehlungen angewendet werden. Andere Typen von Informationen können im Cache vorgespeichert werden und für den schnellen Aufruf übermittelt werden. In einer Ausführungsform können die WLAN-Netzwerke im Cache vorgespeichert werden. Zum Beispiel kann eine Tabelle von WiFi-MAC-Adressen mit Ortsabbildung durch einen Server beibehalten werden. Kacheln von bevorzugten WiFi-Netzwerken für bestimmte Behälter können beibehalten werden. Die Kacheln von bevorzugten WiFi Netzwerken können an eine Vorrichtung asynchron übermittelt werden. Weitere Anwendungen umfassen: lokal relevante Musikinhalte, Anzeigen, Bücher, Filme oder andere Medien.
-
In einigen Ausführungsformen umfasst ein Verfahren zum asynchronen Übermitteln vom lokal relevanten Inhalt an eine mobile Vorrichtung: ein Partitionieren, durch einen Server, einer Domäne, die von Interesse ist, in eine Vielzahl von Behältern, die mit geographischen Positionen verbunden sind; ein Bestimmen, mit dem Server, lokal relevanter Inhalts-Empfehlungen für die Vielzahl von Behältern unter Verwendung von Crowdsourcing-App-Nutzungsdaten; ein Empfangen, an dem Server, einer Anfrage für lokal relevante Inhalts-Empfehlungen von der mobilen Vorrichtung, wobei die Anfrage einen Ort umfasst; ein Verpacken lokal relevanter Inhalts-Empfehlungen, die mit einem oder mehr Behältern verbunden sind, in ein Dateipaket, wobei der eine oder mehr Behälter mit geografischen Orten in der Nähe des Orts verbunden sind; und ein Übertragen, durch den Server, des Dateipakets an die mobile Vorrichtung. In einigen Ausführungsformen umfassen die lokal relevanten Inhalts-Empfehlungen lokal relevante App-Empfehlungen. In einigen Ausführungsformen weist das Dateipaket eine Dateigröße auf, die variabel ist, wobei die variable Dateigröße von einem Stromversorgungsstatus der mobilen Vorrichtung abhängig ist. In einigen Ausführungsformen ist die Dateigröße des Dateipakets von einer Netzwerkverbindung der mobilen Vorrichtung abhängig. In einigen Ausführungsformen ist die Dateigröße des Dateipakets von dem Ort der mobilen Vorrichtung abhängig.
-
VI. Privatsphäre
-
Die vorliegende Offenbarung sieht vor, dass die Privatsphäre für die Benutzer von mobilen Vorrichtungen wichtig ist. Daher berücksichtigen die Ausführungsformen der vorliegenden Erfindung die Privatsphären-Erwägungen beim Bereitstellen von relevanten App-Empfehlungen. Die Ziele der Wahrung der Privatsphäre der Benutzer und das Bereitstellen genauer relevanter App-Empfehlungen an die Benutzer werden abgeglichen. Zum Beispiel materialisiert sich der Wert der Crowdsourcing-App-Nutzungsdaten, wenn es ausreichend Daten von vielen verschiedenen Nutzern gibt, um aussagekräftige und statistisch signifikante Daten zu zeigen (Beseitigen des Rauschens). In diesem Kontext ist eine isolierte Betrachtung des Orts des Benutzers und der Verwendung von Apps nicht hilfreich. Zusätzlich ist es in bestimmten Ausführungsformen nicht erforderlich, äußerst präzise Orts-Daten zu haben. Dementsprechend ziehen die Ausführungsformen der vorliegenden Erfindung die Privatsphäre wahrende Regeln in Betracht.
-
Wie oben beschrieben, ist ein Aspekt der vorliegenden Technologie das Erfassen und Verwenden von Ortsdaten, die aus verschiedenen Quellen verfügbar sind, um Apps zu empfehlen, die für den Benutzern von Interesse sein könnten. Die vorliegende Offenbarung erkennt, dass das Verwenden solcher Ortsdaten in der vorliegenden Technologie zum Vorteil der Benutzer verwendet werden kann. Zum Beispiel können die Ortsdaten verwendet werden, um das Verhalten des Benutzers besser zu verstehen und die Relevanz der Anwendungen, Anzeigen und der gelieferten Inhalte zu ermöglichen und zu messen. Dementsprechend ermöglicht das Verwenden solcher Ortsdaten eine kalkulierte Steuerung der gelieferten Inhalte. Zum Beispiel kann das System die Anzahl, wie oft ein Benutzer eine Empfehlung für eine bestimmte Anwendung erhält, reduzieren und dadurch Inhalte auswählen und übermitteln, die für die Benutzer sinnvoller sind. Solche Änderungen im Systemverhalten verbessern die Benutzererfahrung. Ferner sind andere Verwendungen für Ortsdaten, von denen der Benutzer profitiert, in der vorliegenden Offenbarung ebenfalls in Betracht gezogen.
-
Die vorliegende Offenbarung zieht ferner in Betracht, dass die Einheiten, die für die Sammlung, Analyse, Weitergabe, Übertragung, Speicherung, oder jede andere Verwendung von irgendwelchen Ortsdaten zuständig sind, die Datenschutzrichtlinien und Praktiken implementieren und konsequent nutzen sollten, die allgemein als die industriellen oder behördlichen Anforderungen zur Aufrechterhaltung der Privatheit und der Sicherheit von Ortsdaten erfüllend oder übertreffend anerkannt sind. Zum Beispiel sollten Ortsdaten für berechtigte und vernünftige Verwendungen des Unternehmens gesammelt werden und sollten nicht außerhalb dieser rechtmäßigen Nutzung geteilt oder verkauft werden. Ferner sollte eine solche Sammlung erst nach der mitgeteilten Einwilligung der Benutzer geschehen. Zusätzlich würden solche Unternehmen alle erforderlichen Schritte zur Sicherstellung und Sicherung des Zugangs zu solchen Ortsdaten unternehmen und sicherstellen, dass andere mit Zugriff auf die Ortsdaten ihre Datenschutz- und Sicherheitsrichtlinien und Verfahren einhalten. Ferner können solche Unternehmen sich selbst der Auswertung durch Dritte unterziehen, um ihre Einhaltung allgemein akzeptierter Datenschutzrichtlinien und Praktiken zu zertifizieren.
-
Trotz des Vorstehenden zieht die vorliegende Erfindung auch Ausführungsformen in Betracht, in denen die Benutzer selektiv die Verwendung von oder den Zugang zu den Ortsdaten sperren. Das heißt die vorliegende Erfindung zieht in Betracht, dass Hardware- und/oder Software-Elemente zur Verfügung gestellt werden können, um den Zugang zu diesen Ortsdaten zu verhindern oder zu blockieren. Im Falle der Anwendungs-Empfehlungs-Dienste zum Beispiel kann die vorliegende Technik konfiguriert werden, den Benutzern zu erlauben, ein ”Opt-In” oder ”Opt-Out” für die Teilnahme an der Erhebung von Ortsdaten bei der Registrierung für Dienste auszuwählen. In einem anderen Beispiel können die Benutzer auswählen, die Ortsinformationen nicht für die Anwendungs-Empfehlungsdienste bereitzustellen. Zum Beispiel werden Vorrichtungen der Benutzer, die für lokalisierte App-Empfehlungs-Merkmale ein Opt-In wählen, die Ortsdaten für die App-Verwendung markieren, wenn die Privatsphäre wahrenden Regeln (PPR) erfüllt sind. Auf der Seite der Vorrichtungen können die lokalisierten App-Nutzungsdaten anonymisiert werden und dem App-Empfehlungs-System für die Weiterverarbeitung überreicht werden. In einem anderen Beispiel können App-Entwickler mit der Fähigkeit versehen werden, ein ”Opt-In” oder ein ”Opt-Out” von lokalen Empfehlungen für bestimmte Anwendungen, die sie entwickeln, auszuwählen. In einem weiteren Beispiel können die Benutzer ihre Vorrichtungen oder Benutzer-Terminals konfigurieren, das Speichern oder Verwenden von Cookies und andere Mechanismen zu verhindern, mittels dener Ortsdaten festgestellt werden können. Die vorliegende Erfindung zieht auch in Betracht, dass es andere Verfahren oder Technologien zum Blockieren des Zugangs zu ihren Ortsdaten geben kann.
-
Daher, obwohl die vorliegende Offenbarung eine breite Verwendung von Ortsdaten abdeckt, um eine oder mehr verschiedener offenbarter Ausführungsformen zu implementieren, zieht die vorliegende Erfindung auch in Betracht, dass die verschiedenen Ausführungsformen auch ohne die Notwendigkeit des Zugriffs auf solche Ortsdaten implementiert werden kann. Das heißt, die verschiedenen Ausführungsformen der vorliegenden Technologie sind aufgrund des Fehlens aller oder eines Teils der Ortsdaten nicht funktionsunfähig gemacht. Zum Beispiel kann ein Inhalt ausgewählt und an die Benutzer übertragen werden durch Ableiten von Präferenzen basierend auf nicht-personenbezogenen Informations-Daten oder einer minimalen Menge an persönlichen Informationen, wie zum Beispiel dem Inhalt, der von der Vorrichtung angefragt wird, die mit einem Benutzer verbunden ist, basierend auf anderen nicht personenbezogenen Informationen, die den Inhaltsübermittlungsdiensten zur Verfügung stehen, oder öffentlich zugänglichen Informationen.
-
VII. Beispielhafte Architekturen des Servers und der mobilen Vorrichtung
-
Es versteht sich, dass die vorliegende Erfindung, wie oben beschrieben, in der Form einer Steuerlogik, die Computersoftware verwendet, in einer modularen oder integrierten Weise implementiert werden kann. Basierend auf der Offenbarung und den hier bereitgestellten Lehren wird ein Fachmann wissen und erkennen, dass es andere Wege und/oder Verfahren gibt, um die vorliegende Erfindung unter Verwendung von Hardware und einer Kombination aus Hardware und Software zu implementieren. Die verschiedenen beschriebenen Teilnehmer und Elemente können eine oder mehr Computervorrichtungen betreiben oder benutzen, um die hierin beschriebenen Funktionen zu ermöglichen. Beispiele für solche Teilsysteme oder Komponenten sind in 8 gezeigt, die Teile einer Computervorrichtung veranschaulichen können.
-
Die in 8 gezeigten Untersysteme sind über einen Systembus 875 miteinander verbunden. Zusätzliche Untersysteme wie ein Drucker 874, eine Tastatur 878, eine Festplatte 879 (oder ein anderes Speicher umfassendes Computer-lesbares Medium), ein Bildschirm 876, der mit einem Anzeigeadapter 882 gekoppelt ist, und andere werden gezeigt. Peripherie-Vorrichtungen und Eingabe-/Ausgabe-(I/O)Vorrichtungen, die an die I/O-Steuerung 871 gekoppelt sind, können mit dem Computersystem verbunden werden durch eine beliebige Anzahl von Mitteln, wie im Stand der Technik bekannt, wie zum Beispiel einem seriellen Anschluss 877. Der serielle Anschluss 877 oder die externe Schnittstelle 881 können zum Beispiel verwendet werden, um die Computervorrichtung mit einem Weitverkehrsnetz wie dem Internet, einer Maus-Eingabevorrichtung oder einem Scanner zu verbinden. Die Zusammenschaltung über den Systembus erlaubt dem zentralen Prozessor 873, mit jedem Untersystem zu kommunizieren und das Ausführen von Anweisungen von dem Systemspeicher 872 oder von der Festplatte 879 zu steuern, ebenso wie den Austausch von Informationen zwischen den Untersystemen zu steuern. Der Systemspeicher 872 und/oder die Festplatte 879 können ein Computer-lesbares Medium verkörpern.
-
Jede der in dieser Anmeldung beschriebenen Software-Komponenten oder Funktionen können als Softwarecode implementiert werden, der durch einen Prozessor unter Verwendung einer geeigneten Computersprache, wie zum Beispiel Java, C++ oder Perl, auszuführen ist, zum Beispiel unter Verwendung von herkömmlichen oder objektorientierter Techniken. Der Softwarecode kann als Reihen von Instruktionen oder Befehlen auf einem Computer-lesbaren Medium gespeichert werden, wie zum Beispiel auf einem Arbeitsspeicher (RAM), einem Nur-Lese-Speicher (ROM), einem Magnetmedium, wie zum Beispiel einer Festplatte oder einer Diskette, oder einem optischen Medium, wie zum Beispiel einer CD-ROM. Jedes solche Computerlesbare Medium kann sich auf der oder innerhalb der einzigen rechnenden Vorrichtung befinden, und kann auf oder innerhalb verschiedener rechnender Vorrichtungen in einem System oder Netzwerk vorliegen.
-
Es versteht sich, dass jede der Ausführungsformen der vorliegenden Erfindung in der Form einer Steuerlogik unter Verwendung von Hardware (zum Beispiel einer anwendungsspezifischen integrierten Schaltung oder eines Field Programmable Gate Array) und/oder unter Verwendung von Computersoftware mit einem allgemein programmierbaren Prozessor auf eine modulare oder integrierte Weise implementiert werden kann. Wie hierin verwendet, umfasst ein Prozessor einen Mehrkern-Prozessor auf demselben integrierten Chip oder mehrere Verarbeitungseinheiten auf einer einzigen Leiterplatte oder im Netzwerk. Basierend auf der Offenbarung und den hier bereitgestellten Lehren wird ein Fachmann andere Wege und/oder Verfahren zum Implementieren der Ausführungsformen der vorliegenden Erfindung unter Verwendung von Hardware und einer Kombination von Hardware und Software kennen und in Betracht ziehen.
-
Solche Programme können auch kodiert und übertragen werden unter Verwendung von Trägersignalen, die zum Übertragen über drahtgebundene, optische und/oder drahtlose Netzwerke ausgestaltet sind, die mit einer Vielzahl von Protokollen einschließlich des Internets konform sind. Als solches kann ein Computer-lesbares Medium gemäß einer Ausführungsform der vorliegenden Erfindung unter Verwendung eines Datensignals, das mit solchen Programmen kodiert ist, erzeugt werden. Die mit dem Programmcode codierten Computer-lesbaren Medien können mit einer kompatiblen Vorrichtung gebündelt werden oder von anderen Vorrichtungen getrennt bereitgestellt werden (z. B. über ein Internet-Download). Jedes solches Computer-lesbares Medium kann sich auf oder innerhalb eines einzelnen Computer-Programm-Produkts (z. B. einer Festplatte, einer CD oder eines gesamten Computersystems) befinden und kann auf oder innerhalb verschiedener Computerprogrammprodukte in einem System oder Netzwerk vorliegen. Ein Computersystem kann einen Bildschirm, einen Drucker oder eine andere geeignete Anzeige zum Bereitstellen eines jeden der hier erwähnten Ergebnisse an den Benutzer umfassen.
-
Ein jedes der hierin beschriebenen Verfahren kann vollständig oder teilweise mit einem Computersystem ausgeführt werden, das einen oder mehrere Prozessoren umfasst, die konfiguriert sein können, die Schritte auszuführen. Somit können die Ausführungsformen auf Computersysteme gerichtet sein, die konfiguriert sind, die Schritte einer jeden der hierin beschriebenen Verfahren auszuführen, potentiell mit verschiedenen Komponenten, die die jeweiligen Schritte oder eine entsprechende Gruppe von Schritten ausführen. Obwohl als nummerierten Schritte dargestellt, können die Schritte der Verfahren hier zu derselben Zeit oder in einer anderen Reihenfolge ausgeführt werden. Zusätzlich können Teile dieser Schritte mit Abschnitten aus anderen Schritten aus anderen Verfahren verwendet werden. Ein gesamter Schritt oder Teile eines Schritts können auch optional sein. Außerdem kann jeder der Schritte nach jedem der Verfahren mit Modulen, Schaltkreisen oder anderen Mitteln zum Ausführen dieser Schritte ausgeführt werden.
-
9 ist ein Blockdiagramm einer mobilen Vorrichtung 900 gemäß einer Ausführungsform der Erfindung. In einigen Ausführungsformen kann die mobile Vorrichtung 900 eine mobile Vorrichtung (z. B. 101 in 1) sein. Die mobile Vorrichtung 900 umfasst im Allgemeinen ein Computer-lesbares Medium 902, ein Verarbeitungssystem 904, ein Input-/Output-(I/O)-Untersystem 906 und eine drahtlose Schaltung 908. Diese Komponenten können durch einen oder mehr Kommunikationsbusse oder Signalleitungen 903 gekoppelt sein. Die Vorrichtung 900 kann eine beliebige tragbare elektronische Vorrichtung sein, einschließlich eines Handheld-Computers, eines Tablet-Computers, eines Mobiltelefons, eines Laptop-Computers, einer Tablet-Vorrichtung, eines Media-Players, eines persönlichen digitalen Assistenten (PDA), einer tragbaren GPS-Navigations-Vorrichtung, eines eingebauten Navigationssystems, eines anderen Automobil-Computersystems, eines Schlüsselanhängers, eines Autoschlüssels, einer Zugangskarte, einer Multifunktions-Vorrichtung, eines Mobil-Telefons, einer tragbaren Spiel-Vorrichtung oder dergleichen, einschließlich einer Kombination von zwei oder mehreren dieser Elemente.
-
Es sollte ersichtlich sein, dass die in 9 gezeigte Architektur nur ein Beispiel einer Architektur für eine mobile Vorrichtung 900 ist und dass die Vorrichtung 900 mehr oder weniger Komponenten als gezeigt haben kann oder eine anderweitige Konfiguration von Komponenten haben kann. Die verschiedenen Komponenten in 9 können als Hardware, Software oder eine Kombination aus Hardware und Software implementiert werden, einschließlich einer oder mehr Signalverarbeitungs- und/oder anwendungsspezifischer integrierter Schaltungen.
-
Die drahtlose Schaltung 908 wird zum Senden und Empfangen von Informationen über eine drahtlose Verbindung oder ein drahtloses Netzwerk an eine herkömmliche Schaltung einer oder mehr anderer Vorrichtungen verwendet, wie zum Beispiel ein Antennensystem, einen RF Transceiver, einen oder mehr Verstärker, einen Tuner, einen oder mehr Oszillatoren, einen Digitalsignal-Prozessor, einen CODEC-Chipsatz, einen Speicher usw. In einigen Ausführungsformen ist die drahtlose Schaltung 908 in der Lage, Kommunikationen mit anderen Vorrichtungen unter Verwendung eines oder mehr Kommunikationsprotokolle aufzubauen und aufrechtzuerhalten, die umfassen: Time Division Multiple Access (TDMA), Code Division Multiple Access (CDMA), globales System für Mobilkommunikation (GSM), Enhanced Data GSM Environment (EDGE), Wideband Code Division Multiple Access (W-CDMA), Long Term Evolution (LTE), LTE-Advanced, WLAN (wie IEEE 802.11a, IEEE 802,11b, IEEE 802.11g und/oder IEEE 802.11n), Bluetooth, Wi-MAX, Voice over Internet Protocol (VoIP), Nahfeld-Kommunikationsprotokoll (NFC), ein Protokoll für E-Mails, Instant Messaging, und/oder ein Kurznachrichten-Dienst (SMS) oder jedes andere geeignete Kommunikationsprotokoll, darunter Kommunikationsprotokolle, die zu dem Zeitpunkt des Anmeldetags dieses Dokuments noch nicht entwickelt sind. Eine mobile Vorrichtung kann eine drahtlose Schaltung umfassen, die über etliche verschiedene Typen von drahtlosen Netzwerken in Abhängigkeit von dem für die Kommunikation erforderlichen Bereich kommunizieren kann. Zum Beispiel kann ein drahtloser Kurzstreckenfunk-Transceiver (z. B. Bluetooth), ein drahtloser Mittelstrecken-Transceiver (z. B. WiFi), und/oder ein drahtloser Langstrecken-Transceiver (z. B. GSM/GPRS, UMTS, CDMA2000 lx/EV-DO und LTE/LTE-Advanced) in Abhängigkeit von dem Typ der Kommunikation oder dem Bereich der Kommunikation verwendet werden.
-
Die drahtlose Schaltung 908 ist mit Verarbeitungssystem 904 über eine Peripherieschnittstelle 916 gekoppelt. Die Schnittstelle 916 kann herkömmliche Komponenten zum Einrichten und Aufrechterhalten der Kommunikation zwischen Peripherie-Vorrichtungen und dem Verarbeitungssystem 904 umfassen. Sprach- und Daten-Information, die durch die drahtlose Schaltung 908 (z. B. bei der Spracherkennung sind in Sprachbefehl-Anwendungen) empfangen wird, wird an einen oder mehr Prozessoren 918 über die Peripherie-Schnittstelle 916 gesendet. Der eine oder die mehreren Prozessoren 918 sind konfigurierbar, verschiedene Datenformate für ein oder mehr Anwendungsprogramme 934, die auf dem Medium 902 gespeichert sind, zu verarbeiten.
-
Die Peripherieschnittstelle 916 koppelt die Eingabe- und Ausgabe-Peripherie-Vorrichtungen der Vorrichtung an den Prozessor 918 und an das Computer-lesbare Medium 902. Der eine oder die mehreren Prozessoren 918 kommunizieren mit dem Computer-lesbaren Medium 902 über eine Steuerung 920. Das Computer-lesbare Medium 902 kann eine jede Vorrichtung oder ein jedes Medium sein, das Code und/oder Daten zur Verwendung durch einen oder mehr Prozessoren 918 speichern kann. Das Medium 902 kann eine Speicherhierarchie umfassen, die einen Cache, einen Hauptspeicher und einen Sekundärspeicher umfasst. Die Speicherhierarchie kann unter Verwendung einer jeden Kombination von RAM (zum Beispiel SRAM, DRAM, DDRAM), ROM, FLASH, magnetischer und/oder optischer Speichervorrichtungen, wie zum Beispiel Diskettenlaufwerke, Magnetbänder, CDs (Compact Disks) und DVDs (Digital Video-Discs)) implementiert werden. In einigen Ausführungsformen können die Peripherieschnittstelle 916, ein oder mehr Prozessoren 918 und die Speicher-Steuerung 920 auf einem einzigen Chip implementiert sein, wie zum Beispiel einem Verarbeitungssystem 904. In einigen anderen Ausführungsformen können sie auf separaten Chips implementiert werden.
-
Die mobile-Vorrichtung 900 umfasst auch ein Stromversorgungssystem 942 zum Versorgen der verschiedenen Hardware-Komponenten mit Strom. Das Stromversorgungssystem 942 kann umfassen: ein Energieverwaltungssystem, eine oder mehr Stromquellen (z. B. Batterie, Wechselstrom (AC)), ein Ladesystem, eine Stromausfall-Erfassungsschaltung, einen Stromrichter oder Wechselrichter, eine Stromstatusanzeige (z. B. eine lichtemittierende Diode (LED)) und jegliche weitere Komponenten, die typischerweise mit der Erzeugung, der Verwaltung und der Verteilung des Stroms verbunden sind.
-
In einigen Ausführungsformen kann die mobile Vorrichtung 900 einen GPS-Empfänger umfassen, der manchmal als eine GPS-Einheit 948 bezeichnet wird. Eine mobile Vorrichtung kann ein Satelliten-Navigationssystem verwenden, wie zum Beispiel das Global Positioning System (GPS), um die Positionsinformationen, Zeitinformationen, Höhenlage oder andere Navigationsinformationen zu erhalten. Während des Betriebs kann die GPS-Einheit Signale von GPS-Satelliten empfangen, die die Erde umkreisen. Die GPS-Einheit analysiert die Signale, um eine Durchgangszeit und Entfernungsschätzung vorzunehmen. Die GPS-Einheit kann die derzeitige Position (den derzeitigen Ort) der mobilen Vorrichtung bestimmen. Basierend auf diesen Schätzungen kann die mobile Vorrichtung eine Orts-Festlegung, die Höhenlage und/oder die derzeitige Geschwindigkeit ermitteln. Eine Orts-Festlegung kann geografischen Koordinaten wie zum Beispiel Längen- und Breitengradinformationen sein.
-
Ein oder mehr Prozessoren 918 führen verschiedene Softwarekomponenten aus, die im Medium 902 gespeichert sind, um verschiedene Funktionen für die Vorrichtung 900 auszuführen. In einigen Ausführungsformen umfassen die Softwarekomponenten ein Betriebssystem 922, ein Kommunikationsmodul (oder einen Satz von Anweisungen) 924, ein Orts-Modul (oder einen Satz von Anweisungen) 926, ein App-Empfehlungsmodul (oder einen Satz von Anweisungen) 928, ein Anwendungs-Store-Modul (oder einen Satz von Anweisungen) 930 und andere Anwendungen (oder einen Satz von Anweisungen) 934.
-
Das Betriebssystem 922 kann ein jedes geeignete Betriebssystem, einschließlich eines iOS, Mac OS, Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS oder ein eingebettetes Betriebssystem wie VxWorks sein. Das Betriebssystem kann verschiedene Verfahren, Befehlssätze, Softwarekomponenten und/oder Treiber zum Steuern und Verwalten allgemeiner Systemaufgaben (z. B. der Speicherverwaltung, der Speicher-Vorrichtungs-Steuerung, der Strom-Verwaltung usw.) sein und erleichtert die Kommunikation zwischen verschiedenen Hardware- und Software-Komponenten.
-
Das Kommunikationsmodul 924 erleichtert die Kommunikation mit anderen Vorrichtungen über einen oder mehrere externe Anschlüsse 936 oder über eine drahtlose Schaltung 908 und enthält verschiedene Softwarekomponenten zum Handhaben von Daten, die von der drahtlosen Schaltung 908 und/oder von dem externen Anschluss 936 empfangen wurden. Der externe Anschluss 936 (z. B. USB, FireWire, Lightning-Anschluss, 30-Pin-Anschluss usw.) ist zur direkten Kopplung mit anderen Vorrichtungen oder zur indirekten Kopplung über ein Netzwerk (z. B. das Internet, WLAN usw.) ausgestaltet.
-
Das Orts-Modul 926 kann bei der Bestimmung der derzeitigen Position (z. B. Koordinaten oder anderer Kennzeichner der geographischen Lage) der mobilen Vorrichtung 900 Unterstützung bieten. Moderne Positionierungssysteme umfassen Satelliten-basierte Positionierungssysteme, wie zum Beispiel das Global Positioning System (GPS), die Positionierung zellulärer Netzwerke basierend auf ”Zell-IDs”, und die WiFi-Positionierungstechnologie basierend auf den WiFi-Netzwerken. Typischerweise ist GPS das genaueste System, verbraucht aber oft mehr Strom als andere Positionierungssysteme. GPS vertraut auch auf die Sichtbarkeit der mehreren Satelliten, um eine Positionsschätzung zu bestimmen, die nicht sichtbar sein kann (oder schwache Signale haben kann) im Haus oder in ”Straßenschluchten”. In einigen Ausführungsformen empfingt das Orts-Modul 926 Daten von der GPS-Einheit 948 und analysiert die Signale, um die derzeitige Position der mobilen Vorrichtung zu bestimmen. In einigen Ausführungsformen kann das Orts-Modul 926 den derzeitigen Ort unter Verwendung des WiFi oder der zellulären Ortungstechnologie bestimmen. Zum Beispiel kann der Ort der mobilen Vorrichtung unter Verwendung der Kenntnis zu den nahen Zellen-Orten und/oder WiFi-Zugangspunkten mit dem Wissen zu deren Orten abgeschätzt werden. Informationen, die den WiFi oder zellulären Transmitter identifizieren, werden in der drahtlosen Schaltung 908 empfangen und an das Ort-Modul 926 übergeben. In einigen Ausführungsformen empfingt das Ortsmodul eine oder mehr Transmitter-IDs. In einigen Ausführungsformen kann eine Folge von Transmitter-IDs mit einer Referenzdatenbank verglichen werden (z. B. einer Zellen-ID-Datenbank, einer WiFi-Referenzdatenbank), die die Transmitter-IDs mit Positionskoordinaten von entsprechenden Transmittern abgleicht oder korreliert und eine geschätzte Positionskoordinaten für die mobile Vorrichtung 900 berechnet basierend zumindest teilweise auf den Positionskoordinaten der entsprechenden Transmitter. Unabhängig von der verwendeten spezifischen Ortungs-Technologie empfängt das Orts-Modul 926 Informationen, aus denen eine Orts-Festlegung erhalten werden kann, interpretiert diese Information und gibt Orts-Information zurück, wie zum Beispiel geografische Koordinaten, Breite/Länge oder andere den Ort festlegende Daten.
-
Das App-Empfehlungsmodul (oder ein Satz von Anweisungen) 928 und das Anwendungs-Store-Modul 930 können zusammen arbeiten, um eine lokal relevante App-Empfehlung für einen Benutzer der mobilen Vorrichtung 900 bereitzustellen. In einigen Ausführungsformen sind das App-Empfehlungsmodul und/oder das Anwendungs-Store-Modul in funktioneller Kommunikation, z. B. durch die drahtlose Schaltung 908, mit einem App-Empfehlungs-System (z. B. 220 oder einem ähnlichen Server-Computer).
-
Die eine oder mehr Anwendungen 934 auf der mobilen Vorrichtung können beliebige Anwendungen umfassen, die auf der Vorrichtung 900 installiert sind, einschließlich, jedoch nicht beschränkt auf einen Browser, ein Adressbuch, eine Kontaktliste, eine E-Mail, ein Instant Messaging, eine Textverarbeitung, eine Tastaturemulation, Widgets, JAVA-fähige Anwendungen, eine Verschlüsselung, eine digitale Rechteverwaltung, eine Spracherkennung, eine Sprach-Replikation, einen Musik-Player (der die Musikaufnahmen wiedergibt, die in einer oder mehreren Dateien gespeichert sind, wie zum Beispiel MP3- oder AAC-Dateien) usw.
-
Das I/O-Subsystem 906 kann an ein Anzeigesystem (nicht gezeigt) gekoppelt werden, das eine berührungsempfindliche Anzeige sein kann. Die Anzeige zeigt visuelle Ausgaben für den Benutzer in einer GUI an. Die visuelle Ausgabe kann Text, Grafiken, Video und jede Kombination davon umfassen. Einige oder alle der visuellen Ausgaben können Benutzerschnittstellenobjekten entsprechen. Eine Anzeige kann LED (Licht emittierende Diode), LCD (liquid crystal display) Technologie oder LPD (lichtemittierende Polymeranzeige) Technologie verwenden, obwohl andere Anzeigetechnologien in anderen Ausführungsformen verwendet werden können.
-
In einigen Ausführungsformen kann das I/O-Untersystem 906 eine Anzeige und Benutzereingabevorrichtungen wie eine Tastatur, eine Maus und/oder ein Trackpad umfassen. In einigen Ausführungsformen kann das I/O-Untersystem 906 eine berührungsempfindliche Anzeige umfassen. Eine berührungsempfindliche Anzeige kann auch Eingaben des Benutzers basierend auf einem haptischen und/oder Berührungskontakt akzeptieren. In einigen Ausführungsformen bildet eine berührungsempfindliche Anzeige eine berührungsempfindliche Oberfläche, die die Benutzereingaben akzeptiert. Die berührungsempfindliche Anzeige/Oberfläche (zusammen mit allen zugehörigen Modulen und/oder Sätzen von Anweisungen im Medium 902) erkennt einen Kontakt (und jede Bewegung oder Freigabe des Kontakts) auf der berührungsempfindlichen Anzeige und konvertiert den erkannten Kontakt in eine Interaktion mit Objekten der Benutzer-Schnittstelle, wie zum Beispiel einer oder mehr Softtasten, die auf dem Berührungsbildschirm angezeigt werden, wenn der Kontakt stattfindet. In einigen Ausführungsformen entspricht ein Kontaktpunkt zwischen der berührungsempfindlichen Anzeigevorrichtung und dem Benutzer einer oder mehreren Stellen (”digits”) des Benutzers. Der Benutzer kann den Kontakt mit der berührungsempfindlichen Anzeigevorrichtung unter Verwendung eines geeigneten Gegenstands oder Anhängsels vornehmen, wie zum Beispiel eines Eingabestifts, eines Stifts, eines Fingers und so weiter. Eine berührungsempfindliche Anzeigeoberfläche kann den Kontakt und jede Bewegung oder deren Freisetzung unter Verwendung beliebiger geeigneter Berührungsempfindlichkeits-Technologien erkennen, einschließlich kapazitiver, resistiver, Infrarot- und akustischer Oberflächenwellen-Technologien, sowie anderer Näherungssensor-Arrays oder anderer Elemente zum Bestimmen eines oder mehr Punkte des Kontakts mit der berührungsempfindlichen Anzeige.
-
Das I/O-Subsystem kann ferner mit einer oder mehr anderen physikalischen Steuervorrichtungen (nicht dargestellt) gekoppelt sein, wie zum Beispiel Drucktasten, Tasten, Schalter, Wippentasten, Drehregler, Schiebeschalter, Sticks, LEDs usw., um verschiedene Funktionen zu steuern oder auszuführen, wie zum Beispiel Stromsteuerung, Lautsprecherlautstärkesteuerung, Klingelton-Lautstärke, Tastatureingabe, Scrollen, Halten, Menü, Bildschirmsperre, Entfernen und Beenden von Kommunikationen und dergleichen. In einigen Ausführungsformen kann die Vorrichtung 900 neben dem berührungsempfindlichen Bildschirm ein Touchpad (nicht dargestellt) zum Aktivieren und Deaktivieren bestimmter Funktionen umfassen. In einigen Ausführungsformen ist das Touchpad eine berührungsempfindliche Fläche der Vorrichtung, die im Gegensatz zu dem berührungsempfindlichen Bildschirm keine visuelle Ausgabe anzeigt. Das Touchpad kann eine berührungsempfindliche Oberfläche sein, die von dem berührungsempfindlichen Bildschirm oder einer Erweiterung der berührungsempfindlichen Oberfläche, die auf der berührungsempfindlichen Anzeige ausgebildet ist, getrennt ist.
-
Obwohl die obige Beschreibung auf das Bereitstellen lokal relevanter App-Empfehlungen gerichtet ist, können Empfehlungen für andere Inhalte, wie zum Beispiel Musik, Bücher, Filme oder andere von iTunes verfügbare Inhalte, unter Verwendung von Crowdsourcing-Daten gemäß bestimmter Ausführungsformen der vorliegenden Erfindung zur Verfügung gestellt werden. Zum Beispiel kann das Anhören eines Lieds oder das Ansehen eines Films mit einem Ort/einer Zeit markiert sein und die Daten können anonymisiert und gesammelt werden. Die Nutzungsdaten können analysiert werden, um Hotspots zu identifizieren, und Empfehlungen können basierend auf Hotspots bereitgestellt werden, ohne von dem Umfang der vorliegenden Erfindung abzuweichen.
-
Andere Erweiterungen der vorliegenden Erfindung werden ebenfalls in Betracht gezogen. In einer Ausführungsform können häufig besuchte Orte eines Benutzers und die Auswertung von lokalisierten Crowdsourcing-App-Nutzungsdaten verwendet werden, um eine personalisierte Empfehlung von Apps unter Wahrung der Privatsphäre-Betrachtungen bereitzustellen. In einer Ausführungsform können empfohlene Orte, die aufgesucht werden können, den Benutzern der mobilen Vorrichtung basierend auf deren am häufigsten verwendeten Apps und der Auswertung von lokalisierten Crowdsourcing-App-Nutzungsdaten unter Wahrung der Privatsphäre-Betrachtungen bereitgestellt werden. Unter Verwendung bestimmter oben beschriebener Ausführungsformen ist es möglich, Kategorien von Anwendungen zu bestimmen, die lokalisiert sind. Zum Beispiel können Kategorien von Anwendungen (z. B. Reise-Apps, Produktivitäts-Apps, kostenlose Apps, Spiele usw.) mit Ortsdaten markiert werden. Diese Nutzungsdaten können durch das App-Empfehlungs-System analysiert werden. Die Kategorien von Apps können dann einem Benutzer basierend auf dem Ort empfohlen werden. In einer Ausführungsform können anonymisierte Crowdsourcing-Daten für Werbung verwendet werden. Zum Beispiel kann in iAds die räumliche Verteilung der Zeit geschätzt werden, in der die Benutzer mit jedem iAd interagieren. Die Verteilung kann zur Bestimmung verwendet werden, welche iAds an einem bestimmten Ort und/oder zu einer bestimmten Zeit präsentiert werden. Die Verteilung kann zur Preisermittlung verwendet werden.
-
Die spezifischen Details der bestimmten Ausführungsformen können in jeder geeigneten Weise, ohne vom Geist und vom Umfang der Ausführungsformen der Erfindung abzuweichen, kombiniert werden. Andere Ausführungsformen der Erfindung können jedoch auf bestimmte Ausführungsformen gerichtet werden, die sich auf jeden individuellen Aspekt oder eine bestimmte Kombinationen dieser individuellen Aspekte beziehen.
-
Die obige Beschreibung der beispielhaften Ausführungsformen der Erfindung wurde zum Zweck der Veranschaulichung und Beschreibung präsentiert. Sie ist nicht dafür gedacht, vollständig zu sein oder die Erfindung auf die beschriebene genaue Form zu beschränken, und viele Modifikationen und Variationen sind im Lichte der obigen Lehre möglich. Die Ausführungsformen wurden ausgewählt und beschrieben, um am besten die Prinzipien der Erfindung und ihre praktischen Anwendungen zu erläutern, um dadurch andere Fachleute in die Lage zu versetzen, die Erfindung in verschiedenen Ausführungsformen und mit verschiedenen Modifikationen am besten zu verwenden, wie sie für die bestimmte beabsichtigte Verwendung geeignet sind.
-
Eine Rezitation von ”ein”, ”eine”, „eines” oder ”der”, „die”, „das” soll ”eine oder mehr” bedeuten, es sei denn das Gegenteil ist ausdrücklich angegeben.