ES2628208T3 - Almacenamiento en caché basado en localización para dispositivos móviles - Google Patents
Almacenamiento en caché basado en localización para dispositivos móviles Download PDFInfo
- Publication number
- ES2628208T3 ES2628208T3 ES07750535.2T ES07750535T ES2628208T3 ES 2628208 T3 ES2628208 T3 ES 2628208T3 ES 07750535 T ES07750535 T ES 07750535T ES 2628208 T3 ES2628208 T3 ES 2628208T3
- Authority
- ES
- Spain
- Prior art keywords
- mobile communication
- communication device
- content
- location
- map
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000010295 mobile communication Methods 0.000 claims abstract description 123
- 238000000034 method Methods 0.000 claims abstract description 30
- 230000007613 environmental effect Effects 0.000 claims abstract description 11
- 238000010926 purge Methods 0.000 claims abstract description 7
- 238000004891 communication Methods 0.000 claims description 18
- 230000033001 locomotion Effects 0.000 claims description 17
- 238000001514 detection method Methods 0.000 description 55
- 238000005516 engineering process Methods 0.000 description 14
- 238000007726 management method Methods 0.000 description 14
- 239000013598 vector Substances 0.000 description 11
- 230000011664 signaling Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 238000012546 transfer Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 7
- 238000011161 development Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 4
- 230000033458 reproduction Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000004873 anchoring Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000013213 extrapolation Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000005055 memory storage Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009194 climbing Effects 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- VJYFKVYYMZPMAB-UHFFFAOYSA-N ethoprophos Chemical compound CCCSP(=O)(OCC)SCCC VJYFKVYYMZPMAB-UHFFFAOYSA-N 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000036316 preload Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3885—Transmission of map data to client devices; Reception of map data by client devices
- G01C21/3889—Transmission of selected map data, e.g. depending on route
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3885—Transmission of map data to client devices; Reception of map data by client devices
- G01C21/3896—Transmission of map data from central databases
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/09—Arrangements for giving variable traffic instructions
- G08G1/0962—Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/029—Location-based management or tracking services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/289—Intermediate processing functionally located close to the data consumer application, e.g. in same machine, in same home or in same sub-network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Navigation (AREA)
- Telephonic Communication Services (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Un procedimiento para proporcionar dinámicamente un contenido relacionado con localización a un dispositivo (102) de comunicación móvil, comprendiendo el procedimiento rastrear una localización actual del dispositivo (302) de comunicación móvil; predecir una localización futura del dispositivo (306) de comunicación móvil estimando una dirección por la que se moverá el dispositivo de comunicación móvil, calculándose dicha estimación en función de: dicha localización actual del dispositivo de comunicación móvil, una dirección recorrida dentro de un período de tiempo anterior, dependiendo dicho período de una velocidad del dispositivo de comunicación móvil, y la información de contexto ambiental, extrapolándose la información de contexto ambiental en función de unas coordenadas de mapa y la velocidad del dispositivo de informatización móvil, determinar si el contenido relacionado con la localización futura está almacenado actualmente en el dispositivo (308) de comunicación móvil; recuperar el contenido de un almacén de contenido a través de una conexión de red tras una determinación de que el contenido no está almacenado actualmente en el dispositivo (314) de comunicación móvil; y gestionar el almacenamiento del contenido en el dispositivo de comunicación móvil: almacenando el contenido en el dispositivo de comunicación móvil cuando el contenido se recupera del almacén de contenido; y purgando el contenido del contenido irrelevante que está menos relacionado con la localización futura del dispositivo de comunicación móvil, si una memoria disponible en el dispositivo de comunicación móvil es insuficiente para almacenar el contenido.
Description
Almacenamiento en caché basado en localización para dispositivos móviles
En general, las aplicaciones de navegación para dispositivos móviles operan mediante la descarga de un mapa para el dispositivo correspondiente de una ruta precalculada o una zona estimada a la que el usuario del dispositivo móvil tiene la intención de viajar. Usando un servicio de cartografía, en general, ofrecido por un proveedor basado en web
o unos datos mantenidos en un ordenador personal o servidor, el usuario especifica un punto de partida, un destino y posibles destinos de parada y a continuación se calcula una ruta estática basada en estas localizaciones_ Un mapa completo de la rula se descarga al dispositivo móvil.
Existen limitaciones significativas a estas aplicaciones de navegación existentes. En primer lugar, la ruta de navegación es estática y enlazada a un punto de partida y un destino detenninados. No hay capacidad de cambiar dinámicamente la ruta almacenada en el dispositivo móvil si el usuario decide alterar el rumbo. En segundo lugar, en la mayoría de los casos, los datos de mapa están basados en vectores y solo se soporta un tipo de mapa, es decir, la resolución puede adaptarse, pero no es posible cambiar el tipo de mapa, por ejemplo, desde un mapa de calles a una vista aérea, una vista topográfica u otra vista posible. Además, tales aplicaciones de navegación no tienen en cuenta las limitaciones de las capacidades del dispositivo, pOf ejemplo, una memoria limitada para el almacenamiento de mapas y una asignación limitada del procesador. Además, en la mayoría de los casos, estas aplicaciones de navegación solo soportan datos de mapa en lugar de cualquier tipo de datos basados en localización que tal vez interesen al usuario del dispositivo móvil
El documento US 2006/030334 A1 desvela un sistema de gestión de información de posición en el que un terminal remoto portátil incluye una pluralidad de tipos de medios de posicionamiento para posicionar. Solo los datos de mapa de un distrito que se usa a menudo por el titular se almacenan en el terminal remoto portátil. A este respecto, cuando el titular se encuentra en un distrito no contenido en los datos de mapa conselVados, descarga los datos de mapa correspond ientes desde el sistema central y usa los datos de mapa descargados
El documento WO 01/28270 A1 desvela una estación móvil de un sistema de red de comunicaciones móviles, comprendiendo dicha estación móvil un módulo de localización de posición geográfica para localizar una posición geográfica de dicha estación móvil. La estación móvil carga los datos de acuerdo con las circunstancias específicas de la estación móvil, es decir, de acuerdo con un modo de viaje, velocidades de desplazamiento, etc., de la estación móvil.
El documento US 2004/132467 A1 desvela la recuperación de unos elementos de medios a un dispositivo móvil de un usuario que visita un espacio, donde el usuario está equipado con el dispositivo móvil en comunicación con un sistema de selVicio. Los elementos de medios mantenidos por el sistema de servicio están asociados con diversas localizaciones alrededor del espacio y a un usuario que llega a dicha localización se le presenta el elemento o los elementos correspondientes.
El documento US 2003/025615 A1 desvela un aparato y un procedimiento de visualización para un vehículo automóvil en el que está montada una pantalla de imagen. Un aparato de visualización de velocidad vehicular incluye una unidad de medición de posición actual, una antena GPS, un sensor giroscópico, un sensor de distancía, un controlador de pantalla y una pantalla. También se proporciona un sensor intennitenle para detectar un estado de accionamiento de un intermitente del vehiculo y un sensor de velocidad vehicular para detectar la velocidad del vehículo. Un controlador de pantalla compara la imagen de datos del mapa de carretera mostrada en la pantalla con la imagen de datos del mapa de carretera en un momento futuro T1 Cuando se hace girar el vehículo a una velocidad ordinaria, el controlador de pantalla detennina si una posición de la imagen de datos del mapa de carretera en la que la velocidad circunferencial correspondiente de la imagen de datos de mapa de carretera es mayor que el valor de referencia.
Por lo tanto, el objeto de la presente invención es proporcionar un procedimiento mejorado, un sistema de almacenamiento en caché basado en localización y un dispositivo de comunicación móvil para proporcionar un contenido relacionado con la localización. Este objeto se resuelve con el objeto de las reivindicaciones independientes Las realizaciones preferidas están definidas por las reivindicaciones dependientes.
Un sistema de almacenamiento en caché basado en localización proporciona la capacidad para que un dispositivo de comunicación móvil proporcione dinámicamente un contenido relacionado con la localización de un usuario. En una forma a modo de ejemplo, el contenido comprende una serie de segmentos de mapa que anticipan la ruta recorrida por un usuario del dispositivo móvil. También pueden proporcionarse otros contenidos relacionados, por ejemplo, infonnación de un punto de interés relacionada con la ruta recorrida. La infonnación de contenido puede seleccionarse contextualmente basándose, por ejemplo, en las preferencias de usuario, la información de movimiento y la información de estado de dispositivo
El dispositivo móvil puede componerse de varios componentes que facilitan el sistema de almacenamiento en caché basado en localización que incluye, un módulo de determinación de localización, un módulo estimador de dirección, un contenedOf de contenido, un módulo de gestión de conexión, y un módulo de almacenamiento en caché. El
ES 2 628 208 T3
módulo de determinación de localización determina una localización actual del dispositivo de comunicación móvil. El módulo estimador de dirección estima una localización futura del dispositivo de comunicación móvil. El contenedor de contenido almacena un contenido relacionado con la localización futura. El módulo de gestión de conexión proporciona conectividad de red al dispositivo de comunicación móvil. El módulo de almacenamiento en caché selecciona el contenido relacionado con la localización futura del contenedor de contenido o de una fuente de contenido alternativo externa al dispositivo de comunicación móvil a través del módulo de gestión de conexión. El sistema puede incluir además un servidor de contenido que proporciona el contenido relacionado con la localización futura al dispositivo de comunicación móvil a través de una red que conecta el dispositivo de comunicación móvil yel servidor de contenido. El sistema también puede incluir una fuente de información de localización actual sobre el dispositivo de comunicación móvil accesible por el dispositivo de comunicación móvil, por ejemplo, una información de posicionamiento global por satélite
El sistema de almacenamiento en caché basado en localización rastrea una localización actual del dispositivo de comunicación móvil y predice una localización futura del dispositivo de comunicación móvil. Basándose en la predicción de la localización futura, el módulo de almacenamiento en caché determina si el contenido relacionado con la localización futura se almacena actualmente en el dispositivo de comunicación móvil. Si el contenido adecuado no está en el dispositivo móvil, el módulo de almacenamiento en caché recupera el contenido de un servidor de contenido a través de la conexiórJ de red.
Este Sumario se proporciona para introducir una selección de conceptos de una forma simplificada que se describen más adelante en la Descripción detallada. El presente Sumario no tiene por objeto identificar las características clave
o las características esenciales del objeto reivindicado, ni está destinado a usarse para limitar el ámbito del objeto reivindicado. otras caracteristicas, detalles, utilidades y ventajas del objeto reivindicado serán evidentes a partir de la siguiente Descripción detallada más especificamente escrita de varias realizaciones e implementaciones como se ilustra adicionalmente en los dibujos adjuntos y se define en las reivindicaciones adjuntas.
Breve descripción de tos dibujos
La figura 1 es un diagrama esquemático de una relación de un dispositivo móvil con un servidor de contenido y unas fuentes de información de localización geográfica. La figura 2 es un diagrama esquemático de una operación de almacenamiento en caché basada en localización a modo de ejemplo en un dispositivo móvil La figura 3 es un diagrama de flujo de una serie de operaciooes rea lizadas por un sistema de almacenamiento en caché basado en localización para proporcionar dinámicamente un contenido a un dispositivo móvil. La figura 4 es un diagrama esquemático de un sistema de detección de localización que proporciona un contenido dentro de un sistema de almacenamiento en caché basado en localización. La figura 5 es un diagrama de estado esquemático de interacciones en el desarrollo de aplicaciones de detección de localización. La figura 6 es un diagrama de Hujo de unas operaciones de señalización y orientación que proporcionan un contenido dentro de un sistema de almacenamiento en caché basado en localización. La figura 7 es un diagrama de Hujo de unas operaciones de señalización y orientación que proporcionan detalles adicionales a la figura 6 La figura 8 es un diagrama esquemático de un dispositivo móvil de fin general que puede usarse en la implementación de un sistema de almacenamiento en caché basado en localización. La figura 9 es un diagrama esquemático de un sistema informático de fin general que puede usarse en la implementación de un sistema de almacenamiento en caché basado en localización
Descripción detallada
La tecnología desvelada en el presente documento está diseñada para proporcionar datos de mapa de dispositivo de comunicación móvil y otro contenido que es específico para la localización del usuario y su interés, pero independiente de una ruta calculada para el usuario. La provisión de datos de mapas se descarga inteligente y dinámicamente en el dispositivo de comunicación móvil como sea necesario. Esta tecnología se denomina en general en el presente documento como un sistema de almacenamiento en caché basado en localización.
Los datos de mapa pueden proporcionarse a un dispositivo móvil de acuerdo con múltiples parámetros incluyendo los siguientes: dirección de movimiento, velocidad (actual y promedio), y el contexto. El contexto puede comprenderse además en términos de un contexto global, es decir, el entomo o la localización geográfica del usuario, y un contexto local, es decir, un perfil de usuario que incluye preferencias, intereses, posición del usuario y capacidades y limitaciones de hardware y software del dispositivo móvil
La resolución de un mapa selecciooado puede depender de la velocidad de desplazamiento, el contexto (por ejemplo, la inclusión de puntos de interés), datos de mapa disponibles, y las limitaciones o tapones en el dispositivo de comunicación móvil (por ejemplo, memoria, tamaño y resolución de pantalla y velocidad del procesador). Los mapas seleccionados para su presentación en el dispositivo móvil se adaptan para coincidir de este modo coo los criterios pertinentes. El intervalo de descargas al dispositivo móvil puede depender también del contexto que incluye la velocidad de desplazamiento del usuario, las opciones y las velocidades de conexión y la asignación de memoria.
ES 2 628 208 T3
Sobre la base de un análisis de la información de posición y contextual, pueden calcularse los segmentos de datos de mapa basándose en, por ejemplo, el tamaño y la resolución y descargarse desde un servidor de contenido al dispositivo móvil. Los segmentos de mapa también pueden eliminarse del dispositivo móvil basándose en criterios similares. Los dalos de mapa también pueden enriquecerse mediante datos multimedia con información de localización. Los beneficios del sistema de almacenamiento en caché basado en localización pueden mejorarse mediante la combinación con tecnologías de gestión de localización y gestión de conexiones inteligentes
Un sistema 100 de almacenamiento en caché basado en localización se representa en la figura 1. El sistema 100 es en general un modelo cliente-servidor y está basado en tomo a un dispositivo 102 móvil. El dispositivo 102 móvil puede ser un teléfono móvil, un asistente digital personal, un dispositivo de almacenamiento móvil (por ejemplo, un reproductor de MP3 o una fototecafvideoteca portátil), un dispositivo de sistema de posicionamiento global, un centro de información automotriz (por ejemplo, ONSTAR de General Motors Corporation) o cualquier otro dispositivo portátil capaz de recibir datos de posición geográfica e interconectarse con una red 122 para recibir un contenido adiciona l. Un servidor 124 de contenido se conecta con el dispositivo 102 móvil a través de una red 122. El sistema 100 puede incluir también un servicio 116 de sistema de posicionamiento global (GPS), u otra metodología para determinar la localización geográfica del dispositivo 102 móvil, que interactúa con el dispositivo 102 móvil.
El dispositivo 102 móvil tiene diversos módulos o componentes para implementar las operaciones de almacenamiento en caché basadas en localización, como se indica en la figura 1 Estos módulos pueden incluir un módulo 104 gestor de localización, un módulo 106 estimador de dirección de movimiento, un módulo 108 de almacenamiento en caché y un módulo 114 gestor de conexión. El módulo 104 gestor de localización, el módulo 106 estimador de dirección de movimiento y el módulo 108 de almacenamiento en caché, implementan conjuntamente la selección inteligente y dinámica de datos de mapa para su presentación en el dispositivo 102 móvil. Además, el dispositivo 102 móvil puede incluir un contenedor 110 de contenido para almacenar datos de mapa y un contenedor 112 de contexto para almacenar preferencias de usuario u otra información contextual. El contenedor 110 de contenido y el contenedor 112 de contexto pueden adoptar la forma de estructuras de datos dentro de una memoria general del dispositivo 102 móvil
Como se muestra en la realización de la figura 1, el dispositivo 102 móvil puede comunicarse con el servidor 124 de contenido a través de una cooexión con una o más redes 122. La red 122 puede ser cualquier tipo de red, por ejemplo, una red de área local (LAN), una red de área local inalámbrica WLAN), una red de área extensa (WAN), Internet, una red de telefonia, una red de microondas (por ejemplo, WiMAX), una red de radio (por ejemplo, GPRS) o una red óptica o combinaciones de las mismas
El dispositivo 102 móvil puede tener la capacidad de conectarse con múltiples redes simultáneamente. Por ejemplo, si el dispositivo 102 móvil es un teléfono inalámbrico, puede cooectarse a una red de telefonia de voz usando el estándar sistema global para las comunicaciones móviles (GSM), el estándar acceso múltiple por división de código (CDMA), el sistema universal de telecomunicaciones móviles (UMTS) o cualquier otro estándar de telefonia de red. Los datos pueden transmitirse alternativa o simultáneamente usando los datos de conmutación de circuitos (CSO), el servicio general de radiocomunicaciones por paquetes (GPRS), el acceso de paquetes de enlace descendente de alta velocidad (HSDPA) o cualquier otro protocolo de transferencia de datos.
La conexión de red puede gestionarse por el gestor 114 de conexión. El gestor 114 de conexión es responsable de seleccionar la mejor conexión de red para descargar datos desde el servidor 124 de contenido al dispositivo 102 móvil basándose en el hardware disponible. Una implementación a modo de ejemplo de un módulo gestor de conexión adecuado está incorporada en la plataforma MICROSOFT WINOOWS MOBILE. Los tipos de cooexión a modo de ejemplo pueden incluir Bluetooth, GPRS, WLAN y UMTS. También es posible elegir más de un tipo de conexión si el dispositivo 102 móvil está equipado para manejar múltiples protocolos o tiene múltiples interfaces de comunicación. La selección de la opción de transferencia de datos más apropiada puede depender de una serie de factores que incluyen la cantidad de datos a transferir, los tipos de conexión disponibles, las operaciones que actualmente están realizándose por el dispositivo móvil y cualquiera de las preferencias de usuario definidas en el contenedor 112 de contexto. Por ejemplo, si el usuario está usando una aplicación de navegador web en el dispositivo 102 móvil y está actualmente descargando información usando el protocolo GPRS a través de una WLAN, el gestor 114 de conexión puede ordenar que los datos de mapa se descarguen a través de una interfaz Bluetooth disponible. Cuando la conexión WLAN está libre, el gestor 114 de conexión puede reordenar las operaciones de descarga a través de la interfaz WLAN debido a las velocidades de transferencia de datos más altas.
El servidor 124 de contenido incluye un almacén 126 de datos y un servicio de conexión para proporcionar una interfaz entre el servidor 124 de contenido y el dispositivo 102 móvil. El almacén 126 de datos almacena los datos de mapa a cargar bajo demanda al dispositivo 102 móvil. En una realización a modo de ejemplo, el servicio de conexión puede ser un servicio web. La función principal del servicio web es proporcionar los datos de mapa necesarios que responden a la dirección de movimiento estimada del dispositivo 102 móvil. El servicio web proporcionado por el servidor 124 de contenido puede seleccionar además los datos de mapa del almacén 126 de datos basándose en la información contextual proporcionada por el contenedor 112 de contexto en el dispositivo 102 móvil
Como se indica en la figura 1, el dispositivo móvil puede recibir dalos de posición geográfica directamente del servicio 116 de GPS o como alternativa de olras fuentes. Coo el fin de recibir dalos geográficos de posicionamiento
ES 2 628 208 T3
desde un servicio 116 de GPS, el dispositivo 102 móvil está en general equipado con un chip receptor de GPS o está conectado con un dispositivo GPS externo a través de cable o Bluetooth. Un receptor GPS de este tipo se sintoniza para recibir señales desde satélites de posicionamiento global y triangular la posición del dispositivo 102 móvil. En la realización de la figura 1, un dispositivo de GPS de este lipo se incorporaría en un módulo 104 gestor de localización descrito más adelante
Como alternativa, el dispositivo 102 móvil puede determinar una posición geográfica mediante la interconexión con una WLAN 118, una red de GPRS 120, o cualquier otro estándar de tecnologia de red inalámbrica usando una pluralidad de Iranspondedores. Si hayal menos tres fuentes de transmisión inalámbricas que dispongan la red dentro del rango del dispositivo 102 móvil, el gestor 104 de localización en el dispositivo 102 móvil puede triangular una posición geográfica basándose en las posiciones fijas de los transpondedores de red inalámbricos. El gestor 104 de localización puede consultar a los transpondedores para proporcionar dicha información de posición fija.
La posición geográfica puede determinarse además por la entrada directa de datos por el usuario del dispositivo 102 móvil o cualquier fuente de posición. El gestor 104 de localización puede estar equipado para usar cualquiera o todas las fuentes de información de localización, es decir, GPS, otras metodologías de triangulación, entrada directa,
o cualquier otra metodología, para determinar una posición geográfica. El dispositivo 102 móvil es agnóstico para la fuente de la información de localización cuando se determinan adicionalmente los datos de mapa apropiados para su presentación
El estimador 106 de dirección de movimiento recibe la posición geográfica actual del dispositivo 102 móvil desde el gestor 104 de localización y estima la dirección en que se moverá el usuario del dispositivo 102 móvil. Esta estimación puede calcularse basándose en esta información de posición real, la dirección recorrida por el usuario dentro de un período de tiempo anterior (por ejemplo, dentro de los últimos minutos o segundos, el periodo puede depender además de la velocidad del usuario), la información de contexto ambiental y la información de contexto de usuario. Por ejemplo, el usuario puede estar en un automóvil desplazándose a una velocidad constante por una carretera. Esta información de contexto ambiental puede extrapolarse basándose en las coordenadas de mapa y la velocidad. El estimador 106 de dirección de movimiento puede determinar de este modo a partir de este contexto que el usuario continuará desplazándose por la carretera. Como alternativa, si la velocidad del usuario disminuye durante un período de unos pocos segundos y los mapas de la zona indican una intersección con otra carretera, tal información puede sugerir un cambio potencial de dirección del usuario y el sistema 100 puede prepararse para adaptarse a un cambio de este tipo
El estimador 106 de dirección de movimiento puede calcular la posición estimada futura del usuario usando cualquiera de varios algoritmos diferentes. Algoritmos a modo de ejemplo incluyen cualquier extrapolación lineal o no lineal de la ruta rastreada. La extrapolación significa que el algoritmo debería ser capaz de estimar a partir de los puntos almacenados de la ruta rastreada una posición donde el usuario del dispositivo puede estar en una cantidad de tiempo con la mayor probabilidad posible. Puede elegirse un algoritmo específico para cualquiera de una variedad de razones, por ejemplo, la velocidad del procesador en el dispositivo 102 móvil, los requisitos de asignación de memoria o el número de variables deseadas para su consideración. El estimador 106 de dirección de movimiento también puede estar abierto para implementar los algoritmos especificos de aplicación.
Una vez determinada por el estimador 106 de direcciÓn de movimiento, la posición estimada se proporciona a continuación al módulo 108 de almacenamiento en caché para iniciar una precarga de todos los mapas relevantes y otros datos. El módulo 108 de almacenamiento en caché determina, en función de la posición del usuario y del contexto actual, si los datos deberían precargarse desde el servidor 124 de contenido y si pueden eliminarse los datos del contenedor 110 de contenido local. En el caso de una solicitud de datos (por ejemplo, mapas) del gestor 104 de localización, el módulo 108 de almacenamiento en caché recupera estos datos normalmente desde el contenedor 110 de contenido local. De lo contrario, si los datos no se almacenan localmente, los datos deben cargarse desde el servidor 124 de contenido inmediatamente. Además, si el dispositivo 102 móvil tiene poco almacenamiento disponible en su memoria, el módulo 108 de almacenamiento en caché purga los datos del contenedor 110 de contenido identificado como la mayor distancia desde la posición actual o la posición esperada del usuario. El módulo 108 de almacenamiento en caché también purga los datos del contenedor 112 de contexto que es menos aplicable a la posición actual o esperada del usuario.
El contenedor 110 de contenido es un almacén de datos para los datos basados en localizaciÓn. En una implementación, el contenedor 110 de contenido puede ser un archivo binario simple para minimizar los recursos necesarios del dispositivo 102 móvil. En otra implementación, el contenedor 110 de contenido puede ser una base de datos móvil. En una implementación que usa una estructura de datos orientada a objetos, los datos basados en localización pueden encapsularse dentro de una clase con las siguientes interfaces a modo de ejemplo'
a) cálculo de la distancia entre los datos y la posición dada actual del usuario;
b) tipo de datos basados en localización;
c) cantidad de los datos basados en localización;
d) prioridad de los datos basados en localización; y
el una función-Get para los datos basados en localización
ES 2 628 208 T3
Estas clases de datos pueden estructurarse en una clase cootenedor que contiene lodos estos objetos (en el caso de una base de datos esta clase contenedor es solo la intertaz)_ La clase conlenedOf puede proporcionar las siguientes interfaces a modo de ejemplo
al obtener una lista de objetos con una distancia mínima a un punto determinado;
b) obtener una lista de objetos con una distancia mínima a una línea determinada;
el obtener una lista de objetos con una distancia mínima a una zona determinada;
d) obtener una lisia de objetos dentro de una zona determinada;
el añadir un objeto(s); y
f) eliminar un objeto(s)
De esta manera, los mapas y otros contenidos almacenados en el contenedor 110 de contenido en el dispositivo 102 móvil (es decir, los "objetos· en memoria) pueden compararse con una posición actual del usuario permitiendo que el módulo 108 de almacenamiento en caché realice las siguientes selecciones de mapa y decisiones de asignación de memoria apropiadas. Por ejemplo, si el módulo 108 de almacenamiento en caché determina que la memoria disponible para almacenamiento de mapas y contenido se está agotando, pueden descartarse los mapas más alejados de la posición del usuario para proporcionar espacio de almacenamiento para agregar mapas y contenidos más relevantes para la posición actual del usuario.
El contenedor 112 de contexto es un almacén de datos para todos los datos de contexto y preferencias relevantes del usuario del dispositivo 102 móvil. Las preferencias a modo de ejemplo pueden incluir las siguientes
a) almacenamiento disponible en el dispositivo 102 móvil;
b) velocidad media de movimiento del usuario'
c) medio(s) preferido de transporte;
d) tipos disponibles/preferidos de datos dependientes de posición;
e) tipos de mapas disponibles/preferidos;
f) espacio de memoria disponible o asignación de procesador en el dispositivo 102 móvil;
g) tamaño y resolución de la pantalla en el dispositivo 102 móvil;
h) tipos de conexión disponibles en el dispositivo 102 móvil; y
i) tipos de conexión preferidos en función de los costes.
Estos datos pueden proporcionarse por una única clase/objeto y pueden configurarse a través de una interfaz de usuario en el dispositivo 102 móvil. Muchos de los parámetros pueden calcularse automáticamente, si es posible, para evitar la entrada del usuario
La finalidad de la recopilación y el uso de este tipo de datos contextuales es proporcionar al usuario un mapa más adecuado a las circunstancias. Por ejemplo, el módulo 108 de almacenamiento en caché puede seleccionar mapas alternativos basándose en el movimiento del usuario. Si resulta evidente que el usuario se mueve a velocidades solo alcanzables por un vehículo en movimiento, el módulo 108 de almacenamiento en caché seleccionará mapas de carreteras que cubran una gran zona (por ejemplo, escalado en millas o kilómetros) con un nivel de detalle muy bajo. Si la información de preferencia personal de un usuario indica que el usuario se desplaza normalmente en tren, el módulo 108 de almacenamiento en caché puede seleccionar mapas con las rutas de tren y estaciones identificadas. Como alternativa, si la velocidad del usuario sugiere que el usuario está caminando, el módulo 108 de almacenamiento en caché puede seleccionar mapas que cubren una zona pequeña (por ejemplo, escalada en pies o metros) con un alto nivel de detalle.
Diversos niveles de detalle contextual en los mapas pueden proporcionarse de manera inteligente al usuario en función de las preferencias conocidas del usuario tomadas en cuenta por el módulo 108 de almacenamiento en caché al seleccionar mapas específicos para descargar desde un servidor 124 de contenido. Si la información de preferencia personal del usuario indica que al usuario le encanta frecuentar cafeterías o cervecerías, pueden presentarse conocidas cafeterías o cervecerías locales como letreros señalizadores en los mapas. Si la información de preferencia de usuario indica que el usuario está de viaje de vacaciones, la información del letrero señalizador puede proporcionarse en un mapa que indique los sitios históricos o turisticos (por ejemplo, campos de batalla a lo largo de una carretera o museos de una ciudad) en la zona visible de los mapas. Una información de señalización adicional puede indicar la direcciÓn de ciertas atracciones fuera de la zona visible del mapa mostrado
Téngase en cuenta que no tiene que ser un servidor de contenido central, sino que en su lugar el contenido puede recuperarse a partir de una pluralidad de servidores de contenido distribuidos o incluso no relacionados. Además, el contenido puede no limitarse a simples mapas. Por ejemplo, si un usuario está visitando una atracción turística, el módulo 108 de almacenamiento en caché puede buscar contenido de un servidor identificado como punto proveedor de contenido de interés relacionado con la localización o atracción específica. Un museo, por ejemplo, puede proporcionar contenido multimedia que puede presentarse en el dispositivo 102 móvil para un usuario que recorre el museo. El contenido a modo de ejemplo puede incluir una visita guiada narrativa de audio o información descriptiva sobre las exposiciones. Como se describe con respecto a los mapas, este contenido contextual puede descargarse y almacenarse en caché según sea necesario para adaptarse a la memoria o a otras limitaciones. El sistema de almacenamiento en caché basado en localización puede soportar la descarga y la presentación de cualquier tipo de
ES 2 628 208 T3
datos junto con una infraestructura de detección de localización como se describe adicionalmente en el presente documento con el fin de proporcionar el contenido contextual apropiado. Los datos pueden proporcionarse también a cualquier otra aplicación en el dispositivo 102 móvil para su presentación, cálculo de posición o cualquier otro fin soportado.
El módulo 108 de almacenamiento en caché puede realizar detenninaciones de almacenamiento y presentaciones de contenidos basándose en la asignación de memoria, la demanda de procesador, y otra información de estado del dispositivo 102 móvil en cualquier momento dado. Por ejemplo, si la memoria disponible en un dispositivo 102 móvil es insuficiente para almacenar los mapas requeridos para toda una ruta planificada, el sistema 100 de almacenamiento en caché basado en localización es capaz de proporcionar dinámicamente al usuario los mapas apropiados para todo el viaje descartando los segmentos del mapa anterior de la memoria y descargando los segmentos de mapas futuros según sea necesario. El sistema 100 de almacenamiento en caché basado en localización proporciona por lo tanto una ventaja significativa sobre otras tecnologias que descargan y almacenan de manera estática los mapas basándose en una ruta predefinida antes de un viaje. El módulo 108 de almacenamiento en caché también puede tener en cuenta el tamaño y la resolución de la pantalla específica del dispositivo 102 móvil y presentar un contenido de mayor resolución a un dispositivo 102 móvil que pueda soportarlo.
El gestor 114 de conexión también puede usar la información de preferencia de usuario en el contenedor 112 de contexto, asi como la información de estado del dispositivo 102 móvil para tomar decisiones de conexión. Por ejemplo, basándose en un plan de datos asociado con el dispositivo 102 móvil de un usuario, pueden aplicarse estructuras de precios diferentes a la transferencia de datos a través de un servicio o protocolo en diferentes momentos del día. Como alternativa, un usuario puede suscribirse a un servicio WiFi de tarifa fija de un proveedor especifico. Si el usuario está en una localización específica atendida por múltiples proveedores WiFi, el gestor 114 de conexión seleccionaria el servicio de suscripción del usuario en oposición a otro servicio disponible. En otro ejemplo más, si el gestor 114 de conexión reconoce que el dispositivo 102 móvil está acoplado o conectado de otra manera a una red cableada, el gestor 114 de conexión puede elegir por usar dicha red cableada para la transferencia de datos frente a una opción inalámbrica debido a las mayores velocidades de transferencia de datos
Una implementación simple, a modo de ejemplo del sistema de almacenamiento en caché basado en localización para un dispositivo móvil se representa en la figura 2. En un primer periodo de tiempo, una pantalla 200 de dispositivo móvil representa un primer mapa 202 que indica la posición de un usuario en el contexto de la geografia indicada por el primer mapa 202. El primer mapa 202 se proporciona a la pantalla 200 por el módulo 210 de almacenamiento en caché El usuario se representa como desplazándose en un automóvil 204 a lo largo de una primera carretera 206 hacia una intersección con una segunda carretera 208.
Basándose en una información contextual ambiental y otra anterior, por ejemplo, la longitud de tiempo de desplazamiento del automóvil 204 en la primera carretera 206, los viajes anteriores por el usuario en la primera carretera 206, y otras consideraciones, el módulo 21 Ode almacenamiento en caché había anticipado que el usuario continuaria desplazándose por la primera carretera 206 más allá de la intersección con la segunda carretera 208 Por lo tanto, el módulo 210 de almacenamiento en caché había almacenado anteriormente un segundo mapa 202a como se muestra en la pantalla 200a propuesta durante un segundo periodo de tiempo. El segundo mapa 202a estima la posición del automóvil 2D4a del usuario a lo largo de la primera carretera 206 más allá de la intersección con la segunda carretera 208
Sin embargo, el gestor de localización y el estimador de dirección de movimiento proporcionan información actualizada al módulo 210 de almacenamiento en caché que indica que el usuario está desacelerando. A partir de la información posicional y contextual del primer mapa 202, el módulo 210 de almacenamiento en caché puede determinar que existe una posibilidad de que el usuario pueda girar hacia la segunda carretera 208 como se indica en el primer mapa 202 por las posiciones altemativas del automóvil 204', 204" en la segunda carretera 208. Por lo tanto, en lugar de mostrar el segundo mapa 202a, el módulo 210 de almacenamiento en caché contacta con el servidor 212 de contenido para recuperar unos mapas adicionales para cubrir la posibilidad de que el usuario pueda girar hacia la segunda carretera 208
Una vez que el gestor de localización determina que el usuario ha girado hacia una dirección específica, el módulo 210 de almacenamiento en caché presenta el tercer mapa 202b correspondiente en la pantalla 200b que muestra el automóvil 204 procediendo hacia la segunda carretera 204 y mostrando la geografía en la dirección de la segunda carretera 208. Como se indica con respecto al tercer mapa 202b de la pantalla 2001>, el tercer mapa 202b se descarga dinámicamente por el módulo 210 de almacenamiento en caché desde el servidor de contenido 212.
La figura 3 representa una serie de operaciones 300 a modo de ejemplo realizadas por el módulo 104 gestor de localización, el módulo 106 estimador de dirección de movimiento y el módulo 108 de almacenamiento en caché de la figura 1 para proporcionar la funcionalidad de almacenamiento en caché basada en localización en el dispositivo 102 móvil. En una operación 302 de búsqueda, el gestor 104 de localización determina la posición geográfica del dispositivo 102 móvil. Como se ha descrito anteriormente, esta operación 302 de búsqueda puede realizarse a través de GPS u otras metodologías de triangulación o simplemente basándose en la entrada de usuario. A continuación, en una operación 302 de determinación, el estimador 106 de dirección móvil determina la dirección del movimiento del dispositivo 102 móvil. A continuación, en una operación 306 de desarrollo, el módulo 108 de
ES 2 628 208 T3
almacenamiento en caché desarrolla una posición futura estimada del dispositivo 102 móvil. Como se ha descrito anteriormente, esta operación 306 de desarrollo puede tener en cuenta faclores contexluales adicionales tales como el enlomo específico del dispositivo 102 móvil y las preferencias de usuario almacenadas en el contenedor 112 de contexto.
Basándose en la información de posición, direccional, y contextual, el módulo 108 de almacenamiento en caché emprende una operación 308 de consulta para determinar si el siguiente mapa adecuado ya está almacenado en el dispositivo 102 móvil. Si ya existe un mapa apropiado, en una operación 310 de recuperación el módulo 108 de almacenamiento en caché recupera el siguiente mapa de contenedor 110 de contenido. Como alternativa, si en la operación 308 de consulta, el módulo 108 de almacenamiento en caché determina que el siguiente mapa apropiado no está ya almacenado en el dispositivo 102 móvil, en una operación 312 de conexión el módulo 108 de almacenamiento en caché se conecta con el servidor 124 de contenido a través de la red 122. A continuación, en una operación 314 de descarga el módulo 108 de almacenamiento en caché descarga el siguiente mapa apropiado del servidor 124 de contenido. Una vez que el módulo 108 de almacenamiento en caché ha recuperado o el siguiente mapa del contenedor 110 de contenido o ha descargado el mapa desde el servidor 124 de contenido, en una operación 316 de presentación, el siguiente mapa apropiado se presenta al usuario a través de una pantalla en el dispositivo 316 móvil
La figura 4 ilustra un sistema 400 de detección de localización que puede implementarse como parte del sistema de almacenamiento en caché basado en localización para proporcionar mapas apropiados al dispositivo móvil. El sistema 400 de detección de localización incluye un gestor 420 de localización, una aplicación 430 de detección de localización, y un gestor 440 de mapas. El gestor 420 de localización esté conectado con una o más fuentes 425(1-N) de localización. El gestor 440 de mapas está conectado con uno o más almacenes 442 de mapa, generadores 444 de mapas y servicios 446 web de mapas
El gestor 420 de localización está configurado para recibir información de localización de las una o más fuentes 425(1-N) de localización de dispositivos móviles y para resumir la información de localización en eventos de localización que se proporcionan a la aplicación 430 de detección de localización. Las fuentes 425(1-N)de localización de dispositivos móviles pueden ser cualquier cosa que proporcione una información de localización acerca de un elemento. Por ejemplo, una fuente de localización de dispositivos móviles puede ser un receptor GPS. Otra fuente de localización de dispositivos móviles puede ser una enlrada de usuario que indica la posición del usuario. Por ejemplo, un usuario puede indicar a través de una entrada de usuario en un dispositivo móvil que el usuario está en una localización determinada. El usuario puede introducir una localización en el dispositivo móvil a través de una interfaz de usuario, por ejemplo, un teclado, una pantalla táctil, o un reconocimiento de voz. Otra fuente de localización de dispositivos móviles puede ser una etiqueta RFID. Cada fuente425(1-N)de localización de dispositivos móviles puede proporcionar diferentes resoluciones de datos de localización. Por ejemplo, algunas fuentes de localización pueden ser muy precisas, mientras que otras fuentes de localización solo pueden tener una precisión dentro de una zona definida, por ejemplo, un barrio o un tramo de una carretera
Una fuente 425(1-N) de localización de dispositivos móviles puede corresponder a una fuente de localización próxima
o distante. Una fuente próxima corresponde a un hardware de generación de localización, que incluye, pero no limitado a, un receptor GPS o al propio dispositivo móvil que determina su localización a partir de la información de red. Una fuente de localización distante corresponde a la información de localización, o fomentada o extraída desde una fuente de red remota (por ejemplo, un mensaje del servicio de mensajes cortos (SMS) fomentado que llega con la localización de un automóvil, o la información de localización devuelta (extraída) a través de una solicitud de web). Tanto las fuentes de localización próximas como distantes se tratan como entidades lógicas abstractas. Esto hace el modelo de programación similar para muchos tipos diferentes de información de localización
Una vez que se reciben los datos de localización, el gestor 420 de localización determina si se activa cualquier caso de localización que se relaciona con la aplicación 430 de detección de localización. En lugar de simplemente proporcionar unos datos de localización en bruto de las fuentes de localización a la aplicación 430 de detección de localización, el gestor 420 de localización proporciona eventos de localización tras la aparición de un elemento que tiene una cierta relación lógica con una zona de interés, tal como entrar o salir de la zona de interés. Una zona de interés puede referirse a cualquier zona y puede ser interior o exterior. Por ejemplo, una localización interior podría usarse para mostrar la localización de un activo fijo (por ejemplo, una sala de conferencias) ylo un activo móvil (por ejemplo, personas, equipo de oficina, o el inventario). Una zona exterior de interés podrla ser un bloque de una ciudad, una zona alrededor de un edificio o alguna otra referencia, o alguna otra zona predefinida. Una zona al aire libre de interés también puede ser un activo móvil (por ejemplo, un automóvil o una persona)
En lugar de interpretar los datos de localización en bruto, la aplicación 430 de detección de localización registra los eventos de localización basándose en la relación del elemento con las zonas de interés. Tras producirse un evento de localización predefinida, el gestor 420 de localización se lo notifica a la aplicación 430 de detección de localización. En ese momento, la aplicación 430 de detección de localización ejecuta una rutina de código de activación de evento desarrollada para manejar el evento de localización. La aplicación 430 de detección de localización responde de este modo a los eventos de localización generados.
ES 2 628 208 T3
Tras producirse un evento de localización, la aplicación 430 de detección de localización suministra un conjunto de criterios ponderados al gestor 440 de mapas. Por ejemplo, los criterios ponderados pueden incluir una resolución de mapa propuesta junto con un conjunto de objetos que a la aplicación 430 de detección de localización le gustaría mostrar en el mapa dibujado por los generadores 444 de mapas. La aplicación 430 de detección de localización también puede suministrar unos objetos que a la aplicación 430 de detección de localización le gustaría reproducir en la parte superior de un mapa existente o generado_ Además de responder la aplicación 430 de detección de localización a eventos para accionar la reproducción de los mapas por el gestor 440 de mapas, la aplicación 430 de detección de localización también puede auto accionarse. Por ejemplo, la aplicación 430 de detección de localización puede tener un temporizador que periódicamente ~extrae" la información y solicita la reproducción de un nuevo mapa por el gestor 440 de mapas. Asi, además de las respuestas "fomentadas" por eventos, la aplicación 430 de detección de localización también puede "extraer" datos y tomar medidas
El gestor 440 de mapas resume la información de mapa a partir de la aplicación 430 de detección de localización de tal manera que no necesita conocer detalles sobre cómo manejar los mapas o la información de localización. En lugar de tener la aplicación 430 de detección de localización que incluir un código de mapa de reproducción de mapas complejo, la aplicación 430 de detección de localización proporciona al gestor 440 de mapas el nombre o el tipo de mapa que desearía que se muestre. El generador 444 de mapas no está vinculado a ninguna aplicación única, o motor de reproducción. Por ejemplo, un motor de reproducción puede estar basado en un vector, mientras que otro motor de reproducción puede estar basado en un mapa de bits. El gestor 440 de mapas proporciona de este modo a la aplicación 430 de detección de localización una interfaz para interactuar con el generador 444 de mapas.
El gestor 440 de mapas proporciona un rico conjunto de caracteristicas a la aplicación 430 de detección de localización sin tener que conocer la aplicación 430 de detección de localización los detalles de cómo implementar el código del mapa. Por ejemplo, supongamos que la aplicación 430 quiere permitir que un usuario seleccione una zona en un mapa y a continuación tener que traducir los datos a una latitud y longitud, o en el caso de un mapa de interiores en los sistemas de coordenadas interiores. El gestOf 440 de mapas proporciona la información a la aplicación 430 de detección de localización. El gestor 440 de mapas actúa como un intermediario entre la aplicación 430 de detección de localización y los generadores 444 de mapas y los servicios 446 web de mapas y suministra la funcionalidad a la aplicación 430 de detección de localización.
Algunas de las funcionalidades incluyen mapear las coordenadas XN de pantalla en el dispositivo móvil a las coordenadas de mapa de latitud/longitud/altitud en el mapa. Por ejemplo, un usuario puede hacer clic en la pantalla que está mostrando actualmente un mapa para introducir su localización. En respuesta a la entrada de usuario, el gestor 440 de mapas mapea la localización XN de pantalla a la localización de mapa de latitud/longitud/altitud. Del mismo modo, el gestor 440 de mapas mapea los datos de mapa de latitudflongitudfaltitud a las localizaciones XN de pantalla que permiten a la aplicación 430 de detección de localización reproducir de manera dinámica en la parte superior del mapa mostrado actualmente. La altitud en algunas reproducciones de mapa tal como un mapa de una zona de esqui, puede afectar significativamente a la localización XN
Hay muchas maneras de convertir una coordenada XN en una coordenada de latitudflongitud/altitud. En general, el gestor 440 de mapas recibe una coordenada XN de pantalla, hace coincidir la coOfdenada con un mapa, y a continuación, basándose en la escala del mapa y los límites del mapa, usa una tecnología de proyección que proporciona las coordenadas de latitudf1ongitudfaltitud. La aplicación 430 de detección de localización no necesita entender cómo se reproducen los propios mapas o lo que es la "tecnologia de proyección" Muchas diferentes tecnologias de proyección mapas son posibles, que incluyen, pero no se limitan a, las técnicas de proyección de mapas clásicos, tales como las proyecciones Mercator, las proyecciones cilíndricas, las proyecciones polares, las proyecciones de rejilla, y las tecnologias de proyección personalizadas (por ejemplo, un mapa de una zona de esquí
o un mapa de asientos de un estadio). La aplicación 430 de detección de localización puede moverse sin problemas entre diferentes técnicas de proyección.
El gestor 440 de mapas también suministra eventos de alto nivel sobre el conjunto de mapas disponibles a la aplicación 430 de detección de localización. Estos eventos proporcionan a la aplicación 430 de detección de localización una información importante tal como cuando varios mapas están disponibles que cumplen con los criterios solicitados por la aplicaciÓfl 430 de detección de localización. La aplicación 430 de detección de localización no se limita al uso de un solo mapa para su visualización. Por ejemplo, una aplicación puede usar un mapa de una calle durante un periodo de tiempo y a continuación usar un mapa del metro (por ejemplo, que muestra las rutas de autobús, túneles del metro, etc.) durante otro periodo de tiempo. El gestor 440 de mapas clasifica los mapas de acuerdo con su orden de idoneidad. Cuando no hay mapas disponibles que cumplan con los criterios proporcionados por la aplicación 430 de detecciÓfl de localización, el gestor 440 de mapas podrá localizar mapas que cumplan con algunos de los criterios pudiendo, a continuación, proporcionarse esos mapas
El gestor 440 de mapas también permite la provisión dinámica de nuevos mapas en el dispositivo móvil Los mapas pueden descargarse en el dispositivo móvil en cua lquier momento. Por ejemplo, un nuevo mapa puede descargarse para una aplicación de transporte público cuando se añade una nueva ruta de tránsito. De acuerdo con una realización, estos mapas se representan usando dos archivos, uno binario y opaco al gestor 440 de mapas y otro que entiende. De acuerdo con una realización, el mapa se representa usando un archivo XML. El gestor 440 de
ES 2 628 208 T3
mapas es capaz de leer el archivo XML y obtener la información necesaria para agregar el mapa al almacén local de dalos de mapas en el dispositivo móvil
La siguiente es una representación XML a modo de ejemplo de un archivo de mapa.
MapProjection="SimpleGrid"
MetersPerPixe 1="2. 80253449893166" Map[nfoClass="none"
CustornMapRender="none")
<SimpleLatLongRectangle MapF i I eName="dev ice_map_l _0. PNG">
<MapCoord inate Pos ¡ti on="NorthWestCorner" Lat i tude="50. 7867"
<MapCoordinate Pos ¡ti on="NorthEastCorner" Lat itude="50. 7867"
l ong itude="6. 09407106666667" 1>
<MapCoord i nate Position="SouthWestCorner"
lati tude="50. 7766295454545" long i tude"6. 07814726827094" f> <MapCoord inate Pos i t i on="SouthEastCorner" Lat i tude="50. 7766295454545" long i tude="6. 09406985757576" 1> </ SimplelatlonRectangle> </ MapOata>
MAPPROJECTION se refiere a la tecnología que se usa para mostrar el mapa. En este ejemplo específico, el tipo de proyección de mapa es una rejilla simple. METERSPERPIXEL se refiere a la resolución media del mapa. MaplnfoClass se refiere a si existe una clase personalizada que se necesita para responder a preguntas sobre este mapa. Este campo permite a los desarrolladores incluir una clase personalizada dentro del entorno de programación que puede llamarse cuando se muestra este mapa. Del mismo modo, CUSTOMMAPRENDERER se refiere a si es necesario un motor de reproducción personalizada para dibujar el mapa. El campo MAPFILENAME se refiere al nombre del archivo binario que contiene la información de qué motor de reproducción de mapas se usará para dibujar el mapa. El campo SIMPLELATLONGRECTANGLE identifica el mapa como un rectángulo definido por las coordenadas de latitud y longitud.
El siguiente ejemplo ilustra algunos de los campos personalizados que se utilizan.
<MapData Version="I. OI" MapProject i on="S imp IeGr id"
MetersPerPixel="2. 80253449893166" Map[nfoCI ass="Cust~aplnfol"
Cust~apRender="CustanMapRender I ">
<CustanMaplnfol MapF i I eName="dev i ce_map_l _0. PNG" classid="CustomMapEngine. MaplnfoParser"
1>
<CustornMapRenderl MapF i I eName="dev i ce_map_l _0. PNG"
c I ass i d="Cust~apEng ineoMapRenderEng i ne" 1> </MapData>
El gestor 440 de mapas puede tener múltiples mapas disponibles en el dispositivo en un almacén 442 de mapas que puede usarse por la aplicación 430. El gestor 440 de mapas examina a través del conjunto de mapas disponibles en el dispositivo en el almacén 442 de mapas y busca el mejor mapa a usarse. Después de seleccionarse, se selecciona y se reproduce el mapa de mejor ajuste.
La figura 5 representa un diagrama 500 de estado de la interacción para el desarrollo de aplicaciones de detección de localización Comenzando en el estado 510, se definen unas zonas geográficas de interés La selección de las
ES 2 628 208 T3
zonas de interés puede producirse antes o después de que se despliegue la aplicación de detección de localización. Además, esta información puede enviarse a los dispositivos móviles en cualquier momento. Una zona de interés es una región predefinida que se refiere a un mapa. La zona de interés puede ser de cualquier tamaño que pueda definirse. Por ejemplo, una zona de interes puede ser del tamaño de un metro cuadrado o un país entero. Las zooas de interés se definen en función de las necesidades de la aplicación de detección de localización
Por ejemplo, supóngase que la aplicación de detección de localización que se desarrolla determina cuando un niño deja la escuela y regresa a casa. En este ejemplo específico, las zonas de interés pueden ser una zona que incluye la escuela y otra zooa que incluye la casa del niño. Algunas zooas de interés pueden seleccionarse por el desarrollador, mientras que otras zonas de interés pueden seleccionarse por un usuario. Por ejemplo, muchas aplicaciones de detección de localización, tales como el ejemplo descrito anteriormente, se configuran después de que se proporcione la aplicación de detección de localización al usuario. En el ejemplo anterior, un padre puede seleccionar las zooas de interés.
El estado 520 muestra la selección de mapas y servidores de mapas. Un desarrollador puede seleccionar entre los mapas disponibles en el sistema o puede crear sus propios mapas. De acuerdo con una realización de la invención, los mapas disponibles se comparten a través de las aplicaciones de detección de localización de tal manera que las diferentes aplicaciones de detección de localización pueden usar el mismo mapa. De esta manera, no es necesario que cada aplicación de detección de localización desarrolle sus propios mapas. En la mayoría de los casos, los detalles del mapa que se reproduce se ocultan del desarrollador de la aplicación de detección de localización. Si el desarrollador desea incluir su propio software de reproducción, el desarrollador puede incorporar el software de reproducción en el entorno del estado 540 como se describe más adelante.
En el estado 530, el desarrollador programa el código de localización basado en los eventos que se ejecutan en respuesta a los eventos asociados con las zonas de interés dentro de la aplicación de detección de localización. Este código basado en eventos depende del tipo de aplicación de detección de localización que se desarrolla y puede incluir muchos tipos diferentes de datos. Por ejemplo, un programa puede realizar una acción cuando un usuario alcanza una localización predeterminada. En el rastreo del niño del ejemplo anterior, puede programarse una rutina de ejemplo para resaltar el hogar o la escuela basándose en la localización del niño en ese momento específico. El desarrollador también puede colocar elementos en el mapa en respuesta a los eventos.
En el estado 540, el desarrollador puede configurar también una preferencia para reproducir el mapa Por ejemplo, el desarrollador puede desear usar un motor de reproducción basado en vectores para una parte de la aplicación y un sistema basado en un mapa de bits para otra parte de la aplicación. Los molores de mapa pueden proporcionarse por muchas fuentes diferentes. Cualquier desarrollador que desee construir un motor puede suministrar un motor de mapas que se ajusta a la interfaz de programación. Cada motor de mapas está conectado en el sistema de desarrollo
En el estado 550, la aplicación de detección de localización puede probarse usando unas fuentes de localización reales y/o simuladas. El sistema proporciona un simulador de una fuente de localización de tal manera que la aplicación de detección de localización puede probarse antes de su puesta en el campo. Usar una fuente de datos simulados proporciona a un desarrollador un código de localización basado en eventos para probar la ocurrencia de un evento de localización. Otro uso de los datos de fuente de localización simulada es "reproducir" unos dalos de localización del mundo real grabados anteriormente. Esto es útil para el desarrollo, las pruebas y la depuración de aplicaciones
La figura 6 presenta un diagrama de flujo que muestra una implementación a modo de ejemplo de una infraestructura 600 de detección de localización para seleccionar mapas u otros contenidos basados en localización En un principio, en la operación 602 de adquisición se adquiere una imagen del mapa. La operación 604 indica que la imagen del mapa puede ser cualquier imagen arbitraria adquirida de cualquier fuente. Por ejemplo, la imagen del mapa puede obtenerse de una fuente pre-almacenada (por ejemplo, el módulo 108 de almacenamiento en caché de la figura 1) en el dispositivo móvil que muestra la imagen, o de una fuente externa, si es un dispositivo de memoria extema o descargando la imagen del mapa de una fuente de mapas (por ejemplo, el servidor 124 de contenido de la figura 1) o incluso de otro usuario. La imagen del mapa también puede reproducirse de manera dinámica mediante una imagen de reproducción anterior a su descarga en el dispositivo móvil. Los mapas que se muestran en el dispositivo móvil pueden tener diferentes resoluciones y almacenarse en diversos formatos. Siempre que la señalización y la información de orientación puedan superponerse sobre la imagen del mapa, cualquier mapa arbitrario es aceptable.
En la operación 606 de visualización, al menos una parte de la imagen del mapa adquirida o reproducida dinámicamente se muestra en el dispositivo móvil. Ya que los dispositivos móviles, tales como los teléfonos móviles, localizadores o asistentes digitales personales, tienen por lo general pequeñas pantallas de visualización, no puede mostrarse la imagen del mapa entero_ En algunos casos, si la pantalla es suficientemente grande o el mapa suficientemente pequeño, puede mostrarse toda la imagen del mapa o una parte sustancial de la misma. En el caso de que solo una parte del mapa pueda mostrarse, puede desearse superponer unos elementos de navegación adicionales, por ejemplo, la información direccional o las referencias (en adelante en el presente documento "referencias"), sobre la imagen del mapa. Como alternativa, tales referencias pueden mostrarse junto con cualquier
ES 2 628 208 T3
mapa independientemente de su tamaño, resolución, o exhaustividad.
En una segunda operación 608 de visualización, tales referencias, de hecho, se muestran sobre la imagen del mapa. En una implementación, las referencias pueden superponerse sobre la imagen del mapa, de tal manera que puede verse la relación de las señalizaciones de la geografia circundante. Pueden mostrarse múltiples referencias, o fijas o móviles acerca de la imagen del mapa. En otra implementación, una referencia puede considerarse un anclaje o un objeto de referencia con respecto a olras referencias sobre la imagen del mapa.
En la operación 610 de establecimiento, una vez que se muestra una referencia, puede establecerse un objeto de referencia para anclar esa referencia. Como altemativa, podría establecerse primero el objeto de anclaje y a continuación puede mostrarse la referencia (es decir, las operaciones 608 y 610 podrían cambiar de orden temporal). El objeto de anclaje puede localizarse en cualquier parte de la imagen del mapa, o dentro o fuera de la pantalla de visualización. Como alternativa, si el objeto de anclaje se mueve fuera de la pantalla de visualización, por ejemplo, en el caso de que el usuario cambie de localización o cambie la resolución de la pantalla, puede elegirse un nuevo objeto de anclaje dentro de la zona del mapa en la pantalla de visualización. Anclar la referencia al objeto de anclaje permite que se mantengan ciertas relaciones entre la referencia y el objeto de anclaje. Por ejemplo, pueden determinarse una relación de distancia y una relación direccional entre un objeto de anclaje y una referencia
La relación de anclaje puede mantenerse a pesar de que las referencias y el objeto de anclaje en sí se muevan alrededor, desaparezcan de, o vuelvan a aparecer en la pantalla de visualización. Por ejemplo, el objeto de anclaje puede mostrarse inicialmente en el cenlro de la imagen del mapa con olras referencias rodeando al objeto de anclaje. Cualquier referencia en una localización de la imagen del mapa que no encaja dentro de las dimensiones de la pantalla puede referenciarse por una señalización denlro de las dimensiones de pantalla indicando la localización relativa de la referencia en la parte no vista de la imagen del mapa. Las señalizaciones funcionan para remediar el problema de mantener un mapa a un cierto nivel de particularidad, mientras que se mantiene la información con respecto a las relaciones acerca de los elementos que no encajan en una pantalla a ese nivel de particularidad.
Una vez que el objeto de anclaje está en su lugar, se realiza una determinación en la operación 612 de consulta de si la referencia o el objeto de anclaje están en la pantalla de visualización del dispositivo móvil. Si la respuesta a la operación 612 de consulta es ~sí", es decir, que el objeto de anclaje o la referencia en efecto, encajan dentro de la zona de la pantalla de visualizaciÓfl, entonces el objeto de anclaje o la referencia se muestran en la pantalla en la operación 614 de visualización. El objeto de anclaje y las referencias se muestran siempre y cuando la localización del objeto de anclaje o una referencia específica permanezca dentro de la zona de la imagen del mapa en la pantalla de visualización. Obsérvese que un usuario de un dispositivo móvil puede cambiar la zona de imagen del mapa mostrada o por un acercamiento o por un alejamiento de la imagen del mapa o moviéndose de un lugar físico a otro Por ejemplo, supóngase que un usuario está viendo una imagen del mapa y decide hacer un acercamiento en una parte específica del mapa lejos de donde se muestra una referencia. Si el usuario se acerca lo suficiente, la referencia ya no encajará en la pantalla (es decir, la referencia todavia está localizada sobre la imagen del mapa en si, pero ya no puede mostrarse en una pantalla de dispositivo móvil)
Obsérvese que cuanto mayor sea la resolución de una imagen de mapa creada cuando el usuario del dispositivo móvil hace un acercamiento de la imagen del mapa, más posibilidades hay de que aparezcan señalizaciones adicionales. Además, si la localización del objeto de anclaje está fuera de la pantalla, puede usarse una señalización para apuntar también al objeto de anclaje. En estos escenarios, una operación 616 de mantenimiento mantiene una señalización de la referencia o del objeto de anclaje siempre y cuando esté fuera de la zona visible de la pantalla de visualización. La señalización se enciende o se apaga en función de si la referencia o el objeto de anclaje puede mostrarse o no. Por lo tanto, la infraestructura 600 de detección de localización altema los estados entre las operaciones 614 y 616 como se indica en la figura 6 a medida que cambia la resolución de la imagen del mapa o la localización o la localización del usuario
Además, cuando la infraestructura 600 está en la operación 616 de mantenimiento, puede implementarse una operación 618 de creación opcional. En la operación 618 de creación, se crea una marca de orientación para indicar al usuario la dirección, la distancia yfu otra información sobre las referencias representadas por las señalizaciones. Una marca de orientación puede crearse o de manera automática, tras una solicitud del usuario, o tras alguna otra condición. La marca de orientación puede incluir vectores de dirección correspondientes para ayudar a un usuario a orientarse a sí mismo con respecto a la imagen del mapa
La figura 7 proporciona un detalle adicional con respecto a la operación 616 de mantenimiento de la figura 6 anterior, que se renumera a la operación 702 en la figura 7. En una operación 704 de consulta, se toma una decisión en cuanto a cuál de varios tipos posibles de información disponible se mostrará como parte de la señalización.
Una primera posibilidad se indica en la operación 706, en la que el nombre de la referencia fuera de la pantalla se visualiza como la señalización. Un nombre es simplemente a modo de ejemplo, y otros símbolos de identificación podrían usarse en su lugar, por ejemplo, números o iconos gráficos. Una segunda posibilidad representada en la operación 708 es para indicar la distancia de la referencia al objeto de anclaje. Otras relaciones también podrían mostrarse, tal como una relación temporal entre el objeto de anclaje y la referencia. Una tercera posibilidad representada en la operación 710 es para desarrollar una referencia de orientación. La referencia de orientación
ES 2 628 208 T3
puede usarse para apuntar en la dirección con respecto al objeto de anclaje que el usuario debe mover con el fin de alcanzar la referencia. la referencia de orientación no necesita apuntar exactamente hacia la referencia , es decir, como lo haría un vector, pero puede apuntar sustancialmente en la dirección apropiada
Como alternativa, para una representación más exacta, podría proporcionarse una marca de orientación con vectores para las referencias. La creación de un vector de dirección entre un objeto de anclaje y una referencia se indica en la operación 712 de creación. También puede estar previsto que un vector de dirección permita a un usuario usar el vector para alinearse a si mismo con respecto a una marca de orientación no asociada con la imagen del mapa, por ejemplo, la posición del sol. También puede usarse un vector de dirección para ayudar a clarificar las relaciones especiales entre las referencias señalizadas, las marcas de orientación, y los objetos de anclaje_
Por último, en la operación 714 la actualización, alguna de las relaciones que pueden mostrarse en las señalizaciones pueden actualizarse de manera dinámica. Por lo tanto, las referencias podrian cambiar de nombres si, por ejemplo, una referencia corresponde a un usuario de un dispositivo móvil que proporciona a continuación ese dispositivo móvil a un segundo usuario que será rastreado a través del dispositivo móvil. Ciertamente las referencias de orientación, un vector o de otro modo, los cálculos de distancia necesitan actualizarse a medida que el usuario del dispositivo móvil se mueve sobre la zona definida por la imagen del mapa
Un dispositivo 800 móvi I a modo de ejemplo para su uso dentro del sistema de almacenamiento en caché basado en localización se representa en la figura 8. El dispositivo 800 móvil incluye un procesador 802 y una memoria 804 como en cualquier dispositivo informático convencional. El procesador 802, la memoria 804, y otros componentes que se describen más adelante en el presente documento pueden interconectarse a través de un bus 814 de sistema. El bus 814 de sistema puede ser cualquiera de varios tipos de estructuras de bus incluyendo un bus de memoria o controlador de memoria, un bus periférico, una estructura de conmutación, conexiones punto a punto, y un bus local. La memoria 804 incluye, en general, tanto una memoria volátil (por ejemplo, RAM) como una memoria no volátil (por ejemplo, ROM o una ta~eta PCMCIA). Un sistema 806 operativo puede residir en la memoria 804 y ejecutarse en el procesador 802. Un sistema operativo de ejemplo puede ser el sistema operativo WINDOWS CE de Microsoft Corporation.
Uno o más programas 806 de aplicación pueden cargarse en la memoria 804 para su ejecución por el procesador 802 junto con el sistema 806 operativo. Unas aplicaciones a modo de ejemplo pueden incluir programas de correo electrónico, programas de planificación, programas de gestión de información de personal, programas de procesamiento de textos, programas de hojas de cálculo, programas de navegador de Internet, programas de gestión de archivos de música, y programas de gestión de archivos de vídeo y fotografía. La memooa 804 puede incluir además un gestor 810 de notificaciones, que se ejecuta en el procesador 802. El gestor 810 de notificaciones maneja las solicitudes de notificación desde las aplicaciones 808 a uno o más dispositivos de notificación de usuario como se describe en mayOf detalle a continuación
El dispositivo 800 móvil también tiene una fuente 812 de alimentación, que puede implementarse usando una o más baterías. La fuente 812 de alimentación también puede ser una fuente de CA externa que usa un cable de alimentación o un cable de transferencia de datos alimentado conectado con el dispositivo 800 móvil que anula o recarga las baterías. La fuente 812 de alimentación está conectada a la mayoría, si no todos, de los componentes del dispositivo 800 móvil con el fin de que cada uno de los componentes pueda funcionar
En una realización, el dispositivo 800 móvil puede incluir capacidades de comunicaciones, por ejemplo, el dispositivo 800 móvil funciona como un teléfono inalámbrico. Un dispositivo 800 inalámbrico con capacidades telefónicas, en general, incluye una antena 816, un transmisor 818 y un receptor 820 para interconectarse con una red de telefonía inalámbrica. Además, el dispositivo 800 móvil puede incluir un micrófono 834 y un altavoz 836 con el fin de que un usuario pueda comunicarse telefónicamente. El altavoz 836 puede estar también en la forma de un puerto de salida cableado o inalámbrico para la conexión con un auricular o auriculares cableados o inalámbricos.
El dispositivo 800 móvil puede conectarse con numerosas olras redes, por ejemplo, una red LAN inalámbrica (WiFi), una LAN o WAN cableada, GPRS, Bluetooth, UMTS o cualquier otra red a través de una o más interfaces 822 de comunicaciones. La antena 816 o múltiples antenas pueden usarse para diferentes fines de comunicación, por ejemplo, una identificación por radiofrecuencia (RFID), transmisiones y recepciones de microondas, transmisiones y recepciones WiFi, y transmisiones y recepciones Bluetooth
El dispositivo 800 móvil incluye, además, en general, algún tipo de interfaz de usuario. Como se muestra en la figura
8, el dispositivo 800 móvil puede tener un teclado 824 y una pantalla 826. El teclado 824 puede ser un teclado numérico limitado, un teclado ~qwerty" completo, o una combinación de ambos. El teclado 824 también puede incluir botones especiales, ruedas, bolas de seguimiento, y olras opciones de interfaz, por ejemplo, selección de menú o teclas de navegación o teclas de función del teléfono. Además de representar información, la panta lla 826 puede ser también una pantalla táctil que permite la entrada de datos al tocar la panta lla con el dedo del usua rio o un lápiz táctil para hacer selecciones de enlrada a Iravés de una interfaz gráfica o escribir letras y números directamente en la pantalla 826.
ES 2 628 208 T3
El dispositivo 800 móvil también puede tener uno o más mecanismos de notificación externa. En la realización representada en la figura 8, el dispositivo 800 móvil incluye un generador 828 de audio, un diodo 830 emisor de luz (LEO), y un dispositivo 832 de vibración. Estos dispositivos pueden acoplarse directamente a la fuente 812 de alimerJlación de lal manera que cuando se activan, pueden permanecer alimentados durante elliempo dictado por el gestor 810 de notificaciones, a pesar de que el procesador 802 y otros componentes pueden apagarse para ahorrar energía de la batería
Un hardware a modo de ejemplo y un entorno operativo que puede usarse como el servidor de contenido se representan en la figura 9. Este hardware incluye un dispositivo informático de fin general en la forma de un ordenador 900, que incluye una unidad 902 de procesamiento, una memoria 904 de sistema, y un bus 918 de sistema, que acopla de manera operativa diversos componentes del sistema, incluyendo la memoria 904 de sistema a la unidad 902 de procesamiento. Puede haber solo una unidad 902 de procesamiento o puede haber más de una, de tal manera que el procesador del ordenador 900 comprende una única unidad central de procesamiento (CPU), o una pluralidad de unidades de procesamiento, comúnmente denominado como un entomo de procesamiento en paralelo. El ordenadOf 900 puede ser un ordenador convencional, un ordenadOf distribuido, o cualquier otro tipo de ordenador; la invención no está limitada de este modo.
El bus 918 de sistema puede ser cualquiera de varios tipos de estructuras de bus incluyendo un bus de memoria o un controlador de memOfia, un bus periférico, una estructura de conmutación, conexiones punto a punto, y un bus local que usa cualquiera de una variedad de arquitecturas de bus. La memoria 904 de sistema también puede denominarse simplemente como la memoria, e incluye una memoria 906 de solo lectura (ROM) y una memoria 905 de acceso aleatorio (RAM). Un sistema 908 de entradafsalida básico (BiaS), que contiene las rutinas básicas que ayudan a transferir información entre los elementos dentro del ordenador 900, tal como durante el arranque, se almacena en la ROM 906. El ordenador 900 puede incluir además, una unidad 930 de disco duro para leer de o escribir en un disco duro, no mostrado, una unidad 932 de disco magnético para leer de o escribir en un disco 936 magnético exlraible, y una unidad 934 de disco óptico para leer de o escribir en un disco óptico exlraible 938 tal como un CDROM u otros medios ópticos
La unidad 930 de disco duro, la unidad 932 de disco magnético, y la unidad 934 de disco óptico están conectadas al bus 918 de sistema mediante una interfaz 920 de unidad de disco duro, una interfaz 922 de unidad de disco magnético, y una interfaz 924 de unidad de disco óptico, respectivamente. Las unidades y sus medios legibles por ordenador asociados proporcionan un almacenamiento no volátil de las instrucciones legibles por ordenador, las estructuras de datos, los módulos de programa y otros datos para el ordenador 900. Debería apreciarse por los expertos en la materia que cualquier tipo de medio legible por ordenador que pueda almacenar datos que sean accesibles por un ordenador, por ejemplo, casetes magnéticos, ta~etas de memoria flash, discos de video digitales, memorias RAM y ROM, puede usarse en el entorno operativo a modo de ejemplo.
Un número de módulos de programa pueden almacenarse en el disco 930 duro, el disco 932 magnético, el disco 934 óptico, la ROM 906 o la RAM 90S, incluyendo un sistema 910 operativo, uno o más programas 912 de aplicación, otros módulos 91 4 de programa, y datos 916 de programa. En una implementación a modo de ejemplo, las operaciones de detección de localización y de gestión de mapas pueden incorporarse como parte del sistema 910 operativo, programas 912 de aplicación u otros módulos 914 de programa. Los archivos de descripción de estado, los valores de datos de objetos, y otros datos pueden almacenarse como datos 916 de programa
Un usuario puede introducir comandos e información en el ordenadOf 900 personal a través de dispositivos de entrada tales como un teclado 940 y un dispositivo 942 de señalización, por ejemplo, un ratón. Otros dispositivos de entrada (no mostrados) pueden incluir, por ejemplo, un micrófono, una palanca de mando, un mando para juegos, una tableta, un dispositivo de pantalla táctil, una antena parabólica, un escáner, una máquina de fax, y una cámara de video. Estos y otros dispositivos de entrada están a menudo conectados a la unidad 902 de procesamiento a través de una interfaz 926 de puerto serie que está acoplada al bus 918 de sistema , pero pueden conectarse mediante otras interfaces, tales como un puerto paralelo, un puerto de juegos o un bus serie universal (USB).
Un monitor 944 u otro tipo de dispositivo de visua lización también están conectado al bus 918 de sistema a través de una interfaz, tal como un adaptador 946 de vídeo. Además del monitor 944, los ordenadores incluyen normalmente otros dispositivos de salida periféricos, tales como una impresora 958 y unos altavoces (no mostrados). Estos y otros dispositivos de salida se conectan a menudo a la unidad 902 de procesamiento a través de la interfaz 926 de puerto serie que está acoplada al bus 918 de sistema, pero pueden conectarse mediante otras interfaces, tales como un puerto paralelo, un puerto de juegos o un bus serie universal (USB).
El ordenador 900 puede operar en un entorno de red usando unas conexiones lógicas a uno o más ordenadores remotos, tales como el ordenador 954 remoto. Estas conexiones lógicas pueden conseguirse mediante un dispositivo de comunicación acoplado a o integral con el ordenador 900; la invención no se limita a un tipo específico de dispositivo de comunicaciones. El ordenador 954 remoto puede ser otro ordenador, un servidor, un encaminador, un ordenador personal de red, un cliente, un dispositivo par u otro nodo de red común, y que normalmente incluye muchos o todos los elementos descritos anteriormente con respecto al ordenador 900, aunque solo se haya ilustrado en la figura 9 un dispositivo 956 de almacenamiento de memoria. Las conexiones lógicas representadas en la figura 9 incluyen una red 950 de área local (LAN) y una red 952 de área amplia (WAN). Tales entornos de red son
ES 2 628 208 T3
comunes en las redes de oficinas, las redes de ordenadores de empresa, intranets e Internet, que son todas tipos de redes
Cuando se usa en un entorno de LAN 950, el ordenador 900 puede estar conectado a la red 950 local a través de una interfaz de red o adaptador 928, que es un tipo de dispositivo de comunicaciones. Cuando se usa en un entorno de WAN 952, el ordenador 900 induye nonnalmenle un módem 948, un adaptador de red, o cualquier otro tipo de dispositivo de comunicaciones para establecer las comunicaciones a lo largo de la red 952 de área extensa. El módem 948, que puede ser interno o externo, está conectado al bus 918 del sistema a través de la inleriaz 926 de puerto serie. En un entorno de red, los módulos de programa representados con respecto al ordenador 900 personal, o partes del mismo, pueden almacenarse en un dispositivo de almacenamiento de memoria remoto. Se aprecia que las conexiones de red mostradas son a modo de ejemplo y pueden usarse otros medios y dispositivos de comunicaciones para establecer un enlace de comunicaciones entre los ordenadores.
La tecnologia descrita en el presente documento puede implementarse como operaciones y/o módulos lógicos en uno o más sistemas. Las operaciones lógicas pueden implementarse como una secuencia de etapas implementadas en procesador que se ejecutan en uno o más sistemas informáticos y, como módulos de máquina o circuitos interconectados dentro de uno o más sistemas informáticos. Del mismo modo, pueden proporcionarse las descripciones de diversos módulos de componentes en términos de operaciones ejecutadas o efectuadas por los módulos. La aplicación resultante es una cuestión de elección, en función de los requisitos de rendimiento del sistema subyacente que implementa la tecnologia descrita. Por consiguiente, las operaciones lógicas que componen las realizaciones de la tecnología descrita en el presente documento se denominan diversamente como operaciones, etapas, objetos o módulos. Además, debería entenderse que las operaciones lógicas pueden rea lizarse en cualquier orden, a menos que se reivindique explicitamente lo contrario o un orden especifico sea inherentemente necesario por el lenguaje de las reivindicaciones
La memoria descriptiva anterior, los ejemplos y los datos proporcionan una descripción completa de la estructura y el uso de realizaciones a modo de ejemplo de la invención. Aunque se han descrito anteriormente diversas realizaciones de la invención con un cierto grado de particularidad, o haciendo referencia a una o más realizaciones individuales, los expertos en la materia podrían rea lizar numerosas alteraciones a las realizaciones desveladas sin alejarse del ámbito de esta invención. En particular, debería entenderse que la tecnología descrita puede emplearse independientemente de un ordenador personal. Por lo tanto, se contemplan otras realizaciones de la misma. Se pretende que toda la materia contenida en la descripción anterior y mostrada en los dibujos adjuntos deba interpretarse como ilustrativa de las realizaciones específicas, y no como limitante. Pueden realizarse cambios en los detalles o en la estructura sin alejarse de los elementos básicos de la invención como se define en las siguientes reivindicaciones.
Lista de realizaciones:
1 Un procedimiento para proporcionar dinámicamente un contenido relacionado con localización a un dispositivo
(102) de comunicación móvil, comprendiendo el procedimiento rastrear una localización actual del dispositivo (302) de comunicaciórl móvil; predecir una localización futura del dispositivo (306) de comunicaciórl móvil; determinar si el contenido relacionado con la localización futura se almacena actualmente en el dispositivo (308) de comunicación móvil; y recuperar el contenido de un almacén de contenido a través de una conexión de red tras una determinación de que el contenido no se almacena actualmente en el dispositivo (314) de comunicación móvil.
- 2.
- El procedimiento de la realización 1, que comprende además presentar el contenido a un usuario a través de una interfaz del dispositivo (316) de comunicación móvil
- 3.
- El procedimiento de la realización 2, en el que la interfaz comprende una pantalla (826) de visualización
- 4.
- El procedimiento de la rea lización 1, en el que el contenido comprende un mapa de una zona que contiene la localización (202b) futura del dispositivo (102) de comunicación móvil.
- 5.
- El procedimiento de la realización 1, que comprende además gestionar el almacenamiento del contenido en el dispositivo de comunicación móvil almacenando el contenido en el dispositivo de comunicación móvil cuando el contenido se recupera del almacén de contenido; y purgando el contenido del contenido irrelevante que está menos relacionado con la localización futura del dispositivo de comunicación móvil.
- 6.
- El procedimiento de la realización 1, que comprende además seleccionar el contenido basándose en la información contextual almacenada en el dispositivo de comunicación móvil
- 7.
- El procedimiento de la realización 6, en el que la información contextual comprende una información de preferencia de un usuario del dispositivo de comunicación móvil
- 8.
- El procedimiento de la realización 6, en el que la información contextual comprende una información de estado acerca del dispositivo de comunicación móvil
- 9.
- El procedimiento de la realización 6, en el que la información cootextual comprende una información de movimiento del dispositivo de comunicación móvil
- 10.
- Un medio legible por ordenador que tiene unas instrucciones ejecutables por ordenador para realizar un proced imiento informático que implementa el procedimiento de la realización 1
ES 2 628 208 T3
11 . Un sistema (100) de almacenamiento en caché basado en localización que comprende un dispositivo (102) de comunicación móvil que comprende además
un módulo (104) de determinación de localización que determina una localización actual del dispositivo (102) de comunicación móvil;
un módulo (106) estimador de dirección que estima una localización futura del dispositivo (102) de comunicación móvil;
un contenedor (110) de contenido que almacena el contenido relacionado con la localización futura;
un módulo (114) de gestión de conexión que proporciona conectividad de red al dispositivo (102) de comunicación móvil; y
un módulo (108) de almacenamiento en caché que selecciona el contenido relacionado con la localización futura del contenedor (110) de contenido o una fuente de contenido altemativo externa al dispositivo (102) de comunicación móvil a través del módulo (114) de gestión de conexión; y
un servidor (124) de contenido que proporciona el cootenido relacionado con la localización futura al dispositivo
(102) de comunicación móvil; una red (122) que conecta el dispositivo (102) de comunicación móvil y el servidor (124) de contenido; y una fuente de información (116) de localización actual acerca del dispositivo (102) de comunicación móvil accesible por el dispositivo (102) de comunicación móvil
- 12.
- El sistema (100) de almacenamiento en caché basado en localización de la rea lización 11, en el que el dispositivo (102) de comunicación móvil comprende además una interiaz (824,826) de usuario; y la fuente de información de localización actual comprende unos datos introducidos en el dispositivo (102) de comunicación móvil a través de la interiaz (824, 826) de usuario por un usuario.
- 13.
- El sistema (100) de almacenamiento en caché basado en localización de la rea lización 11, en el que el dispositivo (102) de comunicación móvil comprende además una interiaz (824, 826) de usuario; y el contenido relacionado con la local ización futura se presenta a un usuario a través de la interfaz (824,826) de usuario.
- 14.
- El sistema (100) de almacenamiento en caché basado en localización de la realización 13, en el que el contenido es un mapa (202) y la interfaz de usuario es una panta lla (826) de visua lización.
- 15.
- El sistema (100) de almacenamiento en caché basado en localización de la rea lización 11, en el que la fuente de información de localización actual comprende un servicio (116) de sistema de posicionamiento global; y el dispositivo (102) de comunicación móvil comprende además un receptor de sistema de posicionamiento global.
- 16.
- El sistema (100) de almacenamiento en caché basado en localización de la realización 11, en el que la fuente comprende una recopilación de las señales (118 , 120) de comunicación; y el módulo (104) de determinación de localización en el dispositivo (102) de comunicación móvil está adaptado para triangular una localización actual del dispositivo (102) de comunicación móvil basándose en la recopilación de las sefiales (118, 120) de comunicación.
- 17.
- Un dispositivo (102) de comunicación móvil que proporciona una funcionalidad de almacenamiento en caché basada en loca lización que comprende un módulo (104) de determinación de localización que determina una localización actual del dispositivo (102) de comunicación móvil; un módulo (106) estimador de dirección que estima una localización futura del dispositivo (102) de comunicación móvil; un contenedor (110) de contenido que almacena un contenido relacionado con la localización futura; un módulo (11 4) de gestión de conexión que proporciona conectividad de red al dispositivo (102) de comunicación móvil; y un módulo (108) de almacenam iento en caché que selecciona el contenido relacionado con la localización futura
ES 2 628 208 T3
del contenedor (11 0) de contenido o una fuente de contenido alternativo externa al dispositivo (102) de comunicación móvil a través del módulo (114) de gestión de conexión
- 18.
- El dispositivo (102) de comunicación móvil de la realización 17, que comprende además una interfaz (824, 826) de usuario que presenta el contenido relacionado con la localización futura a un usuario
- 19.
- El dispositivo de comunicación móvil de la realización 18, en el que la interfaz de usuario comprende una pantalla (826) de visualización.
- 20.
- El dispositivo (102) de comunicación móvil de la realización 17, en el que el módulo (104) de determinación de localización está adaptado para triangular la localización actual del dispositivo (102) de comunicación móvil basándose en una recopilación de las señales (118, 120) de comunicación.
Claims (11)
- REIVINDICACIONES1. Un procedimiento para proporcionar dinámicamente un contenido relacionado con localización a un dispositivo(102) de comunicación móvil, comprendiendo el procedimiento rastrear una localización actual del dispositivo (302) de comunicación móvil; predecir una localización futura del dispositivo (306) de comunicación móvil estimando una dirección pOI" la que se moverá el dispositivo de comunicación móvil, calculándose dicha estimación en función de:dicha localización actual del dispositivo de comunicación móvil, una dirección recorrida dentro de un período de tiempo anterior, dependiendo dicho período de una velocidad del dispositivo de comunicación móvil, y la información de contexto ambiental, extrapolándose la información de contexto ambiental en función de unas coordenadas de mapa y la velocidad del dispositivo de informatización móvil,determinar si el contenido relacionado con la localización futura está almacenado actualmente en el dispositivo (308) de comunicaciórJ móvil; recuperar el contenido de un almacén de contenido a través de una conexión de red tras una determinación de que el contenido no está almacenado actualmente en el dispositivo (314) de comunicación móvil; y gestionar el almacenamiento del contenido en el dispositivo de comunicación móvil·almacenando el contenido en el dispositivo de comunicación móvil cuando el contenido se recupera del almacén de contenido; y purgando el contenido del contenido irrelevante que está menos relacionado con la localización futura del dispositivo de comunicación móvil, si una memoria disponible en el dispositivo de comunicación móvil es insuficiente para almacenar el contenido.2 El procedimiento de la reivindicación 1, que comprende además presentar el contenido a un usuario a través de una interfaz del dispositivo (316) de comunicación móvil; y en el que la interfaz comprende una pantalla (826) de visua lización.
-
- 3.
- El procedimiento de la reivindicación 1 o 2, en el que el contenido comprende un mapa de una zona que contiene la localización (202b) futura del dispositivo (102) de comunicación móvil.
-
- 4.
- El procedimiento de una cualquiera de las reivindicaciones 1 a 3, que comprende además seleccionar el contenido basándose en la información contextual almacenada en el dispositivo de comunicación móvil
-
- 5.
- El procedimiento de la reivindicación 4, en el que la información contextual comprende al menos una de entre:
una información de preferencia de un usuario del dispositivo de comunicaciórJ móvil; una información de estado acerca del dispositivo de comunicación móvil; y una información de movimiento del dispositivo de comunicación móvil -
- 6.
- Un medio legible por ordenador que tiene instrucciones ejecutables por ordenador para realizar un procedimiento informático que implementa el procedimiento de una cualquiera de las reivindicaciones 1 a 5
-
- 7.
- Un sistema (100) de almacenamiento en caché basado en localización que comprende un dispositivo (102) de comunicación móvil que comprende además
un módulo (104) de determinación de localización adaptado para determinar una localización actual del dispositivo (102) de comunicación móvil; un módulo (106) estimador de dirección adaptado para estimar una localización futura del dispositivo (102) de comunicación móvil estimando una dirección por la que se moverá el dispositivo de comunicación móvil, calculándose dicha estimación en función de:dicha localización actual del dispositivo de comunicación móvil, una dirección recorrida dentro de un periodo de tiempo anterior, dependiendo dicho período de una velocidad del dispositivo de comunicación móvil, en el que la información de contexto ambiental, extrapolándose la información de contexto ambiental en función de unas coordenadas de mapa y la velocidad del dispositivo de informatización móvil,un contenedor (110) de contenido adaptado para almacenar el contenido relacionado con la localización futura; un módulo (114) de gestión de conexión adaptado para proporcionar conectividad de red al dispositivo (102) de comunicación móvil; un módulo (108) de almacenamiento en caché adaptado para seleccionar el contenido relacionado con la localización futura del contenedor (110) de contenido o una fuente de contenido alternativo externa al dispositivo(102) de comunicación móvil a través del módulo (114) de gestión de conexión, estando el módulo de almacenamiento en caché adaptado para gestionar el almacenamiento del contenido en el dispositivo de comunicación móvil·18ES 2 628 208 T3almacenando el contenido en el dispositivo de comunicación móvil cuando se recupera el contenido; y purgando el contenido del contenido irrelevante que está menos relacionado con la localización futura del dispositivo de comunicación móvil, si una memoria disponible en el dispositivo de comunicación móvil es insuficiente para almacenar el contenido yun servidor (124) de contenido adaptado para proporcionar el contenido relacionado con la localización futura al dispositivo (102) de comunicación móvil; una red (122) que conecta el dispositivo (102) de comunicación móvil y el servidor (124) de contenido; y una fuente de información (116) de loca lización actual acerca del dispositivo (102) de comunicación móvil accesible por el dispositivo (102) de comunicación móvil -
- 8.
- El sistema (100) de almacenamiento en caché basado en localización de la reivindicación 7, en el que el dispositivo (102) de comunicación mó..... il comprende además una interfaz (824, 826) de usuario; y la fuente de información de localización actual comprende los datos introducidos en el dispositivo (102) de comunicación móvil a través de la interfaz (824, 826) de usuario por un usuario.
-
- 9.
- El sistema (100) de almacenamiento en caché basado en localización de la reivindicación 7 u 8, en el que el dispositivo (102) de comunicación móvil comprende además una interfaz (824, 826) de usuario; y el contenido relacionado con la localización futura se presenta a un usuario a través de la interfaz (824, 826) de usuario .
-
- 10.
- El sistema (100) de almacenamiento en caché basado en localización de una cualquiera de las reivindicaciones 7 a 9, en el que la fuente de información de localización actual comprende un servicio (116) de sistema de posicionamiento global; y el dispositivo (102) de comunicación móvil comprende además un receptor de sistema de posicionamiento global.
11 El sistema (100) de almacenamiento en caché basado en localización de una cualquiera de las reivindicaciones 7a 10, en el que la fuente comprende una recopilación de las señales (118, 120) de comunicación; y el módulo (104) de determinación de localización en el dispositivo (102) de comunicación móvil está adaptado para triangular una localización actual del dispositivo (102) de comunicación móvil basándose en la recopilación de las señales (118, 120) de comunicación - 12. Un dispositivo (102) de comunicación móvil que proporciona una funcionalidad de almacenamiento en caché basada en localización que comprende un módulo (104) de determinación de localización adaptado para determinar una localización actual del dispositivo(102) de comunicación móvil; un módulo (106) estimador de dirección adaptado para estimar una localización futura del dispositivo (102) de comunicación móvil estimando una dirección por la que se moverá el dispositivo de comunicación móvil, ca lcu lándose dicha estimación en función de·dicha localización actual del dispositivo de comunicaciórJ móvil, una dirección recorrida dentro de un periodo de tiempo anterior, dependiendo dicho periodo de una velocidad del dispositivo de comunicación móvil, una información de contexto ambiental, extrapolándose la información de contexto ambiental en función de las coordenadas del mapa y la velocidad del dispositivo de informatización móvil, un contenedor (110) de contenido adaptado para almacenar el contenido relacionado con la localización futura; un módulo (114) de gestión de conexión adaptado para proporcionar conectividad de red al dispositivo (102) de comunicación móvil; un módulo (108) de almacenamiento en caché adaptado para seleccionar el contenido relacionado con la localización futura del contenedor (110) de contenido o una fuente de contenido alternativo externa al dispositivo(102) de comunicación móvil a través del módulo (114) de gestión de conexión, yen el que el módulo de almacenamiento en caché está configurado para gestionar el almacenamiento del contenido en el dispositivo de comunicación móvilalmacenando el contenido en el dispositivo de comunicación móvil cuando el contenido se recupera del almacén de contenido; y purgando el contenido del contenido irrelevante que está menos relacionado con la localización futura del dispositivo de comunicación móvil, si una memoria disponible en el dispositivo de comunicación móvil es insuficiente para almacenar el contenido.13 El dispositivo (102) de comunicación móvil de la reivindicación 12, que comprende además una interfaz (824, 826) de usuario que presenta el contenido relacionado con la localización futura a un usuario, y en el que la interfaz de usuario comprende una pantalla (826) de visualización.
- 14. El dispositivo (102) de comunicación móvil de la reivindicación 12 o 13, en el que el módulo (104) de determinación de localización está adaptado para triangular la localización actual del dispositivo (102) de comunicación móvil basándose en una recopilación de las señales (118, 120) de comunicación19
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US375995 | 2006-03-15 | ||
| US11/375,995 US7519470B2 (en) | 2006-03-15 | 2006-03-15 | Location-based caching for mobile devices |
| PCT/US2007/003704 WO2007108869A1 (en) | 2006-03-15 | 2007-02-13 | Location-based caching for mobile devices |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2628208T3 true ES2628208T3 (es) | 2017-08-02 |
Family
ID=38518965
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES07750535.2T Active ES2628208T3 (es) | 2006-03-15 | 2007-02-13 | Almacenamiento en caché basado en localización para dispositivos móviles |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US7519470B2 (es) |
| EP (1) | EP1999977B1 (es) |
| KR (1) | KR101429298B1 (es) |
| CN (1) | CN101405572B (es) |
| ES (1) | ES2628208T3 (es) |
| WO (1) | WO2007108869A1 (es) |
Families Citing this family (265)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8352400B2 (en) | 1991-12-23 | 2013-01-08 | Hoffberg Steven M | Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore |
| US7966078B2 (en) | 1999-02-01 | 2011-06-21 | Steven Hoffberg | Network media appliance system and method |
| WO2006068003A1 (ja) * | 2004-12-24 | 2006-06-29 | Masahiro Izutsu | 携帯情報通信装置、携帯情報通信装置用接続ユニット及び携帯情報通信装置用外部入出力ユニット |
| US20060143080A1 (en) * | 2004-12-29 | 2006-06-29 | Ashutosh Garg | Generating and/or serving dynamic promotional offers such as coupons and advertisements |
| US9041744B2 (en) * | 2005-07-14 | 2015-05-26 | Telecommunication Systems, Inc. | Tiled map display on a wireless device |
| US7634354B2 (en) * | 2005-08-31 | 2009-12-15 | Microsoft Corporation | Location signposting and orientation |
| US7649534B2 (en) * | 2006-02-01 | 2010-01-19 | Microsoft Corporation | Design of arbitrary linear and non-linear maps |
| ATE498109T1 (de) * | 2006-03-31 | 2011-02-15 | Research In Motion Ltd | Verfahren und system zur verteilung von kartographischen inhalt an mobile kommunikationsvorrichtungen |
| EP2013760A4 (en) * | 2006-05-02 | 2010-08-25 | 1020 Inc | COMMUNICATION SYSTEM FOR LOCATION-SPECIFIC CONTENT |
| US9507778B2 (en) | 2006-05-19 | 2016-11-29 | Yahoo! Inc. | Summarization of media object collections |
| US9198084B2 (en) * | 2006-05-26 | 2015-11-24 | Qualcomm Incorporated | Wireless architecture for a traditional wire-based protocol |
| US8185129B2 (en) | 2006-07-07 | 2012-05-22 | Skyhook Wireless, Inc. | System and method of passive and active scanning of WLAN-enabled access points to estimate position of a WLAN positioning device |
| US8577328B2 (en) | 2006-08-21 | 2013-11-05 | Telecommunication Systems, Inc. | Associating metro street address guide (MSAG) validated addresses with geographic map data |
| US20080059424A1 (en) * | 2006-08-28 | 2008-03-06 | Assimakis Tzamaloukas | System and method for locating-based searches and advertising |
| US8280395B2 (en) * | 2006-08-28 | 2012-10-02 | Dash Navigation, Inc. | System and method for updating information using limited bandwidth |
| US8612437B2 (en) * | 2006-08-28 | 2013-12-17 | Blackberry Limited | System and method for location-based searches and advertising |
| US8594702B2 (en) | 2006-11-06 | 2013-11-26 | Yahoo! Inc. | Context server for associating information based on context |
| US7856234B2 (en) | 2006-11-07 | 2010-12-21 | Skyhook Wireless, Inc. | System and method for estimating positioning error within a WLAN-based positioning system |
| US9110903B2 (en) | 2006-11-22 | 2015-08-18 | Yahoo! Inc. | Method, system and apparatus for using user profile electronic device data in media delivery |
| US8402356B2 (en) | 2006-11-22 | 2013-03-19 | Yahoo! Inc. | Methods, systems and apparatus for delivery of media |
| US11496598B2 (en) * | 2006-12-11 | 2022-11-08 | International Business Machines Corporation | Caching data at network processing nodes based on device location |
| US8769099B2 (en) * | 2006-12-28 | 2014-07-01 | Yahoo! Inc. | Methods and systems for pre-caching information on a mobile computing device |
| JP5305598B2 (ja) * | 2007-02-13 | 2013-10-02 | アイシン・エィ・ダブリュ株式会社 | ナビゲーション装置 |
| US9222797B2 (en) * | 2007-04-17 | 2015-12-29 | Esther Abramovich Ettinger | Device, system and method of contact-based routing and guidance |
| WO2008131448A1 (en) * | 2007-04-23 | 2008-10-30 | 1020, Inc. | Content allocation |
| US8645143B2 (en) * | 2007-05-01 | 2014-02-04 | Sensory, Inc. | Systems and methods of performing speech recognition using global positioning (GPS) information |
| US9066199B2 (en) | 2007-06-28 | 2015-06-23 | Apple Inc. | Location-aware mobile device |
| US8385946B2 (en) | 2007-06-28 | 2013-02-26 | Apple Inc. | Disfavored route progressions or locations |
| US8108144B2 (en) | 2007-06-28 | 2012-01-31 | Apple Inc. | Location based tracking |
| US9109904B2 (en) | 2007-06-28 | 2015-08-18 | Apple Inc. | Integration of map services and user applications in a mobile device |
| KR101373008B1 (ko) * | 2007-07-02 | 2014-03-14 | 삼성전자주식회사 | 콘텐츠를 공유하기 위한 무선 단말 장치, 서버 및 그 방법 |
| US8667144B2 (en) * | 2007-07-25 | 2014-03-04 | Qualcomm Incorporated | Wireless architecture for traditional wire based protocol |
| US8555282B1 (en) | 2007-07-27 | 2013-10-08 | Dp Technologies, Inc. | Optimizing preemptive operating system with motion sensing |
| ITMI20071607A1 (it) * | 2007-08-03 | 2009-02-04 | Incard Sa | Metodo per accedere a contenuti multimediali associati a un' area geografica. |
| KR20090020387A (ko) * | 2007-08-23 | 2009-02-26 | 삼성전자주식회사 | 네비게이션 장치에서 이동체의 최적경로를 표시하는 방법및 장치 |
| US8234677B2 (en) * | 2007-09-04 | 2012-07-31 | International Business Machines Corporation | Method and system for selecting and broadcasting audio/video content based on location |
| US8862710B2 (en) | 2007-09-11 | 2014-10-14 | Telecommunication Systems, Inc. | Dynamic configuration of mobile station location services |
| DE102007046284A1 (de) * | 2007-09-27 | 2009-04-09 | Siemens Ag | Verfahren zur Darstellung eines Plans auf einem mobilen Endgerät zu Navigationszwecken |
| US9031939B2 (en) * | 2007-10-03 | 2015-05-12 | Peter Neal Nissen | Media sequencing method to provide location-relevant entertainment |
| US8099238B2 (en) | 2007-11-14 | 2012-01-17 | Telecommunication Systems, Inc. | Stateful, double-buffered dynamic navigation voice prompting |
| US9002344B2 (en) * | 2007-12-05 | 2015-04-07 | Microsoft Technology Licensing, Llc | Phone content service |
| US8069142B2 (en) | 2007-12-06 | 2011-11-29 | Yahoo! Inc. | System and method for synchronizing data on a network |
| US8671154B2 (en) | 2007-12-10 | 2014-03-11 | Yahoo! Inc. | System and method for contextual addressing of communications on a network |
| US8307029B2 (en) | 2007-12-10 | 2012-11-06 | Yahoo! Inc. | System and method for conditional delivery of messages |
| US8166168B2 (en) | 2007-12-17 | 2012-04-24 | Yahoo! Inc. | System and method for disambiguating non-unique identifiers using information obtained from disparate communication channels |
| WO2009080065A1 (en) * | 2007-12-20 | 2009-07-02 | Tom Tom International B.V. | Improved navigation device and method |
| KR100907613B1 (ko) * | 2007-12-26 | 2009-07-14 | 에스케이 텔레콤주식회사 | 부가콘텐츠를 제공하는 콘텐츠 제공 서버, 시스템 및 방법 |
| US8521430B2 (en) | 2007-12-28 | 2013-08-27 | Navteq B.V. | Managing differences between geographic database versions |
| US9706345B2 (en) | 2008-01-04 | 2017-07-11 | Excalibur Ip, Llc | Interest mapping system |
| US9626685B2 (en) | 2008-01-04 | 2017-04-18 | Excalibur Ip, Llc | Systems and methods of mapping attention |
| US8762285B2 (en) | 2008-01-06 | 2014-06-24 | Yahoo! Inc. | System and method for message clustering |
| US20090177393A1 (en) * | 2008-01-07 | 2009-07-09 | Simone Francine Tertoolen | Navigation device and method |
| US20090182618A1 (en) | 2008-01-16 | 2009-07-16 | Yahoo! Inc. | System and Method for Word-of-Mouth Advertising |
| US8206222B2 (en) * | 2008-01-29 | 2012-06-26 | Gary Stephen Shuster | Entertainment system for performing human intelligence tasks |
| US8560390B2 (en) | 2008-03-03 | 2013-10-15 | Yahoo! Inc. | Method and apparatus for social network marketing with brand referral |
| US8554623B2 (en) | 2008-03-03 | 2013-10-08 | Yahoo! Inc. | Method and apparatus for social network marketing with consumer referral |
| US8538811B2 (en) | 2008-03-03 | 2013-09-17 | Yahoo! Inc. | Method and apparatus for social network marketing with advocate referral |
| US8745133B2 (en) | 2008-03-28 | 2014-06-03 | Yahoo! Inc. | System and method for optimizing the storage of data |
| US8589486B2 (en) | 2008-03-28 | 2013-11-19 | Yahoo! Inc. | System and method for addressing communications |
| US8271506B2 (en) | 2008-03-31 | 2012-09-18 | Yahoo! Inc. | System and method for modeling relationships between entities |
| US8811294B2 (en) * | 2008-04-04 | 2014-08-19 | Qualcomm Incorporated | Apparatus and methods for establishing client-host associations within a wireless network |
| US8428869B2 (en) * | 2008-04-07 | 2013-04-23 | Telecommunication Systems, Inc. | Context enabled address selection |
| EP2439493A1 (en) * | 2008-05-09 | 2012-04-11 | Research in Motion Limited | Predictive downloading of map data |
| US9250092B2 (en) * | 2008-05-12 | 2016-02-02 | Apple Inc. | Map service with network-based query for search |
| US9200901B2 (en) | 2008-06-19 | 2015-12-01 | Microsoft Technology Licensing, Llc | Predictive services for devices supporting dynamic direction information |
| US8700301B2 (en) | 2008-06-19 | 2014-04-15 | Microsoft Corporation | Mobile computing devices, architecture and user interfaces based on dynamic direction information |
| US8467991B2 (en) | 2008-06-20 | 2013-06-18 | Microsoft Corporation | Data services based on gesture and location information of device |
| US8996332B2 (en) | 2008-06-24 | 2015-03-31 | Dp Technologies, Inc. | Program setting adjustments based on activity identification |
| US8103441B2 (en) | 2008-06-26 | 2012-01-24 | Microsoft Corporation | Caching navigation content for intermittently connected devices |
| US8452855B2 (en) | 2008-06-27 | 2013-05-28 | Yahoo! Inc. | System and method for presentation of media related to a context |
| US8706406B2 (en) | 2008-06-27 | 2014-04-22 | Yahoo! Inc. | System and method for determination and display of personalized distance |
| US8813107B2 (en) | 2008-06-27 | 2014-08-19 | Yahoo! Inc. | System and method for location based media delivery |
| US8086700B2 (en) | 2008-07-29 | 2011-12-27 | Yahoo! Inc. | Region and duration uniform resource identifiers (URI) for media objects |
| US8583668B2 (en) | 2008-07-30 | 2013-11-12 | Yahoo! Inc. | System and method for context enhanced mapping |
| US10230803B2 (en) | 2008-07-30 | 2019-03-12 | Excalibur Ip, Llc | System and method for improved mapping and routing |
| US8386506B2 (en) | 2008-08-21 | 2013-02-26 | Yahoo! Inc. | System and method for context enhanced messaging |
| US8281027B2 (en) | 2008-09-19 | 2012-10-02 | Yahoo! Inc. | System and method for distributing media related to a location |
| US20100076680A1 (en) * | 2008-09-24 | 2010-03-25 | Xanavi Informatics Corporation | Vehicle navigation system with intersection database |
| US9600484B2 (en) | 2008-09-30 | 2017-03-21 | Excalibur Ip, Llc | System and method for reporting and analysis of media consumption data |
| US8108778B2 (en) | 2008-09-30 | 2012-01-31 | Yahoo! Inc. | System and method for context enhanced mapping within a user interface |
| US9159238B2 (en) * | 2008-10-02 | 2015-10-13 | Microsoft Technology Licensing, LLP | Location-aware selection of public transportation |
| US8594627B2 (en) | 2008-10-06 | 2013-11-26 | Telecommunications Systems, Inc. | Remotely provisioned wirelessly proxy |
| EP2338028A4 (en) | 2008-10-06 | 2012-11-14 | Telecomm Systems Inc | PROBABILISTIC REVERSE GEOCODING |
| US9285239B2 (en) * | 2008-10-07 | 2016-03-15 | Telecommunication Systems, Inc. | User interface for content channel HUD (heads-up display) and channel sets for location-based maps |
| US9200913B2 (en) * | 2008-10-07 | 2015-12-01 | Telecommunication Systems, Inc. | User interface for predictive traffic |
| WO2010042173A1 (en) * | 2008-10-07 | 2010-04-15 | Telecommunication Systems, Inc. | User interface for dynamic user-defined stopovers during guided navigation ("side trips") |
| US20100088018A1 (en) * | 2008-10-08 | 2010-04-08 | Kevin Tsurutome | Glance ahead navigation |
| CN101726304A (zh) * | 2008-10-10 | 2010-06-09 | 深圳富泰宏精密工业有限公司 | 导航图资下载系统及方法 |
| US20100121563A1 (en) * | 2008-11-07 | 2010-05-13 | International Business Machines Corporation | Real-time personal device transit information presentment |
| US8156068B2 (en) * | 2008-11-13 | 2012-04-10 | Telecommunication Systems, Inc. | Predictive ephemeral points-of-interest (PEPOI) |
| US8060492B2 (en) | 2008-11-18 | 2011-11-15 | Yahoo! Inc. | System and method for generation of URL based context queries |
| US8032508B2 (en) | 2008-11-18 | 2011-10-04 | Yahoo! Inc. | System and method for URL based query for retrieving data related to a context |
| US8024317B2 (en) | 2008-11-18 | 2011-09-20 | Yahoo! Inc. | System and method for deriving income from URL based context queries |
| US9805123B2 (en) | 2008-11-18 | 2017-10-31 | Excalibur Ip, Llc | System and method for data privacy in URL based context queries |
| US9224172B2 (en) | 2008-12-02 | 2015-12-29 | Yahoo! Inc. | Customizable content for distribution in social networks |
| US8055675B2 (en) | 2008-12-05 | 2011-11-08 | Yahoo! Inc. | System and method for context based query augmentation |
| US9398089B2 (en) | 2008-12-11 | 2016-07-19 | Qualcomm Incorporated | Dynamic resource sharing among multiple wireless devices |
| GB2466225B (en) | 2008-12-15 | 2013-10-02 | King S College London | Inter-access network handover |
| US8166016B2 (en) | 2008-12-19 | 2012-04-24 | Yahoo! Inc. | System and method for automated service recommendations |
| TW201024675A (en) * | 2008-12-23 | 2010-07-01 | Mitac Int Corp | Electronic map update system and method thereof |
| US8391895B2 (en) * | 2008-12-23 | 2013-03-05 | Motorola Mobility Llc | Method and apparatus for providing location-based information |
| US20100185518A1 (en) * | 2009-01-21 | 2010-07-22 | Yahoo! Inc. | Interest-based activity marketing |
| US20100205321A1 (en) * | 2009-02-12 | 2010-08-12 | Qualcomm Incorporated | Negotiable and adaptable periodic link status monitoring |
| US8102849B2 (en) | 2009-02-12 | 2012-01-24 | Qualcomm, Incorporated | Association procedure to enable multiple multicast streams |
| US20110307576A1 (en) * | 2009-02-23 | 2011-12-15 | Pioneer Corporation | Content transmitting apparatus, content output system, transmission control method, transmission control program, and recording medium |
| US8849570B2 (en) * | 2009-03-19 | 2014-09-30 | Microsoft Corporation | Projected way-finding |
| US20100241987A1 (en) * | 2009-03-19 | 2010-09-23 | Microsoft Corporation | Tear-Drop Way-Finding User Interfaces |
| US20100241999A1 (en) * | 2009-03-19 | 2010-09-23 | Microsoft Corporation | Canvas Manipulation Using 3D Spatial Gestures |
| US8121640B2 (en) | 2009-03-19 | 2012-02-21 | Microsoft Corporation | Dual module portable devices |
| US8150967B2 (en) | 2009-03-24 | 2012-04-03 | Yahoo! Inc. | System and method for verified presence tracking |
| US8433296B2 (en) | 2009-05-01 | 2013-04-30 | Ryan Hardin | Exclusive delivery of content within geographic areas |
| US8903653B2 (en) * | 2009-06-23 | 2014-12-02 | Uniloc Luxembourg S.A. | System and method for locating network nodes |
| US9264248B2 (en) * | 2009-07-02 | 2016-02-16 | Qualcomm Incorporated | System and method for avoiding and resolving conflicts in a wireless mobile display digital interface multicast environment |
| US8872767B2 (en) | 2009-07-07 | 2014-10-28 | Microsoft Corporation | System and method for converting gestures into digital graffiti |
| US8022877B2 (en) | 2009-07-16 | 2011-09-20 | Skyhook Wireless, Inc. | Systems and methods for using a satellite positioning system to detect moved WLAN access points |
| US8838080B2 (en) * | 2009-07-23 | 2014-09-16 | Qualcomm Incorporated | Methods and apparatus for context-based communications through visualization |
| JP5408256B2 (ja) * | 2009-07-23 | 2014-02-05 | 日本電気株式会社 | ソフトウェア出力先処理端末、ソフトウェア出力先処理方法、プログラム及びソフトウェア出力先処理システム |
| US9104695B1 (en) | 2009-07-27 | 2015-08-11 | Palantir Technologies, Inc. | Geotagging structured data |
| US20110029670A1 (en) * | 2009-07-31 | 2011-02-03 | Microsoft Corporation | Adapting pushed content delivery based on predictiveness |
| US10223701B2 (en) | 2009-08-06 | 2019-03-05 | Excalibur Ip, Llc | System and method for verified monetization of commercial campaigns |
| US8914342B2 (en) | 2009-08-12 | 2014-12-16 | Yahoo! Inc. | Personal data platform |
| US8364611B2 (en) | 2009-08-13 | 2013-01-29 | Yahoo! Inc. | System and method for precaching information on a mobile device |
| US8831624B2 (en) * | 2009-10-30 | 2014-09-09 | Unwired Planet, Llc | Back-channeled packeted data |
| KR101055665B1 (ko) * | 2009-11-06 | 2011-08-09 | 국방과학연구소 | 네트워크 기반 훈련을 위한 함정전투체계의 훈련시스템 및 그 운용방법 |
| US9582238B2 (en) * | 2009-12-14 | 2017-02-28 | Qualcomm Incorporated | Decomposed multi-stream (DMS) techniques for video display systems |
| US8564596B2 (en) * | 2010-01-12 | 2013-10-22 | Palantir Technologies, Inc. | Techniques for density mapping |
| US9157745B2 (en) * | 2010-01-14 | 2015-10-13 | Qualcomm Incorporated | Scalable routing for mobile station navigation with location context identifier |
| US8356049B2 (en) * | 2010-02-26 | 2013-01-15 | Panasonic Corporation | Landmark search apparatus, electronic apparatus and imaging apparatus having the same, and landmark search method |
| US20120317066A1 (en) * | 2010-03-16 | 2012-12-13 | Nec Corporation | Interest level measurement system, interest level measurement device, interest level measurement method, and interest level measurement program |
| DE102010012153A1 (de) * | 2010-03-20 | 2011-09-22 | Audi Ag | Fahrzeug mit zumindest zwei Einzelradantriebseinheit |
| US8606297B1 (en) | 2010-03-24 | 2013-12-10 | Grindr LLC | Systems and methods for providing location-based cascading displays |
| EP2388746A1 (en) * | 2010-05-20 | 2011-11-23 | Research In Motion Limited | Pre-caching location based advertising for repeated out of coverage scenarios based on commuter or regular travel patterns |
| US20110288936A1 (en) * | 2010-05-20 | 2011-11-24 | Research In Motion Limited | Pre-Caching Location Based Advertising for Repeated Out Of Coverage Scenarios Based On Commuter or Regular Travel Patterns |
| US8694252B2 (en) * | 2010-06-02 | 2014-04-08 | Mitac International Corp. | Personal navigation device which provides portable electronic map and related navigating method |
| CN101895574B (zh) * | 2010-07-09 | 2012-12-19 | 苏州市数字城市工程研究中心有限公司 | 一种空间信息网络动态自主加载技术方案和系统 |
| US9275542B2 (en) * | 2010-07-30 | 2016-03-01 | Hewlett Packard Enterprise Development Lp | Location-indexed audio content |
| CN102346822B (zh) * | 2010-08-06 | 2015-02-25 | 爱国者电子科技有限公司 | 可追踪的移动存储装置、系统和追踪方法 |
| US8498817B1 (en) | 2010-09-17 | 2013-07-30 | Amazon Technologies, Inc. | Predicting location of a mobile user |
| FR2965065A1 (fr) * | 2010-09-21 | 2012-03-23 | Third Millennium Marketing | Systeme et procede de localisation geographique en zone d'ombre |
| US8788762B2 (en) * | 2010-09-30 | 2014-07-22 | Nokia Corporation | Methods and apparatuses for data resource provision |
| WO2012072115A1 (en) * | 2010-11-30 | 2012-06-07 | Tomtom International B.V. | Navigation methods and systems |
| US8319679B2 (en) * | 2010-12-16 | 2012-11-27 | Honeywell International Inc. | Systems and methods for predicting locations of weather relative to an aircraft |
| US9065876B2 (en) | 2011-01-21 | 2015-06-23 | Qualcomm Incorporated | User input back channel from a wireless sink device to a wireless source device for multi-touch gesture wireless displays |
| US8964783B2 (en) | 2011-01-21 | 2015-02-24 | Qualcomm Incorporated | User input back channel for wireless displays |
| US20130013318A1 (en) | 2011-01-21 | 2013-01-10 | Qualcomm Incorporated | User input back channel for wireless displays |
| US9787725B2 (en) | 2011-01-21 | 2017-10-10 | Qualcomm Incorporated | User input back channel for wireless displays |
| US9413803B2 (en) | 2011-01-21 | 2016-08-09 | Qualcomm Incorporated | User input back channel for wireless displays |
| US10135900B2 (en) | 2011-01-21 | 2018-11-20 | Qualcomm Incorporated | User input back channel for wireless displays |
| JP6032692B2 (ja) * | 2011-01-26 | 2016-11-30 | 株式会社ソニー・インタラクティブエンタテインメント | 情報処理システム、情報処理システムの制御方法、プログラム及び情報記憶媒体 |
| US9503771B2 (en) | 2011-02-04 | 2016-11-22 | Qualcomm Incorporated | Low latency wireless display for graphics |
| US10108386B2 (en) | 2011-02-04 | 2018-10-23 | Qualcomm Incorporated | Content provisioning for wireless back channel |
| US8674957B2 (en) | 2011-02-04 | 2014-03-18 | Qualcomm Incorporated | User input device for wireless back channel |
| ES2401228B1 (es) * | 2011-03-01 | 2014-05-05 | Telefónica, S.A. | Método para localización móvil en una red inalámbrica que ofrece servicios basados en localización |
| KR20120105606A (ko) * | 2011-03-11 | 2012-09-26 | 경희대학교 산학협력단 | 사용자 검색 포트폴리오와 현실공간 위치에 기반한 서비스/재화 모니터링 및 푸쉬 서비스 시스템과 그 방법 |
| US8948794B2 (en) | 2011-03-14 | 2015-02-03 | Nokia Corporation | Methods and apparatuses for facilitating provision of a map resource |
| JP5821239B2 (ja) * | 2011-03-31 | 2015-11-24 | 日本電気株式会社 | 携帯装置、アプリケーション起動方法、およびプログラム |
| US20140032702A1 (en) * | 2011-04-22 | 2014-01-30 | Nec Corporation | Content distribution system, control apparatus, and content distribution method |
| US20120295632A1 (en) * | 2011-05-18 | 2012-11-22 | Sony Ericsson Mobile Communications Ab | Indoor map distribution |
| US8886743B2 (en) | 2011-08-30 | 2014-11-11 | Open Text S.A. | System and method of browsing offline and queried content |
| US8280414B1 (en) * | 2011-09-26 | 2012-10-02 | Google Inc. | Map tile data pre-fetching based on mobile device generated event analysis |
| US10341693B2 (en) | 2011-10-04 | 2019-07-02 | International Business Machines Corporation | Pre-emptive content caching in mobile networks |
| US11252690B2 (en) | 2011-10-11 | 2022-02-15 | Match Group, Llc | System and method for matching using location information |
| US8706413B2 (en) * | 2011-10-17 | 2014-04-22 | Qualcomm Incorporated | Determining a likelihood of a directional transition at a junction in an encoded routability graph description |
| US10637820B2 (en) | 2011-10-21 | 2020-04-28 | Uniloc 2017 Llc | Local area social networking |
| US9063951B1 (en) * | 2011-11-16 | 2015-06-23 | Google Inc. | Pre-fetching map data based on a tile budget |
| KR101822622B1 (ko) * | 2011-12-12 | 2018-01-26 | 현대엠엔소프트 주식회사 | 실내외 경로가 연계된 목적지 탐색 방법 및 사용자 단말 |
| TWI426236B (zh) * | 2011-12-16 | 2014-02-11 | Univ Nat Chiao Tung | 高複雜度運輸地圖在有限空間中之顯像方法 |
| ITTO20111243A1 (it) * | 2011-12-30 | 2013-07-01 | Magneti Marelli Spa | Sistema e procedimento per la stima del percorso stradale piu'probabile per un veicolo in marcia |
| US9525998B2 (en) | 2012-01-06 | 2016-12-20 | Qualcomm Incorporated | Wireless display with multiscreen service |
| US9144008B2 (en) | 2012-01-15 | 2015-09-22 | Google Inc. | Providing hotspots to user devices within server-controlled zones |
| JP2015509630A (ja) * | 2012-02-24 | 2015-03-30 | エルジー エレクトロニクス インコーポレイティド | 位置ベースの無要求ダウンロード方法、装置及びシステム |
| CN103843384B (zh) | 2012-02-24 | 2017-10-10 | 英派尔科技开发有限公司 | 基于地理定位的负载平衡 |
| US20130252636A1 (en) * | 2012-03-21 | 2013-09-26 | John Chang | Hot Spot Detection |
| US9369845B2 (en) | 2012-03-23 | 2016-06-14 | Skyhook Wireless, Inc. | Methods and systems of assigning estimated positions and attributes to wireless access points in a positioning system |
| US9081079B2 (en) | 2012-05-02 | 2015-07-14 | Qualcomm Incorporated | Adaptive updating of indoor navigation assistance data for use by a mobile device |
| US20130318182A1 (en) * | 2012-05-25 | 2013-11-28 | Prasasth Reddy Palnati | Targeted location-based messaging |
| US9769604B2 (en) * | 2012-08-22 | 2017-09-19 | Ebay Inc. | Passive dynamic geofencing for mobile devices |
| US9691088B2 (en) | 2012-08-24 | 2017-06-27 | Google Inc. | Ordering ahead with a mobile device |
| US9058324B2 (en) * | 2012-09-28 | 2015-06-16 | Intel Corporation | Predictive precaching of data based on context |
| US9124795B2 (en) * | 2012-10-26 | 2015-09-01 | Nokia Technologies Oy | Method and apparatus for obtaining an image associated with a location of a mobile terminal |
| US9104838B2 (en) | 2012-11-14 | 2015-08-11 | Google Inc. | Client token storage for cross-site request forgery protection |
| JP5276746B1 (ja) * | 2012-11-21 | 2013-08-28 | オーシャンズ株式会社 | 地図を利用した情報共有システム |
| US20140172571A1 (en) * | 2012-12-19 | 2014-06-19 | Google Inc. | Selecting content items based on geopositioning samples |
| US9501507B1 (en) | 2012-12-27 | 2016-11-22 | Palantir Technologies Inc. | Geo-temporal indexing and searching |
| AU2013100243B4 (en) | 2012-12-28 | 2013-09-26 | Uniloc Usa, Inc. | Pedestrian traffic monitoring and analysis |
| US9380431B1 (en) | 2013-01-31 | 2016-06-28 | Palantir Technologies, Inc. | Use of teams in a mobile application |
| US9330471B2 (en) * | 2013-02-14 | 2016-05-03 | Qualcomm Incorporated | Camera aided motion direction and speed estimation |
| US20140248908A1 (en) | 2013-03-01 | 2014-09-04 | Uniloc Luxembourg S.A. | Pedestrian traffic monitoring and analysis |
| US9341479B2 (en) | 2013-03-05 | 2016-05-17 | Google Inc. | Configurable point of interest alerts |
| US8855999B1 (en) | 2013-03-15 | 2014-10-07 | Palantir Technologies Inc. | Method and system for generating a parser and parsing complex data |
| US8930897B2 (en) | 2013-03-15 | 2015-01-06 | Palantir Technologies Inc. | Data integration tool |
| US9121719B2 (en) * | 2013-03-15 | 2015-09-01 | Abalta Technologies, Inc. | Vehicle range projection |
| US8903717B2 (en) | 2013-03-15 | 2014-12-02 | Palantir Technologies Inc. | Method and system for generating a parser and parsing complex data |
| US9906608B2 (en) | 2013-04-30 | 2018-02-27 | International Business Machines Corporation | Intelligent adaptation of mobile applications based on constraints and contexts |
| US8799799B1 (en) | 2013-05-07 | 2014-08-05 | Palantir Technologies Inc. | Interactive geospatial map |
| US8755824B1 (en) | 2013-06-28 | 2014-06-17 | Google Inc. | Clustering geofence-based alerts for mobile devices |
| US20150019625A1 (en) * | 2013-07-09 | 2015-01-15 | Google Inc. | Providing indoor map data to a client computing device |
| US10116697B2 (en) * | 2013-09-20 | 2018-10-30 | Open Text Sa Ulc | System and method for geofencing |
| EP2851833B1 (en) | 2013-09-20 | 2017-07-12 | Open Text S.A. | Application Gateway Architecture with Multi-Level Security Policy and Rule Promulgations |
| US10824756B2 (en) | 2013-09-20 | 2020-11-03 | Open Text Sa Ulc | Hosted application gateway architecture with multi-level security policy and rule promulgations |
| US8938686B1 (en) | 2013-10-03 | 2015-01-20 | Palantir Technologies Inc. | Systems and methods for analyzing performance of an entity |
| US8924872B1 (en) | 2013-10-18 | 2014-12-30 | Palantir Technologies Inc. | Overview user interface of emergency call data of a law enforcement agency |
| US9021384B1 (en) | 2013-11-04 | 2015-04-28 | Palantir Technologies Inc. | Interactive vehicle information map |
| US8868537B1 (en) | 2013-11-11 | 2014-10-21 | Palantir Technologies, Inc. | Simple web search |
| US9432478B2 (en) | 2013-11-27 | 2016-08-30 | At&T Intellectual Property I, L.P. | Client-side location aware network selection |
| CN104811423B (zh) * | 2014-01-24 | 2019-03-01 | 腾讯科技(深圳)有限公司 | 位置信息的共享方法和装置 |
| US9986375B2 (en) | 2014-02-12 | 2018-05-29 | Google Llc | Energy-efficient location determination |
| US10113879B2 (en) | 2014-03-03 | 2018-10-30 | Apple Inc. | Hierarchy of tools for navigation |
| DE102015203261A1 (de) * | 2014-03-03 | 2015-09-03 | Apple Inc. | Kartenanwendung mit verbesserten Navigationswerkzeugen |
| US9727376B1 (en) | 2014-03-04 | 2017-08-08 | Palantir Technologies, Inc. | Mobile tasks |
| US9436584B2 (en) * | 2014-03-13 | 2016-09-06 | Ronnie Guha Guha | SaaS platform for geo-location simulation |
| US9078098B1 (en) | 2014-06-04 | 2015-07-07 | Grandios Technologies, Llc | Geo-fencing based functions |
| US9516467B1 (en) * | 2014-06-04 | 2016-12-06 | Grandios Technologies, Llc | Mobile device applications associated with geo-locations |
| US20150370903A1 (en) * | 2014-06-23 | 2015-12-24 | Google Inc. | Delivering Personalized Information |
| US9129219B1 (en) | 2014-06-30 | 2015-09-08 | Palantir Technologies, Inc. | Crime risk forecasting |
| KR102428319B1 (ko) * | 2014-12-24 | 2022-08-02 | 주식회사 케이티 | 고객 정보 제공 방법, 장치 및 컴퓨터 프로그램 |
| US10372879B2 (en) | 2014-12-31 | 2019-08-06 | Palantir Technologies Inc. | Medical claims lead summary report generation |
| US9891808B2 (en) | 2015-03-16 | 2018-02-13 | Palantir Technologies Inc. | Interactive user interfaces for location-based data analysis |
| US9331712B1 (en) * | 2015-05-11 | 2016-05-03 | Qualcomm Incorporated | Compressed caching in a virtual memory system |
| US9460175B1 (en) | 2015-06-03 | 2016-10-04 | Palantir Technologies Inc. | Server implemented geographic information system with graphical interface |
| US9600146B2 (en) | 2015-08-17 | 2017-03-21 | Palantir Technologies Inc. | Interactive geospatial map |
| US10706434B1 (en) | 2015-09-01 | 2020-07-07 | Palantir Technologies Inc. | Methods and systems for determining location information |
| US9639580B1 (en) | 2015-09-04 | 2017-05-02 | Palantir Technologies, Inc. | Computer-implemented systems and methods for data management and visualization |
| US11593075B2 (en) | 2015-11-03 | 2023-02-28 | Open Text Sa Ulc | Streamlined fast and efficient application building and customization systems and methods |
| US9930134B2 (en) | 2015-11-25 | 2018-03-27 | International Business Machines Corporation | File replication on location-aware devices |
| US10109094B2 (en) | 2015-12-21 | 2018-10-23 | Palantir Technologies Inc. | Interface to index and display geospatial data |
| EP3411843A1 (en) * | 2016-02-01 | 2018-12-12 | Piksel, Inc. | Monitoring streaming related to connectivity |
| US11388037B2 (en) | 2016-02-25 | 2022-07-12 | Open Text Sa Ulc | Systems and methods for providing managed services |
| US9992628B2 (en) | 2016-04-21 | 2018-06-05 | Microsoft Technology Licensing, Llc | Map downloading based on user's future location |
| US10299074B2 (en) | 2016-05-09 | 2019-05-21 | Microsoft Technology Licensing, Llc | Offline map download |
| US10068199B1 (en) | 2016-05-13 | 2018-09-04 | Palantir Technologies Inc. | System to catalogue tracking data |
| US10051426B2 (en) * | 2016-07-27 | 2018-08-14 | International Business Machines Corporation | Proactive caching |
| US20180164109A1 (en) * | 2016-07-29 | 2018-06-14 | Faraday&Future Inc. | Dynamic map pre-loading in vehicles |
| DE102016214156A1 (de) * | 2016-08-01 | 2018-02-01 | Continental Teves Ag & Co. Ohg | Verfahren zum Senden von Daten von einem Fahrzeug an einen Server und Verfahren zum Aktualisieren einer Karte |
| US9686357B1 (en) | 2016-08-02 | 2017-06-20 | Palantir Technologies Inc. | Mapping content delivery |
| US10437840B1 (en) | 2016-08-19 | 2019-10-08 | Palantir Technologies Inc. | Focused probabilistic entity resolution from multiple data sources |
| JP6343316B2 (ja) * | 2016-09-16 | 2018-06-13 | パナソニック株式会社 | 端末装置、通信システム、および通信制御方法 |
| US10515433B1 (en) | 2016-12-13 | 2019-12-24 | Palantir Technologies Inc. | Zoom-adaptive data granularity to achieve a flexible high-performance interface for a geospatial mapping system |
| US10270727B2 (en) | 2016-12-20 | 2019-04-23 | Palantir Technologies, Inc. | Short message communication within a mobile graphical map |
| US10460602B1 (en) | 2016-12-28 | 2019-10-29 | Palantir Technologies Inc. | Interactive vehicle information mapping system |
| US10579239B1 (en) | 2017-03-23 | 2020-03-03 | Palantir Technologies Inc. | Systems and methods for production and display of dynamically linked slide presentations |
| US11334216B2 (en) | 2017-05-30 | 2022-05-17 | Palantir Technologies Inc. | Systems and methods for visually presenting geospatial information |
| US10895946B2 (en) | 2017-05-30 | 2021-01-19 | Palantir Technologies Inc. | Systems and methods for using tiled data |
| US10403011B1 (en) | 2017-07-18 | 2019-09-03 | Palantir Technologies Inc. | Passing system with an interactive user interface |
| CN107450860B (zh) * | 2017-08-15 | 2020-05-08 | 湖南安存科技有限公司 | 一种基于分布式存储的地图文件预读方法 |
| CN110692075A (zh) * | 2017-11-09 | 2020-01-14 | 谷歌有限责任公司 | 按需位置访问转换度量 |
| CN107889053B (zh) * | 2017-11-10 | 2019-10-11 | 南京大学 | 一种基于网络环境预测的视频预加载方法 |
| US10371537B1 (en) | 2017-11-29 | 2019-08-06 | Palantir Technologies Inc. | Systems and methods for flexible route planning |
| US11599706B1 (en) | 2017-12-06 | 2023-03-07 | Palantir Technologies Inc. | Systems and methods for providing a view of geospatial information |
| US10698756B1 (en) | 2017-12-15 | 2020-06-30 | Palantir Technologies Inc. | Linking related events for various devices and services in computer log files on a centralized server |
| US10896234B2 (en) | 2018-03-29 | 2021-01-19 | Palantir Technologies Inc. | Interactive geographical map |
| US10830599B2 (en) | 2018-04-03 | 2020-11-10 | Palantir Technologies Inc. | Systems and methods for alternative projections of geographical information |
| US11585672B1 (en) | 2018-04-11 | 2023-02-21 | Palantir Technologies Inc. | Three-dimensional representations of routes |
| US10429197B1 (en) | 2018-05-29 | 2019-10-01 | Palantir Technologies Inc. | Terrain analysis for automatic route determination |
| US11044078B2 (en) | 2018-09-20 | 2021-06-22 | International Business Machines Corporation | Transient management of data encryption and authentication |
| US10467435B1 (en) | 2018-10-24 | 2019-11-05 | Palantir Technologies Inc. | Approaches for managing restrictions for middleware applications |
| US11025672B2 (en) | 2018-10-25 | 2021-06-01 | Palantir Technologies Inc. | Approaches for securing middleware data access |
| US12207157B2 (en) | 2019-05-28 | 2025-01-21 | Gotham Studios, Inc. | System and method for providing content |
| US11619511B2 (en) * | 2019-07-30 | 2023-04-04 | Toyota Motor Engineering & Manufacturing North America, Inc. | System and method for local storage based mapping |
| US11146656B2 (en) * | 2019-12-20 | 2021-10-12 | Tealium Inc. | Feature activation control and data prefetching with network-connected mobile devices |
| KR102834927B1 (ko) * | 2020-02-28 | 2025-07-16 | 매치 그룹 엘엘씨 | 로케이션 정보를 사용하여 매칭하는 시스템 및 방법 |
| CN111835833A (zh) * | 2020-06-23 | 2020-10-27 | 武汉菲奥达物联科技有限公司 | 一种基于lpwan的场景快速切换方法及装置 |
| US20230262477A1 (en) * | 2022-02-16 | 2023-08-17 | Verizon Patent And Licensing Inc. | Simulating wireless networks using multilayer radio frequency resolution maps |
| KR102753529B1 (ko) * | 2022-04-14 | 2025-01-21 | 주식회사 베스텔라랩 | 벡터기반 동적지도에 의한 자율주행차량의 길 및 위험요소 안내 |
| EP4726328A1 (en) * | 2024-10-11 | 2026-04-15 | TomTom Navigation B.V. | Methods and systems for prefetching online map data during a drive of a vehicle |
Family Cites Families (18)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6999779B1 (en) * | 1997-02-06 | 2006-02-14 | Fujitsu Limited | Position information management system |
| EP1102510A1 (en) | 1999-10-12 | 2001-05-23 | Taskin Sakarya | Location system for mobile telephones |
| US6405123B1 (en) * | 1999-12-21 | 2002-06-11 | Televigation, Inc. | Method and system for an efficient operating environment in a real-time navigation system |
| US6615131B1 (en) * | 1999-12-21 | 2003-09-02 | Televigation, Inc. | Method and system for an efficient operating environment in a real-time navigation system |
| US6680919B1 (en) * | 2000-02-04 | 2004-01-20 | Nokia Corporation | Downloading of maps and location specific configuration information to GPS-capable mobile communication terminal |
| JP3695315B2 (ja) | 2000-11-14 | 2005-09-14 | 日産自動車株式会社 | 車両用表示装置 |
| US7096007B2 (en) | 2001-01-09 | 2006-08-22 | Thomson Licensing | Mobile communication system having a direct and broadcast link |
| US6704645B1 (en) * | 2001-12-11 | 2004-03-09 | Garmin Ltd. | System and method for estimating impedance time through a road network |
| JP4030366B2 (ja) * | 2002-07-01 | 2008-01-09 | シャープ株式会社 | 携帯電話装置 |
| US7668536B2 (en) * | 2002-08-06 | 2010-02-23 | Hewlett-Packard Development Company, L.P. | Retrieving media items to a mobile device |
| JP3698716B2 (ja) * | 2003-02-25 | 2005-09-21 | 松下電器産業株式会社 | アプリケーションプログラムの予測方法及び移動体端末 |
| JP3669702B2 (ja) * | 2003-02-25 | 2005-07-13 | 松下電器産業株式会社 | アプリケーションプログラムの予測方法及び移動体端末 |
| US6943729B2 (en) | 2003-10-01 | 2005-09-13 | S5 Wireless, Inc. | Method and system for time difference of arrival (TDOA) location services |
| KR100625217B1 (ko) | 2004-07-23 | 2006-09-20 | 권용진 | 모바일 기반의 지리정보 검색 및 조회 시스템 |
| US20060080032A1 (en) * | 2004-09-07 | 2006-04-13 | Cooper Clive W | System and method of wireless downloads of map and geographic based data to portable computing devices |
| US7480567B2 (en) * | 2004-09-24 | 2009-01-20 | Nokia Corporation | Displaying a map having a close known location |
| US7627425B2 (en) * | 2004-11-26 | 2009-12-01 | Microsoft Corporation | Location aware mobile-device software development |
| US20060271286A1 (en) * | 2005-05-27 | 2006-11-30 | Outland Research, Llc | Image-enhanced vehicle navigation systems and methods |
-
2006
- 2006-03-15 US US11/375,995 patent/US7519470B2/en not_active Expired - Lifetime
-
2007
- 2007-02-13 CN CN200780009364.4A patent/CN101405572B/zh active Active
- 2007-02-13 EP EP07750535.2A patent/EP1999977B1/en active Active
- 2007-02-13 KR KR1020087022480A patent/KR101429298B1/ko not_active Expired - Fee Related
- 2007-02-13 ES ES07750535.2T patent/ES2628208T3/es active Active
- 2007-02-13 WO PCT/US2007/003704 patent/WO2007108869A1/en not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| CN101405572B (zh) | 2015-11-25 |
| US20070219708A1 (en) | 2007-09-20 |
| CN101405572A (zh) | 2009-04-08 |
| EP1999977B1 (en) | 2017-03-22 |
| KR101429298B1 (ko) | 2014-08-11 |
| US7519470B2 (en) | 2009-04-14 |
| EP1999977A1 (en) | 2008-12-10 |
| EP1999977A4 (en) | 2013-08-07 |
| KR20080110593A (ko) | 2008-12-18 |
| WO2007108869A1 (en) | 2007-09-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2628208T3 (es) | Almacenamiento en caché basado en localización para dispositivos móviles | |
| Steiniger et al. | Foundations of location based services | |
| US11725948B2 (en) | Navigating an indoor transit system using a mobile device | |
| US8423291B2 (en) | Personal GPS navigation device | |
| ES2430848T3 (es) | Interfaz gráfica de usuario para presentar información de ubicación | |
| Huang | Location based services | |
| CN105229417A (zh) | 具有动态更新机制的导航系统及其操作的方法 | |
| CN104135716A (zh) | 一种兴趣点信息的推送方法及系统 | |
| KR20060059167A (ko) | 위치 인지 모바일 디바이스 소프트웨어 개발 | |
| US20240405900A1 (en) | Waypoints for last known network connectivity | |
| CN109067915A (zh) | 提供基于位置的服务的方法、装置和系统 | |
| CN101603835A (zh) | 基于无线通信技术的层次导航系统及其导航方法 | |
| JP2007304976A (ja) | 位置情報に基づく情報配信方法およびシステム | |
| Kramer et al. | Context-aware adaptation in a mobile tour guide | |
| Jana et al. | An event-driven university campus navigation system on android platform | |
| Steiniger et al. | Foundations of LBS | |
| Tiwari et al. | A survey on LBS: System architecture, trends and broad research areas | |
| JP2018064197A (ja) | 情報提供システムおよび情報提供方法 | |
| ES2168651T5 (es) | Dispositivo para la recepcion y visualizacion de datos cartograficos. | |
| Shahzada et al. | Dynamic vehicle navigation: An A* algorithm based approach using traffic and road information | |
| Chang et al. | Location-aware mobile transportation information service | |
| Prashanth et al. | Augmented reality-based campus navigation | |
| WO2024254196A1 (en) | Waypoints for last known network connectivity | |
| JP2002207921A (ja) | 情報提供システム、情報提供サーバ、情報提供方法およびその処理プログラムを記録した記録媒体 | |
| Joy et al. | Location Based Services-Enterprise Mobility |