基于位置来配置移动设备应用的系统和方法与流程

文档序号:15685577发布日期:2018-10-16 21:01阅读:248来源:国知局

版权声明

本专利文档的公开内容的一部分包含受版权保护的材料。版权所有者不反对任何人对该专利文献或专利公开内容的传真复制,只要其出现在专利和商标局专利文件或记录中,但是保留所有其他版权权利。以下声明适用于以下所述软件和数据,以及在形成该文档的一部分的附图中:版权2012,ebay公司。保留一切权利。

优先权声明

本申请主张2012年8月30日递交的题为in-storeexperienceformobiledevices的第no.61/695,196号美国临时申请的权益,其以全文引入的方式并入本文中。本申请还主张2013年8月2日递交的题为systemsandmethodsforconfiguringmobiledeviceapplicationsbasedonlocation的第no.13/958,340号美国申请的权益,其以全文引入的方式并入本文中。

本申请总体上涉及在分布式网络上工作的基于网络的系统内的数据处理或者移动设备上的数据处理,并且更具体地涉及用于实现移动设备的上下文(contextual)店内体验的系统和方法。



背景技术:

对具有数据连接和位置确定能力的诸如(来自加利福尼亚库比蒂诺的苹果公司)之类的智能电话的不断增长的使用正在慢慢改变人们的交互、购买产品和服务、甚至管理账户的方式。智能电话能够向用户提供与广阔范围的信息有关的几近即时的信息,例如产品可用性、朋友位置、或定价。例如,诸如redlasertm(来自加利福尼亚圣何塞的ebay公司)之类的应用允许智能电话用户扫描条形码并跨在线和本地零售直销来即时检查价格。智能电话还通常包括诸如全球定位系统(gps)接收机之类的机制,其允许设备持续更新位置信息。这些技术改变也在驱动人们在不同的上下文位置内(例如,零售店、在家或在学校)希望与移动设备进行交互的方式的改变。

附图说明

附图中以示例而非限制的方式示出了一些实施例,在附图中:

图1是示出了根据示例实施例的用于在移动设备上实现上下文店内体验修改的系统的框图。

图2是示出了根据示例实施例的用于操作移动设备的环境的框图。

图3是示出了根据示例实施例的移动设备的框图。

图4是示出了根据示例实施例的基于网络的系统的框图,在该基于网络的系统中,上下文店内体验修改能够工作。

图5是示出了根据示例实施例的地理位置模块的框图。

图6是示出了根据示例实施例的示例地理围栏(geofence)和与特定地理围栏相关联的移动设备轨迹的框图。

图7是示出了根据示例实施例的用于在移动设备上使用上下文店内体验修改的方法的流程图。

图8是示出了根据示例实施例的在移动设备上实现上下文店内体验修改的方法的流程图。

图9是具有计算机系统的示例形式的机器的示意表示图,在该机器中,可以执行使得机器执行本文讨论的任意一个或多个方法的指令集。

具体实施方式

定义

位置-为了本说明书和相关联的权利要求的目的,术语“位置”用于指代地理位置,例如经度/纬度组合或者街道地址。术语“位置”还在本说明书中用于指代与事件相关联的物理位置(例如假期目的地)。

实时-为了本说明书和相关联的权利要求的目的,术语“实时”用于指代在事件发生或由可操作系统接收输入时,即时(on-the-fly)执行的计算或操作。然而,对术语“实时”的使用不意在排除引起输入和响应之间的一些时延的操作,只要该时延是由机器的性能特征所引起的无意的结果。

上下文-为了本说明书和相关联的权利要求的目的,术语“上下文”用于指代环境输入,例如位置、时间和天气状况等。上下文通常指代对个体的(例如,用户的)环境和/或活动进行描述的条件。例如,上下文信息可以包括用户的位置、移动方向、当前活动(例如工作、驾驶、打高尔夫球、购物等)、当前的天气状况、一天中的时间和一年中的时间(例如季节)等。在特定示例中,关于用户的上下文信息还可以包括关于用户的过去的事件、购物历史或其他历史数据。在以下示例中,上下文能够改变特定移动设备(例如,智能电话)应用如何在特定移动设备上工作。例如,移动购物应用可以取决于位置而进入不同的模式。在该示例中,如果移动设备的用户在家,则移动购物应用可以默认为创建购物清单。相对地,如果移动设备的用户在杂货店中,则移动购物应用可以进入显示重复杂货清单(grocerylist)的杂货购物模式。在另一零售店位置(例如电器商店)中,移动购物应用能够进入价格比较模式或访问愿望清单。

本文描述了用于在移动设备上使用上下文店内体验修改的示例系统和方法等。还描述了用于在移动设备上生成和使用实现了地理围栏的移动应用配置的系统和方法。在一些示例实施例中,用于实现移动设备上的上下文店内体验修改的系统和方法允许移动设备基于位置上下文等来无缝地改变移动应用的功能等。在以下描述中,为了解释的目的,阐释大量的具体细节,以提供对示例实施例的透彻理解。然而,对本领域技术人员将显而易见的是:本发明可以在没有这些具体细节的情况下实现。还将显而易见的是:移动设备上的上下文店内体验不限于所提供的示例,并且还可以包括未具体描述的其他场景。

地理围栏能够用在意识到位置(location-aware)的移动设备上,以检测移动设备的用户何时进入特定位置(例如特定零售商店)。能够在全球定位系统(gps)坐标(例如,纬度和经度)结合用米或英尺为单位测量的半径的意义上,定义地理围栏。备选地,还能够根据定义边界框的一系列gps坐标来定义地理围栏。在另外其他示例中,地理围栏可以是由数学公式定义的并由gps坐标锚定的任意几何形状。在特定示例中,位置数据点还能够用于检测移动轨迹,移动轨迹能够用于对代表物理位置(例如零售商店、用户住处等)的地理围栏内的存在性状态(presence)的检测进行求精。

使用地理围栏的概念或另一种位置监测的手段,移动设备能够监视位置,并发信号通知移动应用来至少部分基于设备的当前位置来改变配置。例如,redlaser(来自加利福尼亚圣何塞的ebay公司)是移动购物应用,其允许用户扫描产品并获得定价和其他产品信息。能够基于移动设备的当前位置对功能进行修改,所述功能当用户扫描产品(例如,条形码、快速响应(qr)码,或类似的2d矩阵码)时自动发生。如果移动设备位于零售位置内,则产品扫描能够导致例如在当前位置和在线选项之间的价格比较。备选地,如果移动设备位于用户的住处内,则扫描产品可以带来该产品的促销材料或用户使用手册。在另外其他示例中,扫描产品可以导致将该产品添加至购物清单或在线愿望清单中。在一些示例中,移动应用能够包括针对诸如家里、工作或各个零售商店(例如,电器商店对杂货商店等)之类的各种位置内的默认响应的用户可配置的选项。例如,当在杂货商店中时扫描qr或条形码能够导致在购物清单中勾选该产品为已购买。移动应用还能够提供与当前位置有关的信息,例如营业时间、地址、电话号码、退货策略、价格匹配策略或销量最佳产品等。

诸如redlaser之类的移动应用还能够被配置为:发送针对特定位置所定制的通知。当移动设备(或中央监视服务)检测到移动设备已经进入特定位置时,能够触发通知。例如,当进入特定电器零售商位置时,移动应用能够提供报价、交易、库存信息或者为该特定位置量身定做的商店布局图。该信息可以允许移动设备用户更快地访问所需产品或立即购买所需项。在一些示例中,移动应用能够与基于网络的发布系统进行交互,该基于网络的发布系统能够被配置为发送个性化的通知和针对个人用户和当前位置所定制的报价。例如,移动设备用户可以保持某种在线愿望清单(或者与所需产品和服务有关的类似的用户简档信息),在线愿望清单能够与零售位置的当前库存和报价相匹配,以产生与供移动设备用户购买愿望清单上项目的机会有关的定制通知。

诸如(来自加利福尼亚库比蒂诺的苹果公司)之类的移动设备,或运行androidtm(来自加利福尼亚山景城的google公司)的设备,在给定的时间通常仅可以监视有限数量的地理围栏。附加地,在移动设备上运行的应用通常仅当用户开启应用(或至少在移动设备上的存储器中激活)时更新所监视的地理围栏。

为了克服仅能够监视有限数量的地理围栏的限制,已经发展了地理围栏分页(paging)的概念。地理围栏分页还能够提供用于限制移动设备内用于监视和维持地理围栏所需的存储器量的益处。例如,根据实施例工作的移动设备能够在任意给定的时间监视10个地理围栏(请注意,10是任意数量并且不意在限制本文所公开的系统和方法)。所监视的地理围栏中的九个地理围栏被指派到特定的关注地理位置(例如,零售商店),而第十地理围栏在地理上环绕其他九个地理围栏。在一些示例中,九个较小的地理围栏被称为子地理围栏,大的涵盖地理围栏被称为父地理围栏。在另外其它示例中,10个地理围栏可以被称为地理围栏的页,且大地理围栏描述了该页的边界和位于页内部的较小地理围栏。在由发明人natelyman和frankrusso于2012年8月22日递交的申请号no.61/692,173的题为“passivedynamicgeofencingformobiledevices”的共同待审申请中进一步讨论了地理围栏分页(或父/子地理围栏群)的概念。该passivedynamicgeofencingformobiledevices申请以全文引入的方式并入本文中。

示例系统

图1是示出了根据示例实施例的用于实现移动设备上的上下文店内体验修改的系统100的框图。在该示例中,系统100能够包括用户110a~110n(取决于上下文统称为用户110或多个用户110)和基于网络的发布系统120。在示例中,用户110a~110n能够经由移动设备115a~115n(统称为移动设备115)连接至基于网络的发布系统120。用户110a~110n还能够经由客户端140a~140n(统称为客户端140或多个客户端140)连接至基于网络的发布系统120。

在示例中,用户110能够在基于网络的发布系统120上配置账户。账户能够由每个用户(例如用户110a)使用移动设备115a或客户端140a来访问(如果用户110a满足指定的访问标准或规则的话)。在示例中,访问规则能够包括用户标识和地理位置标识规则(例如,用户必须位于由基于网络的发布系统120所支持的位置内)。基于网络的发布系统120上的用户账户能够允许用户定义用于经由地理围栏来监视的特定的关注位置。在一些示例中,基于网络的发布系统120能够监视用户行为并基于过去的和预测的用户行为来创建地理围栏。在特定示例中,基于网络的发布系统120能够被商家用作基于位置的广告平台,其中诸如用户110之类的用户选择加入基于位置的广告。例如,国家电器零售商可以使用基于网络的发布系统120来经由移动设备115向用户110提供基于位置的广告。在该示例中,可以生成一系列父地理围栏,每个父地理围栏涵盖可管理数量的地理相关的零售位置。每个电器商店位置将被小得多的子地理围栏所覆盖,该子地理围栏使得基于网络的发布系统120能够仅当用户110之一在与商店地理相邻时(基于移动设备115检测所监视的子地理围栏之一内的位置)才提供与特定电子零售商商店位置相关的基于位置的广告。

在其他示例中,例如移动设备115之类的移动设备,或者基于网络的发布网络120能够基于对子地理围栏的进入(或者经由其他基于位置的确定和触发机制)来重新配置移动应用。

示例操作环境

图2是示出了根据示例实施例的用于操作移动设备115的环境200的框图。环境200是用于实现上下文店内体验修改的方法能够工作于其中的示例环境。环境200能够包括移动设备115、通信连接210、网络220、服务器230、无线通信连接260、通信卫星270、商家服务器280和数据库290。服务器230能够可选地包括基于位置的服务应用232、位置确定应用234、发布应用236和位置可配置应用238。数据库290能够可选地包括地理围栏页292、用户简档294和/或位置历史296。移动设备115代表一个示例设备,其能够由用户用来监视当前位置并改变移动设备应用(例如,位置可配置应用238)行为。移动设备115可以是各种类型设备中的任意一种(例如蜂窝电话、个人数字助理(pda)、个人导航设备(pnd)、手持计算机、平板计算机、笔记本计算机或其他类型的可移动设备)。移动设备115可以经由连接210与通信网络220交互。取决于移动设备115的形式,可以使用各种类型的连接210和通信网络220中的任意一种。

例如,连接210可以是码分多址(cdma)连接、全球移动通信系统(gsm)连接,或其他类型的蜂窝连接。这种连接210可以实现各种类型的数据传输技术中的任意,例如单载波无线电发送技术(1xrtt)、演进数据优化(evdo)技术、通用分组无线电服务(gprs)技术、gsm演进的增强数据速率(edge)技术、或其他数据传输技术(例如,第四代无线、4g网络)。当采用这种技术时,通信网220可以包括具有多个重叠地理覆盖的、通过蜂窝电话交换机互联的小区站点的蜂窝网络。这些蜂窝电话交换机可以与网络骨干耦合(例如,公共交换电话网(pstn)、分组交换数据网或其他类型的网络)。

在另一示例中,连接210可以是无线保真(wi-fi,ieee802.11x类型)连接、全球微波互联接入(wimax)连接、或另一种类型的无线数据连接。在这种实施例中,通信网络220可以包括一个或多个无线接入点,其与局域网(lan)、广域网(wan)、互联网或其他分组交换数据网络耦合。

在又一示例中,连接210可以是有线连接(例如以太网链路),并且通信网可以是lan、wan、互联网或其他分组交换数据网。因此,各种不同的结构是可明确预期的。

多个服务器230可以经由接口与通信网220耦合,例如经由有线的或无线接口。这些服务器230可以被配置为向移动设备115提供各种类型的服务。例如,一个或多个服务器230可以执行基于位置的服务(lbs)应用232,其与在移动设备115上执行的软件互操作,以向用户提供lbs。lbs能够使用对设备位置的了解,和/或其他设备的位置,以向用户提供位置特定信息、推荐、通知、交互能力和/或其他功能。例如,lbs应用232能够向基于网络的发布系统120提供位置数据,然后其能够用于在基于网络的发布系统120上提供针对群账户的接入。可以通过移动设备115与在一个或多个服务器230上执行的位置确定应用234互操作来获得对设备位置和/或其他设备的位置的了解。还可以由移动设备115在不使用诸如应用234之类的位置确定应用的情况下提供位置信息。在特定示例中,移动设备115可以具有一些受限的位置确定能力,其利用位置确定应用234来增强。在一些示例中,服务器230还能够包括发布应用236,用于提供对数据(诸如广告或报价)的意识到位置的发布。在特定示例中,能够由位置确定应用234将位置数据提供给发布应用236。在一些示例中,由位置确定应用234提供的位置数据能够包括商家信息(例如,零售位置的标识)。在特定示例中,位置确定应用234能够经由网络220接收信号,以进一步识别位置。例如,商家可以广播特定ieee802.11服务集标识符(ssid),其能够由位置确定应用234解释以便识别特定零售位置。在另一示例中,商家可以经由射频标识(rfid)、近场通信(nfc)或类似的协议来广播标识信号,其能够由位置确定应用234来使用。除了使用这各种机制来识别特定位置的示例以外,这些机制(例如,ssid、rfid、nfc等)能够被用作辅助认证因素,以下更详细地讨论这些辅助认证因素。

在特定示例中,位置可配置应用238能够利用lbs应用232或位置确定应用234来辅助确定设备位置和要应用的合适的基于位置的配置。

示例移动设备

图3是示出了根据示例实施例的移动设备115的框图。移动设备115可以包括处理器310。处理器310可以是适用于移动设备的各种不同类型的商用处理器中的任意一种(例如,xscale架构微处理器、无互锁流水级微处理器(mips)架构处理器,或另一类型的处理器)。存储器320(例如随机存取存储器(ram)、闪存、或其他类型的存储器),通常可由处理器310来访问。存储器320可以适于存储操作系统(os)330,以及应用程序340,例如可以向用户提供lbs的支持移动位置的应用。在特定示例中,应用程序340能够包括基于位置信息来改变功能行为的指令。处理器310可以或者直接地或者经由适合的中间硬件与显示器350和一个或多个输入/输出(i/o)设备360(例如键区、触摸面板传感器、麦克风等)耦合。类似地,在一些实施例中,处理器310可以与收发机370耦合,收发机370与天线390接口连接。收发机370可以被配置为:取决于移动设备115的性质而经由天线390发送和接收蜂窝网络信号、无线数据信号或其他类型的信号。用这种方式,可以建立与通信网络220的连接210。此外,在一些配置中,gps接收机380还可以使用天线390来接收gps信号。

能够在题为“location-basedservices”的授权给phillips等人并受让给ca,圣何塞的ebay公司的美国专利7,848,765中,找到关于提供和接收基于位置的服务的附加细节,其以全文引入的方式并入本文中。

在美国专利7,848,765内讨论的示例地理-位置概念是地理围栏。地理围栏能够被定义为物理位置或移动对象(例如,用户)周围的周界或边界。地理围栏可以简单如物理位置周围的半径,其定义了该位置周围的圆形区域。然而,地理围栏可以是任意几何形状或地图上画出的任意边界。地理围栏能够用于确定关注的地理区域,以便计算人口、广告或类似的目的。地理围栏可以与本文所讨论的报价生成和传送概念结合使用。例如,地理围栏能够用于辅助确定用户(或与用户相关联的移动设备)是否在关注的地理区域中(例如,目标位置),以提供对群账户的访问。如果用户在通过提供群账户而建立的地理围栏内,则本文所讨论的系统能够使用该信息来授权用户访问群账户,例如授权用户来处理针对群支付账户的支付。

示例平台架构

图4是示出了根据示例实施例的上下文店内体验修改能够工作于其中的基于网络的系统400的框图。该框图示出了基于网络的系统400(具有客户端-服务器系统的示例形式),在该基于网络的系统400中,能够部署示例实施例。示出了联网的系统402,其具有基于网络的意识到位置的发布或支付系统的示例形式,其经由网络404(例如,互联网或wan)向一个或多个客户机410、412提供服务器侧功能。图4示出了例如分别在客户机410和412上执行的web客户端406(例如,浏览器,例如由华盛顿州雷德蒙的微软公司开发的internetexplorer浏览器)和编程客户端408(例如,加利福尼亚圣何塞的paypal公司的paypal支付智能电话应用)。在示例中,客户机410和412可以采用移动设备(例如移动设备115)的形式。在又一示例中,可编程客户端408可以是加利福尼亚圣何塞的ebay公司的redlaser移动购物应用。

应用编程接口(api)服务器414和web服务器416与一个或多个应用服务器418耦合,并分别向一个或多个应用服务器418提供编程和web接口。应用服务器418容宿一个或多个发布模块420(在特定示例中,这些还能够包括商业模块、广告模块和市场模块,仅举几例)、支付模块422和地理-位置模块432。应用服务器418进而被示出与一个或多个数据库服务器424耦合,数据库服务器424便于对一个或多个数据库426的访问。在一些示例中,应用服务器418能够在不需要数据库服务器424的情况下直接访问数据库426。

发布模块420可以向访问联网的系统402的用户提供多个发布功能和服务。同样,支付模块422可以向用户提供多个支付服务和功能。支付模块422可以允许用户来累积账户中的值(例如,用诸如美元之类的商业货币,或者诸如“点数”之类的专有货币),然后稍后在零售位置内或在外部在线零售地点内针对经由各种发布模块420来作广告的或可用的产品(例如,商品或服务)来赎回累积的值。支付模块422还能够被配置为:便于基于地理围栏检测的支付处理,并且与地理位置模块432结合来工作。地理-位置模块432可以提供对当前位置的确定等。尽管图4中示出了发布模块420、支付模块422和地理-位置模块432(它们都形成了联网的系统402的一部分),将理解的是:在备选实施例中,支付模块422可以形成支付服务的一部分,该支付服务与联网的系统402分离且不同。

此外,尽管图4中所示的系统400采用了客户端-服务器架构,本发明当然不限于这种架构,并且在(例如)分布式或端到端架构系统中同样可以应用。各种发布模块420、支付模块422和授权模块432还可以实现为独立的系统或软件程序,其不必具有联网能力。

web客户端406经由由web服务器416所支持的web接口来访问各种发布模块420、支付模块422和地理-位置模块432。类似地,编程客户端408经由由api服务器414所提供的编程接口来访问由发布模块420、支付模块422和地理位置模块432所提供的各种服务和功能。例如,编程客户端408可以是智能电话应用(例如,paypal支付应用),其使得用户能够利用用户简档数据和由智能电话所提供的或在网络404上访问到的当前位置信息,直接从他们的智能电话来处理支付。

图4还示出了在第三方服务机440上执行的第三方应用428,作为具有对联网的系统402的编程访问,该编程访问是经由由api服务器414所提供的编程接口的。例如,第三方应用428可以利用从联网的系统402检索到的信息,来支持由第三方容宿的网站上的一个或多个特征或功能。第三方网站可以例如提供由联网的系统402的相关应用所支持的一个或多个促销、市场或支付功能。此外,第三方网站可以向商家提供对地理-位置模块432的访问,用于广告或市场营销的目的。

示例地理-位置模块

图5是示出了根据示例实施例的地理-位置模块432的框图。在该示例中,地理-位置模块432能够包括规则引擎505、通信模块510、生成模块520、账户模块530和位置模块540。在示例中,地理位置模块432能够访问数据库426,以存储和/或检索生成规则、用户简档数据、位置数据、和地理围栏(父和子)、以及其他信息,以实现对移动设备上运行的移动应用的上下文店内体验修改。

在示例中,规则引擎505能够被配置为对规则进行管理和评估,该规则控制在各种位置或其他上下文情况(例如,天气、一天中的时间、一年中的时间等)中可以如何配置一个或多个应用。

通信模块510能够被配置为管理涉及地理-位置模块432的所有通信。在示例中,通信模块510能够被配置为管理地理-位置模块432和用户之间的通信,其中,用户经由移动设备115或客户端140来通信。

在示例中,生成模块520被配置为根据由模块(例如账户模块530、位置模块540和规则引擎505)所提供的信息而生成移动应用配置包(例如,文件)。

在示例中,账户模块530被配置为提供(设立)和管理联网的系统402上的用户账户。在特定示例中,账户模块530能够根据由通信模块510接收到的配置数据来提供用户账户。账户模块530还能够在提供或解除用户账户方面与规则引擎505结合工作。

在示例中,位置模块540被配置为从移动设备(例如,移动设备115)接收位置数据,并根据位置数据来确定当前的物理位置,其可以包括对地标或其他关注地点的引用。在一些示例中,位置模块540能够接收gps类型的坐标(例如,经度和纬度),其能够用于确定与移动设备(以及因此与移动设备的用户)相关联的当前位置。使用经度和纬度坐标,位置模块540能够确定例如当前位置是否位于当前父地理围栏内。在特定示例中,位置模块540能够从移动设备接收其他位置确定信息,例如仅在特定物理位置(通常称为辅助位置认证因素)处容易可用的照片或数据的扫描。在另一示例中,一些商家可以广播特定无线网络信号,其能够由移动设备(例如移动设备115)接收。一旦接收到特定无线网络信号,则移动设备115能够包括编程或电路,以将该信号转换为特定位置,或者移动设备115能够简单地将唯一的信号重传至位置模块540。在示例中,商家位置能够发送唯一的ssid,位置模块能够被编程为将该ssid解释为识别特定商家位置。在另一示例中,商家可以在所有它的位置内广播特定的ssid,并且位置模块540能够被编程为使用该唯一ssid和其他位置数据(例如,gps坐标或小区塔位置)的组合来识别特定位置。以下参照图6讨论了能够由位置模块540提供的进一步功能。

以下参照图6~8来详细描述关于由地理-位置模块432所提供的功能的附加细节。

示例地理-位置轨迹跟踪

图6是示出了根据示例实施例的示例地理围栏和与特定地理围栏相关联的移动设备轨迹的框图。在该示例中,地理围栏610a至610n(取决于上下文统称为地理围栏610或多个地理围栏610)代表一系列所监视的地理围栏。在特定示例中,地理围栏610能够代表一系列所监视的物理位置(例如连锁咖啡店或零售商店)。位置630a至630n(统称为位置630)代表按时间顺序从移动设备(例如移动设备115)捕捉的位置数据。在示例中,能够分析位置630以确定移动设备115的轨迹620,其能够进而用来更准确地确定移动设备115何时实际进入地理围栏(例如,地理围栏610c)。随着时间过去而跟踪移动设备(例如移动设备115)与仅从移动设备115接收单个位置指示符相比能够提供更准确的位置信息。此外,使用轨迹620能够提高准确确定移动设备何时实际进入物理位置(例如零售店)的能力。

在一些示例中,位置确定机制还能够使用位置求平均来提高位置确定的准确性。例如,除了使用轨迹跟踪之外,联网的系统402还能够从移动设备115获得多个位置数据点,以进一步对在后续处理中所使用的位置数据进行求精。类似地,移动设备115本身也能够使用位置求平均对移动应用所报告出的或使用的位置进行求精,用于其他基于位置的服务和处理。

示例方法

图7是示出了根据示例实施例的用于在移动设备上使用上下文店内体验修改的方法700的流程图。在示例中,方法700能够包括以下操作:在710处监视移动设备位置,在720处在移动设备上监视一个或多个地理围栏,在730处检测对所监视的地理围栏的进入,在740处至少部分基于对所监视的地理围栏的进入来配置移动应用,以及在750处基于在地理围栏内的存在性状态,可选地改变特定移动应用功能的功能。

在示例中,方法700能够在710处开始,在710处移动设备115监视它的当前位置。在720处,方法700能够继续进行:移动设备115参考移动设备115的当前位置来监视一个或多个地理围栏。在730处,方法700能够继续进行:移动设备115检测对所监视的地理围栏的进入。在示例中,移动设备115能够检测对所监视的地理围栏的进入,包括计算与移动设备115相关联的轨迹。

在740处,方法700能够继续进行:移动设备115至少部分基于对所监视的地理围栏的进入来配置移动应用。在示例中,移动设备115能够基于所进入的地理围栏(例如,物理位置)来选择移动应用配置。该示例中,每个地理围栏(或每种类型的地理围栏)能够具有与它相关联的移动应用配置。最后,在750处,方法700能够可选地包括:移动设备115基于在地理围栏内的存在性状态(或在借助除地理围栏以外的方式来确定的情况下,基于在物理位置内的存在性状态)而改变移动应用的特定个体功能。

图8是示出了根据示例实施例的实现移动设备上的上下文店内体验修改的方法800的流程图。在示例中,方法800能够包括以下操作:在810处监视与物理位置相关联的地理围栏,在820处接收移动设备位置数据,在830处确定移动设备是否在位置内,在840处选择移动应用配置,以及在850处发送移动应用配置。可选地,方法800还能够包括诸如下述操作之类的操作:在860处接收移动应用功能请求和在870处处理该移动应用请求。

方法800能够在操作810处开始:联网的系统402监视与物理位置相关联的一个或多个地理围栏。在示例中,联网的系统402能够被配置为监视与各个零售位置和订户(例如,特定移动应用的用户或向联网的系统402登记的用户)关注的其他位置相关联的地理围栏。联网的系统402还能够参考地理围栏来监视多个移动设备(例如移动设备115)。在820处,方法800能够继续进行:联网的系统402从移动设备(例如移动设备115)接收位置数据,该位置数据指示与移动设备115相关联的当前位置。

在830处,方法800能够继续进行:联网的系统402基于从移动设备115接收到的位置数据来确定移动设备115是否位于所监视的地理围栏内(例如,在关注的物理位置内)。如果联网的系统402确定移动设备115在关注的物理位置(例如,地理围栏)内,则然后方法800能够在840处继续进行:联网的系统402选择与物理位置(例如,地理围栏)相对应的移动应用配置。在850处,方法800能够继续进行:联网的系统402将移动应用配置发送到移动设备115。

可选地,方法800还能够包括操作860,操作860包括:联网的系统402从移动设备115接收移动应用功能请求。在示例中,方法800能够在870处继续进行:联网的系统402至少部分基于移动设备115的当前位置来处理移动应用功能请求。例如,如果联网的系统402确定(在操作830处)移动设备115位于电器零售商店内,则能够在考虑到该信息的情况下处理移动应用功能请求。在该示例中,如果移动应用功能请求包括产品标识符,则联网的系统402能够将功能请求解释为价格比较请求,并相应对其进行处理。

模块、组件和逻辑

本文中将特定实施例描述为包括逻辑或多个组件、模块或机制。模块可以构成软件模块(例如,在机器可读介质上或者在发送信号中体现的代码)或硬件模块。硬件模块是能够执行特定操作、并且可以用特定方式配置或布置的有形单元。在示例实施例中,可以利用软件(例如应用或应用部分)来配置一个或多个计算机系统(例如,单机、客户端、或服务器计算机系统)或计算机系统的一个或多个硬件模块(例如,处理器或一组处理器),作为进行工作以执行本文所描述的特定操作的硬件模块。

在各种实施例中,可以用机械方式或电子方式实现硬件模块。例如,硬件模块可以包括永久配置的专用电路或逻辑(例如,特殊用途处理器,例如现场可编程门阵列(fpga)或专用集成电路(asic)),以执行特定操作。硬件模块还可以包括可编程逻辑或电路(例如,包含在通用处理器或其他可编程处理器内),其可以用软件来临时配置以执行特定操作。将理解的是:可以由成本和时间考虑因素来驱动对以下各项的判定:以机械方式实现硬件模块,在专用的和永久配置的电路中实现硬件模块,还是在临时配置的电路(例如,由软件配置)中实现硬件模块。

相应地,术语“硬件模块”应当被理解为涵盖有形实体,不管该实体是物理构造的,永久配置的(例如,硬连线的)还是临时配置的(例如,编程的)以用特定方式工作和/或执行本文描述的特定操作。考虑对硬件模块进行临时配置(例如,编程)的实施例,每个硬件模块不需要在时间的任意一个时刻是已配置或已实例化的。例如,在硬件模块包括使用软件来配置的通用处理器的情况下,该通用处理器可以在不同时间被配置为相应不同的硬件模块。软件可以相应地配置处理器,以例如在一个时刻构成特定硬件模块,并且在不同的时刻构成不同的硬件模块。

硬件模块能够向其他硬件模块提供信息,并从其他硬件模块接收信息。因此,所描述硬件模块可以被视为通信耦合。在多个这种硬件模块同时存在的情况下,可以通过连接硬件模块的信号发送(例如,在合适的电路和总线上)来实现通信。在多个硬件模块被在不同时间被配置或实例化的实施例中,可以例如通过在多个硬件模块可访问的存储器结构中对信息的存储和检索来实现这种硬件模块之间的通信。例如,一个硬件模块可以执行操作,并在与其通信耦合的存储设备中存储该操作的输出。稍后,另一硬件模块可以访问该存储设备,以检索和处理所存储的输出。硬件模块还可以发起与输入或输出设备的通信,并且能够对资源(例如,信息的聚集)进行操作。

可以通过一个或多个临时配置的(例如,通过软件)或永久配置以执行相关操作的处理器来至少部分执行本文所描述的示例方法的各种操作。无论是临时地还是永久配置,这种处理器可以构成由处理器实现的模块,该模块进行工作以执行一个或多个操作或功能。在一些示例实施例中,本文中所提及的模块可以包括由处理器实现的模块。

类似地,本文所描述的方法可以至少部分由处理器实现。例如,可以由一个或多个处理器或处理器实现的模块来执行方法的至少一些操作。特定操作的执行可以分布在一个或多个处理器,不仅在单个机器内驻留,还跨多个机器部署。在一些示例实施例中,处理器或多个处理器可以位于单个位置中(例如,在家庭环境内,办公室环境内或作为服务器群),而在其他实施例中处理器可以跨多个位置来分布。

一个或多个处理器还可以进行工作以支持“云计算”环境中相关操作的执行,或者作为“软件即服务”(saas)。例如,在经由网络(例如,互联网)和经由一个或多个适合的接口(例如,api)可访问这些操作情况下,可以由一群计算机(作为包括处理器在内的机器的多个示例)来执行操作中的至少一些。

电子装置和系统

可以用数字电子电路,或者用计算机硬件、固件、软件或这些的组合来实现示例实施例。可以使用计算机程序产品来实现示例实施例,例如在信息载体中有形地体现的计算机程序,例如为了由数据处理装置(例如可编程处理器、计算机、或多个计算机)执行而在机器可读介质中,或者为了控制数据处理装置(例如可编程处理器、计算机、或多个计算机)的操作。

能够以任何形式的编程语言(包括编译的或解释的语言)来写计算机程序,并且能够用包括作为单机程序或作为适合于在计算环境中使用的模块、子程序或其他单元在内的任意形式来部署计算机程序。能够将计算机程序部署为:在一个计算机上或者在一个地点处的或跨多个地点分布并由通信网络互连的多个计算机上执行。

在示例实施例中,可以由执行计算机程序的一个或多个可编程处理器来执行操作,以通过对输入数据操作并生成输出来执行功能。方法操作还能够由特殊用途逻辑电路(例如,fpga或asic)来执行,并且示例实施例的装置可以实现为特殊用途逻辑电路(例如,fpga或asic)。

计算系统能够包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络交互。客户端和服务器之间的关系凭借在各自计算机上运行的并且彼此具有客户端-服务器关系的计算机程序而出现。在部署可编程计算系统的实施例中,将理解的是:需要考虑到硬件和软件架构这二者。具体地,将理解的是:对用永久配置的硬件(例如,asic)、用临时配置的硬件(例如,软件和可编程处理器的组合)、还是用永久的和临时配置的硬件的组合来实现特定功能的选择,可以是设计选择。以下阐述了在各种示例实施例中可以部署的硬件(例如,机器)和软件架构。

示例机器架构和机器可读介质

图9以计算机系统900的示例形式示出了机器的框图,在该机器中,可以执行指令,以使得机器执行本文讨论的任意一个或多个方法。在备选实施例中,机器操作为单机设备或者可连接(例如联网)到其他机器。在联网部署中,机器可在服务器-客户端网络环境中以服务机或客户机的身份工作,或者操作为对等(或分布式)网络环境中的对等机器。机器可以是个人计算机(pc)、平板pc、机顶盒(stb)、pda、蜂窝电话、web电器、网络路由器、交换机或网桥、或能够执行指定将由机器进行的动作的指令(顺序或其它情况)的任何机器。此外,虽然只示出了单个机器,但是术语“机器”还应被认为包括单独或联合执行用来执行本文讨论的方法中的任何一个或多个方法的指令集合(或多个集合)的机器的任意聚集。

示例计算机系统900包括处理器902(例如中央处理单元(cpu)、图形处理单元(gpu)、或这二者)、主存储器904和静态存储器906,它们经由总线908彼此通信。计算机系统900还可包括视频显示单元910(例如液晶显示器(lcd)或阴极射线管(crt))。计算机系统900还包括字母数字输入设备912(例如键盘)、光标控制(用户界面(ui)导航)设备914(例如鼠标)、盘驱动单元916、信号生成设备918(例如扬声器)和网络接口设备920。

机器可读介质

盘驱动单元916包括机器可读介质922,在机器可读介质922上存储了体现本文描述的方法或功能中的任何一个或多个(或由本文描述的方法或功能中的任何一个或多个利用)的一个或多个指令集合和数据结构(例如软件)924。在由计算机系统900执行期间,指令924还可位于(完全地或至少部分地)主存储器904、静态存储器906内和/或处理器902内,且主存储器904和处理器902也构成机器可读介质。

虽然在示例实施例中将机器可读介质922示为单个介质,但是术语“机器可读介质”可以包括存储了一个或多个指令或数据结构的单个介质或多个介质(例如,集中式或分布式数据库、和/或关联的高速缓存和服务器)。还应当认为术语“机器可读介质”包括能够存储、编码或承载用于由机器执行并使机器执行本发明的方法中的任何一个或多个方法的指令或者能够存储、编码或承载由这种指令所使用或与这种指令相关联的数据结构的任何有形介质。相应地应当认为术语“机器可读介质”包括但不限于固态存储器和光和磁介质。机器可读介质的具体示例包括非易失性存储器,以示例的形式包括:半导体存储设备(例如,可擦除可编程只读存储器(eprom)、电子可擦除可编程只读存储器(eeprom))和闪存设备、诸如内部硬盘和可移动盘之类的磁盘、磁光盘、以及cd-rom和dvd-rom盘。

发送介质

还可以在通信网络926上使用发送介质来发送或接收指令924。还可以使用网络接口设备920和多个熟知的传输协议(例如,http)之一发送指令924。通信网络的示例包括lan、wan、互联网、移动电话网、普通老式电话(pots)网、和无线数据网(例如,wifi和wimax网)。术语“发送介质”应该被理解为包括能够存储、编码或承载由机器执行的指令的任意无形介质,并且包括数字或模拟通信信号或其他无形介质,以便于这种软件的通信。

因此,已经描述了用于移动设备上的上下文店内体验修改的方法和系统。尽管已经参照特定示例实施例描述了本发明,将显而易见的是:可以在不脱离更宽泛的发明主题的情况下对这些实施例做出各种修改和改变。因此,说明书和附图应被视为是说明性的而不是限制性意义。

尽管已经参照特定示例实施例描述了实施例,将显而易见的是:可以在不脱离更宽泛的发明主题的情况下对这些实施例做出各种修改和改变。因此,说明书和附图应被视为是说明性的而不是限制性意义。形成本文一部分的所附附图以说明性而非限制性的方式示出形成其中可以实现主题的特定实施例。充分详细地描述了所示实施例,以使得本领域技术人员能够实践本文所公开的教导。可以使用并由此推导出其他实施例,使得可以在不脱离本公开的范围的情况下做出结构和逻辑的替代和改变。因此,该具体实施方式不应被视为是限制性的,并且仅由所附权利要求连同与这些权利要求相符的完全等同范围一起来限定各种实施例的范围。

仅为了方便而不意在主动将本申请的范围限制为任意单个发明或发明概念(如果实际公开了多于一个发明概念的话),本文可以单独地和/或统一地用术语“发明”来指代本发明主题的这些实施例。因此,尽管本文已经说明和描述了特定实施例,应该理解的是:打算实现相同目的的任意布置可以替代所示的特定实施例。本公开旨在涵盖各种实施例的任意和所有调整或变型。本领域技术人员在回顾以上描述时,将显而易见本文未具体描述的以上实施例的组合和其他实施例。

本文档中所涉及的所有公开、专利和专利文档以全文引用的方式并入本文中,如同以引用方式单独地并入一样。在本文档和通过引用并入的那些文档之间存在不一致用法的情况下,所并入的引用文献中的用法应当被理解为是对本文档的用法的补充;对于不可调和的不一致处,以本文档中的用法为准。

在本文档中,术语“一”或“一个”如同在专利文献中通常一样,包括一个或多于一个,无关于对“至少一个”或“一个或多个”的任何其他实例或使用。在本文档中,除非另外指示,否则术语“或”用于指“非排他的或者”,使得“a或b”包括“a,但是非b”、“b,但是非a”以及“a和b”。在所附权利要求中,术语“包括(including)”和“其中(inwhich)”用作各术语“包括(comprising)”和“其中(wherein)”的纯英语等价。此外,在以下权利要求中,术语“包括(including)”和“包括(comprising)”是开放式的,即包括除了那些在权利要求中这种术语之后列出的系统、设备、物品或过程之外的系统、设备、物品或过程仍然被视为落入该权利要求的范围。此外,在以下权利要求中,术语“第一”、“第二”和“第三”等仅用作标签,并且不意在对它们的对象强加数值要求。

提供本公开的摘要以允许读者快速地确定本技术公开的本质。应该理解:所提交的摘要并不用于解释或限制权利要求的范围或含义。此外,在以上具体实施方式中,可以看出,为了使本公开简单顺畅,在单个实施例中将各种特征集中在一起。不应将本公开的该方法解释为反映所要求保护的实施例需要的特征比每个权利要求中明确引述的特征更多这一意图。相反,所附权利要求反映创造性主题所依赖的特征少于单个公开实施例的全部特征。由此,所附权利要求据此加入到具体实施方式中,且每个权利要求自身作为独立的实施例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1