CN105912556A - 具有搜索功能的移动装置 - Google Patents

具有搜索功能的移动装置 Download PDF

Info

Publication number
CN105912556A
CN105912556A CN201610088358.3A CN201610088358A CN105912556A CN 105912556 A CN105912556 A CN 105912556A CN 201610088358 A CN201610088358 A CN 201610088358A CN 105912556 A CN105912556 A CN 105912556A
Authority
CN
China
Prior art keywords
mobile device
computer program
program code
character string
memorizeies
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.)
Granted
Application number
CN201610088358.3A
Other languages
English (en)
Other versions
CN105912556B (zh
Inventor
J·哈维里宁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
IndoorAtlas Oy
Original Assignee
IndoorAtlas Oy
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by IndoorAtlas Oy filed Critical IndoorAtlas Oy
Publication of CN105912556A publication Critical patent/CN105912556A/zh
Application granted granted Critical
Publication of CN105912556B publication Critical patent/CN105912556B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/023Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Remote Sensing (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Telephone Function (AREA)
  • Navigation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种移动装置、一种用于移动装置的计算机程序,以及一种移动装置中的方法。获得字符串。获得与所述字符串相关的位置。接着,基于所述位置和所述字符串内的一个或多个独立表达,执行对于位置相关数据的基于位置的搜索,以使得所述位置相关数据在离所述位置的预定距离内是有关的。最后,在地图上显示所述位置相关数据的至少一部分。

Description

具有搜索功能的移动装置
技术领域
本发明涉及移动装置、包括用于移动装置的计算机程序的非暂时性计算机存储介质,以及在移动装置中的方法。
背景技术
因特网包括大量信息。问题在于容易地和有效地发现相关信息的合理量。不同的搜索引擎被普遍地用于搜索因特网。然而,搜索功能仍然需要进一步的复杂化。
发明内容
本发明着眼于提供一种改进的移动装置、一种改进的计算机程序、以及一种改进的方法。
根据本发明的一个方面,提供了一种移动装置包括:显示器;一个或多个处理器;和包括计算机程序代码的一个或多个存储器;所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器使得移动装置至少:获得字符串(string);获得与字符串相关联的位置;基于所述位置和所述字符串内的一个或多个独立表达,执行对于位置相关数据的基于位置的搜索,以使得所述位置相关数据在离所述位置的预定距离内是有关的;以及,在所述显示器上的地图上显示所述位置相关数据的至少一部分。
根据本发明的另一方面,提供了一种包括计算机程序的非暂时性计算机存储介质,所述计算机程序包括计算机程序代码,当所述计算机程序代码被加载进移动装置时使得移动装置执行:获得字符串;获得与所述字符串相关联的位置;基于所述位置和所述字符串内的一个或多个独立表达,执行对于位置相关数据的基于位置的搜索,以使得所述位置相关数据在离所述位置的预定距离内是有关的;以及在所述显示器上的地图上显示所述位置相关数据的至少一部分。
根据本发明的另一方面,提供了一种移动装置中的方法,包括:获得字符串;获得与所述字符串相关联的位置;基于所述位置和所述字符串内的一个或多个独立表达,执行对于位置相关数据的基于位置的搜索,以使得所述位置相关数据在离所述位置的预定距离内是有关的;以及在所述显示器上的地图上显示所述位置相关数据的至少一部分。
本发明可以提供至少如下一些优点:独立表达可以形成用于超过一个同时搜索的基础,搜索条件可以被做得更复杂,它可能更易于发现相关信息,并且搜索可以是有限的,以使得搜索更加有效但它仍然提供更多的相关信息。
附图说明
本发明示例实施例仅以示例的方式并参照附图描述如下,其中:
图1、2和3示出移动装置的示例性实施例和它的一般操作环境;
图4A、4B、4C、4D、5A、5B、5C、5D、5E、5F、6A、6B、7、8和9示出采用移动装置执行基于位置的搜索的不同示例性实施例;以及
图10是流程图,其说明在移动装置中执行的方法的示例性实施例。
具体实施方式
如下实施例仅仅是一些例子。虽然说明书可以涉及在若干位置中的“一个(种)”实施例,这不一定意味着每次这样的提及是针对相同实施例,或特征仅仅适用于单一的实施例。不同实施方式的单独特征还可以组合以提供另外的实施例。此外,应当理解词“包含”和“包括”并非限制所描述实施例仅仅由被提到那些特征组成,并且这样的实施例还可以包含没有被特别地提到的特征/结构。
应当指出的是,尽管图示了装置的各种实施方式,它们是仅仅显示一些结构和功能实体的简化的方框图。在这些图中所示的连接是逻辑连接;实际的物理连接可以是不同的。在各单元之间的接口可以用合适的接口技术实施,例如消息接口、方法接口、子例程调用接口、块接口、或任何启用功能子单元之间的通信的软/硬件设备。对本领域技术人员而言,显然描述的装置还可以包括其他功能和结构。应当理解,一些功能、结构、以及用于通信的协议的细节与实际发明不相干。因此,这里不必对它们进行更为详细地讨论。虽然移动装置被描绘为独立的单个实体,不同部件可实施在一个或多个物理或逻辑实体中。
图1示出移动装置100的示例性实施例和它的一般操作环境。移动装置100A可以通过通信网络110与电子服务112通信122。在示例性实施例中,移动装置100A可以与定位系统114相互作用120。其他移动装置100B、100C也可以与电子服务112通信124、126。移动装置100A、100B、100C的数量可以从1改变到N,其中N是大于1的任何整数。
在示例性实施例中,移动装置100是便携电子通信装置。移动装置100的类型的非排他性列表包括:移动电话、智能手机、平板计算机、平板手机、智能手表、通用移动计算设备。在示例性实施例中,与有目的构造专用装置相反,移动装置100是通用的现成计算装置,由此研究和开发成本将降低,因为只有特殊用途的软件(而并非硬件)需要被设计、实现和测试。在图3中,移动装置100的示例性实施例被示出:移动装置100是采用多点触摸显示器400的智能手机或平板。此类设备可以采用合适的操作系统,例如诸如iOS、Android、或Windows电话。
在示例性实施例中,电子服务112可以通过合适的计算资源或不同计算资源的组合实现。
在示例性实施例中,计算资源112可以被实施为单台服务器计算机或作为一组计算机。服务器是客户机/服务器计算技术模型的一部分,该模型充当分布式应用,在被称为服务器的资源或服务的供应者以及被称为客户端的服务请求者之间分割任务或工作量。服务器112可以服务若干移动装置100。服务器112可以是运转与客户100共享它们的资源的一个或多个服务器程序的主机。客户100可以从服务器112请求服务功能(搜索)或内容(搜索结果)。此外,客户100可以发起与等候流入请求的服务器112的通信会话。
在示例性实施例中,电子服务112至少可以部分地根据云计算模型操作。自然地,除电子服务112的这些示例性实施例之外,其他可行的计算架构可以也被使用以实施电子服务112的硬件和软件。因此,除了根据客户端/服务器体系结构的操作之外,推送技术可以也被利用。在推送技术中,对事务的要求由电子服务112发起,而采用推送技术对信息的请求由客户端100发起。
在示例性实施例中,通信网络110包括无线标准/非标准/专用通信网络中的至少一个,其耦合于例如因特网的有线网。
在示例性实施例中,无线通信网路110包括不考虑世代(例如2G、3G、4G、超4G、5G等等)的任何移动电话网络,例如GSM(全球移动通信系统)、GPRS(通用分组无线业务)、EGPRS(增强的GPRS)、WCDMA(宽带码分多路存取)、UMTS(通用移动电话系统)、3GPP(第三代合作伙伴计划)、IMT(国际移动电信)、LTE(长期演进、LTE-A(先进的LTE)、移动WiMAX,以及其他无线系统(以它们的当前形式和/或它们的演进形式)。
在示例性实施例中,通信网络支持用户身份模块(SIM)的使用,其可以是存储用户数据的集成电路,所述用户数据是被用来在手机网络上验证并识别订户的网络专用信息。用户身份模块可以手机嵌入到可拆卸SIM卡中。因此,移动装置100可以包括SIM卡(和SIM卡阅读器)。可选地,移动装置100可以包括虚拟或软件SIM卡。
在示例性实施例中,无线通信网路110包括无线局域网(WLAN)、热点、或接入点,所有这些都可以通过使用连接到链接至因特网服务供应商的路由器而提供因特网接入。
在示例性实施例中,定位系统114可以包括全球导航卫星系统(GNSS),例如美国的GPS(全球卫星定位系统)、欧盟的伽利略、俄国的GLONASS卫星导航系统、中国的北斗、或印度的IRNSS。除GNSS外,或代替GNSS,可以采用其他定位技术,例如开发用于蜂窝无线网络的那些技术。
在示例性实施例中,定位系统114包括室内定位系统。在示例性实施例中,室内定位系统114包括由申请人、IndoorAtlas开发的并且在其各种专利/申请中公开的磁定位系统,在此将这些专利/申请引入本文作为参考:US 8,798,924、13/733,439、14/299,582、13/927,854、13/859,944、14/606,358、13/739,640、13/871,612、13/905,655、13/915,016、14/054,264、14/093,250、14/207,916以及14/524,420。在示例性实施例中,此外,或除磁性定位系统之外,室内定位系统114包括其他可应用技术,例如以下的至少一个:混合定位技术、基于Wi-Fi的定位、基于WLAN的定位、基于室内基站的定位、基于IP地址的定位、以及基于移动装置传感器融合的定位。
图2进一步示出了移动装置100的示例性实施例。移动装置100包括显示器210、一个或多个处理器212、以及包括计算机程序代码222的一个或多个存储器220。
在示例性实施例中,显示器210是通过例如液晶显示器(LCD)、薄膜晶体管(TFT)显示器、发光二极管(LED)显示器、有机光发射二极管(OLED)显示器、电致发光显示器(ELD)、或电子纸张(或e纸张或电子墨水)显示器的合适技术实现。显示器也可以包括其他用户交互作用设备,例如触摸输入、或触觉反馈,即显示器可以是如图3所示的多点触摸显示器210。
在示例性实施例中,显示器210是实施与用户的图形、文本和音频信息交换的用户接口208的一部分。例如,用户接口208可以通过例如显示器210、用于产生声音的设备、键盘、和/或数字按键键盘的不同技术来实现。用于再现声音的设备可以是扬声器或用于生产簧音或其他声响信号的简单设备。键盘/键组可以包括完整的(标准传统键盘)键盘、只是数字小键盘或只有几个按钮和/或循环按钮。此外,用户接口208可以包括其他用户接口部件,例如用于聚焦光标(鼠标、轨迹球、箭头键、触摸传感区域等等)或实现音频控制的单元的不同设备。
在示例性实施例中,移动装置100进一步包括被配置为从定位系统114获得移动装置100的自身位置的定位接口228。如图2所示,定位接口228可以从多种源获得位置数据120A、120B、120C。
在示例性实施例中,移动装置100包括GNSS接收机200,其在来源于地球-轨道卫星的信号200的基础上产生位置数据120A。
在示例性实施例中,移动装置100包括室内定位硬件(和软件),其产生位置数据120B。室内定位硬件可以包括磁强计以测量房屋结构(特别是由钢骨-钢筋混凝土(steel-reinforced concrete))所造成的地球磁场变化。此外,在某些情况下,例如,室内定位硬件可以包括加速度传感器(在一、二或三维中测量)和/或陀螺仪。
在示例性实施例中,移动装置100包括蜂窝无线收发器206和/或非蜂窝无线装置收发器204。定位接口228可以获得基于利用收发器204和/或206的无线通信122A、122B而获得/产生的位置数据120B。
在示例性实施例中,蜂窝无线收发器206可以与已经提及的例如任何移动电话网络的不同无线标准/非标准/专有蜂窝通信网络互相协作。
在示例性实施例中,非蜂窝无线装置收发器204可以利用短程无线电收发器,例如蓝牙、蓝牙低能耗(BLE)、Wi-Fi(或WiFi)或其他WLAN收发器(例如,基于IEEE(电气及电子工程师学会)802.11标准或它的进化版本(IEEE 802.11ac等等))。
定位接口228也可以用一些其他装置获得位置数据120C。在示例性实施例中,移动装置100可以包括射频识别(RFID)阅读器,被配置为从固定安装到已知位置的RFID标签读取位置数据120C。在示例性实施例中,移动装置100包括摄像头,并且位置数据120C可以通过为固定地安装到已知位置的机器可读码(例如条形码或QR代码)拍照或通过(从地板、墙壁和/或天花板)拍照或录制视频并从识别的独特特点识别位置。
术语“处理器”212指的是能够处理数据的设备。取决于处理能力需要,移动装置100可以包括几个处理器212,例如并行处理器或多核处理器。当设计处理器212的实施的时候,例如,本领域技术人员将考虑用于移动装置100的大小和功耗、必要的处理能力、生产成本,以及产品体积的需求集合。处理器212和存储器220通过电子电路是可以实施的。
术语“存储器”220指的是能够在运行时(=工作存储器)或永久地(=非易失性存储器)储存数据的设备。工作存储空间和非易失性存储器可以通过随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、闪速存储器、固态盘(SSD)、PROM(可编只读存储器)、合适的半导体、或实施电子计算机存储器的任何其他设备来实施。
在示例性实施例中,系统时钟226持续地产生一连字符串电脉冲,其以有序的方式以及采用特定的定时使得在移动装置100之内的不同转送操作发生。
在示例性实施例中,处理器212可以被实施为微处理器,所述微处理器实施在集成电路上的中央处理器的功能。CPU是执行计算机程序代码222的逻辑机。计算机程序代码222可以被编码为使用编程语言的计算机程序,编程语言可以是例如C、C++语言、或Java的高级程序设计语言,或例如机器语言或汇编语言的低级编程语言。CPU可以包括一组寄存器214、运算单元(ALU)216、以及控制单元(CU)218。控制单元218被从(工作)存储器220转移到CPU的一连串计算机程序代码222所控制。控制单元218可以包含用于基本操作的若干微指令。微指令的实施可以取决于处理器设计而改变。微处理器212也可以具有操作系统(嵌入式系统、实时操作系统、乃至通用操作系统的专用操作系统),它可以提供具有系统服务的计算机程序代码222。
用于处理器212和存储器220的实现技术的非排除性列表包括但不限于逻辑部件、标准集成化电路、专用集成电路(ASIC)、片上系统(SoC)、专用标准产品(ASSP)、微处理器、微控制器、数字信号处理器、专用计算机芯片、现场可编程门阵列(FPGA),以及其他合适的电子结构。
计算机程序代码222可以通过软件和/或硬件实施。在示例性实施例中,软件可以通过合适的编程语言被写入,产生的可执行码222可以被储存在存储器220中并通过处理器212运行。
在示例性实施例中,硬件的功能可以通过合适的硬件描述语言(例如Verilog或VHDL)来设计并转变成门级网表(netlist)(其描述标准单元和它们之间的电连接),在进一步的阶段之后,实施移动装置100的处理器212、存储器220和代码222的芯片可以采用描述电路的遮光模制造。
在示例性实施例中,例如,处理器212和存储器220是分离实体,通过适当的字符串行总线可通信地耦合在一起。不同单元之间的接口可以采用合适的接口技术来实施,例如消息接口、方法接口、子例程调用接口、块接口、适当的字符串行/并行总线,或使能移动装置100的各项子单元之间的通信的任何软硬件设备。
示例性实施例提供包括计算机程序的计算机可读介质230,计算机程序包括计算机程序代码222,当计算机程序代码被装入移动装置100时使得移动装置100执行:获得字符串;获得与所述字符串相关的位置;基于所述位置和所述字符串内的一个或多个独立表达,执行对于位置相关数据的基于位置的搜索,以使得所述位置相关数据在离所述位置的预定距离内是有关的;以及在地图上显示所述位置相关数据的至少一部分。
移动装置100的示例性实施例可以用于增强计算机程序代码222的操作。有多种方式构成计算机程序代码222。在示例性实施例中,取决于软件设计方法和使用的编程语言,计算机程序代码222的操作可以分成功能模块、子程序、方法、类、对象、小应用(applets)、宏命令,等等。在现代编程环境中,有软件库,即现成功能的编译(compilation),其可以由计算机程序代码222使用以执行各种各样的标准操作。在示例性实施例中,计算机程序代码222可以采用源代码形式、目标代码形式、可执行文件或一些中间格式。计算机可读介质230至少可以包括下列:能够承载计算机程序代码222至移动装置100的任何实体或设备、记录介质、计算机存储器、只读存储器、电子载波信号、电信信号、以及软件分发介质。在一些管辖权中,取决于立法和专利实践,计算机可读介质230可能不是电信信号。在示例性实施例中,计算机可读介质230可以是非暂时性计算机存储介质。
自然地,移动装置100可以包括不同的其它部分,例如电池、摄像头、或射频标识符阅读器,但是因为进一步说明示例性实施例用不着它们,所以不对它们作进一步描述。
既然介绍了移动装置100的基本结构,我们可以继续参考图3和图4A、4B、4C、4D、5A、5B、5C、5D、5E、5F、6A、6B、7、8和9更详细地描述移动装置100的操作,图3给出功能的更加详细的视图,图4A至图9示出采用移动装置100的基于位置搜索的不同示例性实施例。
一个或多个存储器220和计算机程序代码222被配置为采用一个或多个处理器212使移动装置100获得字符串320。
在示例性实施例中,字符串320包括自由形式的书写文本,它实现了通信媒介,其代表了通过标记和符号的题词的语言。
在示例性实施例中,字符串320包括一个或多个表达322A、322B。表达322A、322B的数量可以从1变到K,其中K是大于1的任何整数(自然地在搜索处理能力之内)。
在示例性实施例中,表达322A、322B实现了通过语言而交流的想法。
在示例性实施例中,表达322A、322B包括选自预定词汇表的一个或多个词。在示例性实施例中,一个或多个词根据语法被组织,并定义语义。因此,表达322通过从词汇表识别的一个或多个已知词而被识别。在进一步分析表达322时,语法可以提供规则,根据其表达322被解释。同样可以要求语义的分析。
在示例性实施例中,预定词汇表被定义为一个或多个语言的集合或子集。
在示例性实施例中,字符串320包括一系列字符。字符可包括字母表、数字和特殊字符。在示例性实施例中,字符基于ASCII码或EBCDIC。尽管我们的示例性实施例利用拉丁字母表,示例性实施例可以适用于其他字母表(俄语、希腊语、希伯来语、阿拉伯语等等)而且适用语标语言(中文、日文、韩文等等),语标语言使用要复杂得多的字符(例如汉字)。
在示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为采用一个或多个处理器212进一步使得移动装置100从显示器210上显示的自由形式文本获得字符串320。在示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为采用一个或多个处理器212,进一步使得移动装置100从自由形式的文本获得与字符串320相关联的位置。
在示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为采用一个或多个处理器212,进一步使得移动装置100从显示器210上的消息收发接口中显示的自由形式文本获得字符串320。在示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212进一步使得移动装置100获得另一移动装置100B的位置作为与字符串320相关的位置,所述另一移动装置是消息收发接口中的发送方或接收方。
在示例性实施例中(见图7),一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100从显示在显示器210上的日历事件(例如邀请、约定或会议)获得字符串320。在示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100获得日历事件中定义的位置作为与字符串320相关的位置。日历事件的其他领域还可以被用于完善基于位置的搜索:例如主题、开始时间和终止时间。在典型使用情形中:用户接收日历邀请,会议室的位置对用户显示,可能还带有路线指令。此外,在开始时间和终止时间的基础上,邻近餐馆的位置和午餐目录可以被搜索并且由此使得的位置相关数据显示在显示器210上。
在示例性实施例中、一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100从用无线收发器204和/或206接收的自由形式的文本获得字符串320。
在示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为:采用一个或多个处理器212,进一步使得移动装置100从存储器220中驻留的以下至少一个挖掘出的自由形式的文本获得字符串320:文本文件、图像文件、视频文件、音频文件、到文本文件的索引、到图像文件的索引、到视频文件的索引、到音频文件的索引。可以采用适当的话音识别和机器视觉(或模式分析)程序来分析图像、视频和音频文件,以便产生字符串320。
在示例性实施例中,字符串320包括驻留在存储器220中的下述单元中的至少一个:图像文件、视频文件、音频文件、到图像文件的索引、到视频文件的索引、到音频文件的索引,并且一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100在一个或多个元件之内将一个或多个数字对象识别为独立表达322A、322B,并且执行基于位置的搜索,以使得用于一个或多个数字对象形式的模式识别搜索形成基于位置的搜索的至少一部分。模式识别基于模式的识别和在数据中的规律性。对于视频和图像,计算机视觉技术可以形成模式识别的一部分。字符串320由此可以包括图像文件、视频文件、或音频文件,表达322A由此可以是图像/视频/音频文件的一部分。此外或者可替代地,字符串320也可以包括到图像文件的索引、到视频文件的索引、到音频文件的索引,由此表达322A可以是被索引所间接引用的(dereferenced)图像/视频/音频文件的一部分。在示例性实施例中,字符串320仅仅含有计算机产生的表达,其确定到图像文件、视频文件、音频文件或到其他类型的媒体文件的索引(例如,到文件的指针,或文件的存储位置的定义)。
典型使用情形:一名女子用她的移动装置100B与一名男子的移动装置交流,她需要在附加图像中所示的化妆品套装。男子的位置被获得,并且基于位置的搜索被执行:附近哪些商店出售化妆品套装,进一步的搜索可被执行以匹配化妆品套装的图像,关于可用性、价格等等的信息可以因此显示在男子的移动装置100A中作为位置相关数据。在示例性实施例中,基于位置的搜索可以是多阶段的:首次搜索可以给出在预定距离之内的一些数据库(例如不同商店的产品数据库),由此,在第二搜索中发现的数据库被搜索(例如,用产品定义)。
一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100采用定位接口228获得移动装置100的自身位置作为与字符串320相关的位置。自身位置可以被表示为地理坐标,或地图上(例如,室内地图上)的位置。
在示例性实施例中、一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100获得其他移动装置100B、100C中的至少一个的至少一个其他位置,并且在自身位置和至少一个其他位置的基础上产生与字符串320相关的位置。
在示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100通过以下之一执行基于位置的搜索:位置相关数据从自身位置或从至少一个其他位置在预定距离内相关,或位置相关数据在离由自身位置和至少一个其他位置所定义的组合区域的预定距离之内是相关的。在该示例性实施例中,与字符串320相关的位置是移动装置100A、100B、100C作为单独区域的位置或作为从移动装置100A、100B、100C的位置形成的组合区域的位置。因此。例如,我们假设有两个移动装置100A、100B,并且移动装置100A处于城市Z的地区A,移动装置100B现在处于城市Z的地区B。现在,位置是地区A和地区B或有地区A、B和D组成的组合区域,其中D是在地区A和B之间的地区。
一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100在自身位置和在字符串320之内的一个或多个独立表达322A、322B的基础上,为位置相关数据324A、324B执行基于位置的搜索,以使得位置相关数据324A、324B在离自身位置的预定距离内是相关的。预定距离可以以米、公里、码、或英里定义。例如,距离可以相对于例如圆的半径几何形状表示。可选地,预定距离可以确定为在例如商店或商场的特定建筑物或综合建筑之中或在其附近。
实际上,基于位置的搜索可以在移动装置100中或在电子服务112中执行。基于位置的搜索的实际执行还可以在移动装置100和电子服务112之间划分。
因此,在示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100通过经由无线收发器204和/或206与外部电子服务112通信来执行基于位置的搜索的至少一部分。在另一示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100通过与存储在存储器220中的数据库224相互作用来执行基于位置的搜索的至少一部分。
在示例性实施例中,移动装置100进一步包括数据库224,数据库包括表达-数据-对(expression-data-pair),一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100通过用每一表达反复地搜索数据库224来执行基于位置的搜索。
在示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100在显示器210上的地图326上显示位置相关数据324A、324B的至少一部分。
四个描述的操作序列——获得字符串、获得位置、执行基于位置的搜索、以及显示位置相关数据——实施了新的且有效的搜索引擎。搜索引擎结合消息传送和动态、位置敏感的表达搜索。全球首次,自然语言搜索输入与消息传送和实时(或近实时)表达式搜索耦合,向终端用户提供发现、探索和共享他周围的事情、品牌、服务,以及产品的自然方式。众包(crowd sourcing)特征可以保证最新的和最复杂搜索数据库的可用性。
在示例性实施例中,搜索引擎应用程序的主要三种单元是:
1.消息传送310。用户可以向/从其他用户发送与接收自由形式的消息。消息传送310可以建立在现有的消息应用程序、应用程序接口、或开源解决方案的顶部。作为现有消息通信传送应用或技术的例子,以下列表被给出:SMS(短消息服务、MMS(多媒体短信息服务)、电子邮件、IRC(因特网中继聊天)、Slack、Skype、Instagram、QQ、WhatsApp、FacebookMessenger、WeChat、Snapchat、LINE。
2.搜索312。消息收发接口320充当动态搜索条。基于位置(例如商场、商店、办公室、校园、会议地点),搜索引擎对搜索条上自由形式的表达执行基于位置的搜索:基于位置的搜索成为消息传送310的组成(integral)和动态部分。
3.地图314。用户可以使用地图接口314检查搜索引擎识别出的与表达相关的位置,并将新的、未被认出的表达关联到正确的地图位置。这可以通过例如拖放新表达至正确的地图位置来完成。地图接口314也可以提供路径规划和寻找路线的特性。
在示例性实施例中,独立表达322A、322B是独立的,以使得每一表达322A、322B使得能够进行自身的基于位置的搜索,对于每一搜索具有自身的结果324A、324B。
图4A、4B、4C和4D示出了与自由形式的采购单有关的示例性实施例。
在图4A中,通过消息传送部件接收采购单(=字符串)320。对可能的用户交互来说,虚拟键盘400也是可见的。
在图4B中,在字符串320之内三个表达322A、322B、322C被识别:“茶”、“牛奶”和“蜂蜜”。
在图4B的示例性实施例中,消息收发接口310同时充当搜索接口312,以使得组合的消息传送和搜索接口310+312在显示器210上显示。这样的用户接口单元310+312非常有力地实现了改善的使用简单性。
事实上,这样的示例性实施例同样是可行的,其中组合的消息传送和搜索接口310+312被用于简单搜索,即搜索并非基于位置。在这样的情况下,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,使得移动装置100实施如下操作序列:获得字符串320,并在组合的消息传送和搜索接口310+312中在字符串320之内的一个或多个独立表达322A、322B的基础上进行数据搜索,在显示器210上的地图326上显示数据324A、324的至少一部分。本示例性实施例可以通过取出搜索的基于位置的性质由公开的其它示例性实施例来扩充。
例如,在图4B所示的示例性实施例中,简单搜索可被实施如下:一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100在以一个或多个独立表达322A、322B、322C在字符串320之内变得可区分而显示字符串320之后,接收一个或多个独立表达322C中的至少一个的用户选择410,以及在用户选择(在我们的例子中为“蜂蜜”)410的基础上进行搜索。可选地,这可被实施以使得一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100,在获得字符串320之后,接收显示在显示器210上的一个或多个独立表达322C的用户选择410,以及在用户选择410的基础上进行搜索。
取决于识别是否在获得字符串之后、在执行基于位置的搜索之前、或作为基于位置的搜索的一部分而做出,表达322A、322B、322C可以通过至少三个不同示例性实施例在字符串320之内被识别出。
在第一示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100,在获得字符串320之后,自动识别字符串320之内的一个或多个独立表达322A、322B、322C。
在第二示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100在执行基于位置的搜索之前自动识别字符串320之内的一个或多个独立表达322A、322B、322C。
在第三示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100作为基于位置的搜索的一部分,在字符串320之内自动识别一个或多个独立表达322A、322B、322C。
在图4B的示例性实施例中,在获得字符串320之后,在执行基于位置的搜索之前,或作为基于位置的搜索的一部分,三个表达322A、322B、322C可能已经被识别出。
图4B也说明示例性实施例,其中一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100在显示器210上的地图326上显示位置相关数据,以使得对每个基于位置的搜索,通过如下之一方式显示位置相关数据:同时为每个基于位置的搜索显示位置相关数据、为每个由用户交互选择的基于位置的搜索显示位置相关数据。在图4B我们的示例性实施例中,位置相关数据通过用户交互而显示:用户轻敲410“蜂蜜”322C,由此根据位置相关数据(其包括:蜂蜜的位置)蜂蜜的位置416在地图326上显示。可选地,或额外地,同时可以显示用于每一基于位置的搜索的位置相关数据:茶和牛奶的位置420、422连同蜂蜜的位置416也被显示。
图4B也示出了示例性实施例,其中定位接口228包括早些时候解释过的到室内定位系统114的接口。一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100执行基于位置的搜索,以使得位置相关数据324A、324B与包括建筑物的室内位置相关联。如图4B所示,室内位置被识别为“商店Q”418。例如,预定距离可以定义建筑物、建筑物的一部分、建筑物的翼、建筑物的特定层或特定的多个层。
图2和4B也示出了示例性实施例,其中移动装置100进一步包括数据库224,其内容被分类成位置等级,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100选择数据库224的子集,以使得位置等级对应于自身位置,商店Q 418,并且用一个或多个独立表达322A、322B、322C为数据库224的子集执行基于位置的搜索。在我们的示例性实施例中,基于位置的搜索变得非常有效,因为“茶”322A,“牛奶”322B和“蜂蜜”322C仅需要搜寻商店Q418,即位置相关数据416在离自身位置412的预定距离之内是有关的,其中在这种情况下预定距离可解释为“在商店Q之内”。自然地,由于“茶”、“奶”和“蜂蜜”的位置可以在商店和商店之间改变,只有基于位置的搜索产生可以在正确的地图326上显示(由相关联的位置决定的)位置相关数据。
图4B也示出示例性实施例,其中一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100在显示器210上的地图326上显示自身位置412,并且在显示器210上的地图326上显示自身位置412和与位置相关数据相关联的位置416(=蜂蜜的位置)之间的路径414。本示例性实施例可以通过提供导航来扩充,例如在显示器210上给出指令或采用帮助用户跟随路径414的距离、转向等等的声音。
图4B也示出示例性实施例,其中一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100地图326上显示与表达322C有关的位置相关数据416并且同时在显示器210上显示表达322C。
图4B也示出示例性实施例,其中一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100,在识别在字符串320内的一个或多个表达322A、322B、322C之后,显示字符串320,以使得一个或多个独立表达322A、322B、322C在字符串320内变得可区分。在我们的示例性实施例中,表达“茶”322A、“牛奶”322B和“蜂蜜”322C可以通过各种方式被做成可区别的:强调文本、给文本加下划线、改变文本的颜色、改变文本的字体、改变文本的大小、通过文本放置恰当的符号,通过与文本有关的标识或图像放置恰当的符号,等等。
图4B也示出示例性实施例,其中一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100,在显示字符串320以使得一个或多个独立表达322A、322B、322C在字符串320内变得可区分之后,接收一个或多个独立表达322A/322B/322C中的至少一个的用户选择,以及在用户选择的基础上执行基于位置的搜索。在我们的示例性实施例中,表达“茶”322A、“牛奶”322B和“蜂蜜”322C可能在位置相关搜索之前已经被识别出,而且在用户选择410之后位置相关搜索仅仅针对“蜂蜜”322C执行。
图4B也示出示例性实施例,其中一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100通过识别结构的列表类型在字符串320之内识别每个表达322A、322B、322C,所述结构列表包括通过预定义的字符分离的表达,所述预定义的字符包括以下至少一个:空格、逗号、标点符号、预定字符、预定符号。在我们的示例性实施例中,逗号被用作表分隔符。词“和”同样可以被识别为该列表中的分隔符,但是在我们的示例性实施例中我们已经假定词“烤面包”没有被识别出,并且因此未做标记。
图4C示出示例性实施例,其中一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100接收与表达322C相关的用户交互(例如滑动、轻敲,或通过用户接口208支持的其他合适的手势),以及显示字符串320以使得表达322C在字符串320之内被标明为已处理。在我们的示例性实施例中,表达“蜂蜜”322C被击打出去(struck-out),但是自然地,将表达322C标记为已处理的其他方法也可以利用。
图4D示出示例性实施例,其中一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100,在获得字符串320之后,接收显示在显示器210上的一个或多个独立表达442的用户选择440,以及在用户选择440的基础上执行基于位置的搜索。在我们的示例性实施例中,表达“烤面包”442还没有被识别出,因此用户选择440这个词。
图4D示出示例性实施例,其中一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100:如果作为结果,基于位置的搜索没发现任何位置相关数据,则接收用户交互440、444、446、448,所述用户交互确定了表达442的用户定义的位置452,并且用户定义的位置452在地图326上被作为位置相关数据的至少一部分而显示。如图4D,“烤面包”450还可以通过用户定义的位置452显示。在示例性实施例中,表达442可以在视频、图像、或音频文件中,由此文件或文件的索引还可以通过用户定义的位置显示。将来,通过在用户定义的位置452点击它,移动装置100A的用户,或其他移动装置100B、100C的用户可以观看或听文件。
图4B也示出示例性实施例,其中一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100确定表达322C是否对应于与预定位置相关联的索引,如果表达322C对应于索引,在显示器210上的地图326上显示在预定位置416中的位置相关数据。
图4D也示出示例性实施例,其中一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100接收用户交互440、444、446、448,所述用户交互确定了用于表达442的用户定义的位置452,并且用户定义的位置452在地图326上被作为位置相关数据的至少一部分显示。
在又一示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100,在接收用户交互440、444、446、448之前,确定表达442是否对应于与预定位置相关的索引,并且如果表达442与索引不对应,在显示器210上显示查询454,查询454询问表达442被关联到哪一个用户定义的位置,并接收用户交互作为对查询454的回应。
在又一示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100接收作为拖放操作440、444、446、448的用户交互。应当注意的是,采用本示例性实施例,之前的示例性实施例可以被避免,即不需要进行查询。
在又一示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100采用无线收发器204或206向外部电子服务112传输关于表达442和相关联的用户定义位置452的信息122,外部电子服务112以众包(crowd-sourcing)的方式收集和维护信息,并且向其他移动装置100B、100C分发关于表达442和相关的用户定义位置452的信息。在示例性实施例中,可以有一些(可能是用户定义的)限制,所述限制限定了被允许接收以众包方式收集的信息的其他移动装置100B、100C的小组。
在示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100允许确定了用于表达442的用户定义位置452的用户交互440、444、446、448(即使基于位置的搜索发现了作为结果的位置相关数据),以便提高用户定义位置的准确度。在我们的示例性实施例中,用于“烤面包”的位置可以被改善,因为一些用户被允许确定其用户定义位置452。用户定义的位置452然后可以在统计上被校准。此外,或可替代地,每个用户定义位置452可以受制于社会适度(socialmoderation):例如,用户可以在地图326上提供用户定义的位置的准确度的反馈(通过赞成(拇指向上)或反对(拇指向下))。
在示例性实施例中,移动装置100进一步包括数码相机,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100接收产品的图片或它的机器可读标识符(例如条形码),关联图片或在机器可读的标识符的基础上获得的辅助信息,并且可能地,传输图片或辅助信息到外部电子服务112作为关于表达442的信息122的一部分。在我们的例子中,“烤面包”的图片或获得的关于“烤面包”的辅助信息(品牌、重量、价格等等)可以由用户搜集到。
图5A、5B、5C、5D、5E和5F示出与前往咖啡馆有关的示例性实施例。
在图5A中,邀请(=字符串)320由移动装置100A中的消息传送部件被接收到。对可能的用户交互来说,虚拟键盘400也是可见的。表达“咖啡馆”322在字符串320内被识别出。
基于位置的搜索生产两个结果“咖啡馆X”324A和“咖啡馆Y”324B作为位置相关数据,位置相关数据在离移动装置100A的本身位置的预定距离内是有关的。位置相关数据324也包括进一步的单元:两个咖啡馆的标识502、504,以及咖啡馆X的10%折扣500。
在示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100产生虚设结果(dummy result)作为位置相关数据的一部分,虚设结果包括独立表达322。即使实际结果也被发现,虚设结果也可以被显示。在我们的示例性实施例中,虚设结果“咖啡馆”可以在两个结果“咖啡馆X”324A和“咖啡馆Y”324B下面被显示。在示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100接收虚设结果的用户交互,其确定了表达322的用户定义的位置,并且用户定义的位置在地图326上作为位置相关数据的至少一部分被显示。在进一步的示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100接收作为拖放操作的用于虚设结果的用户交互(与图4D中公开的440、444、446、448相似)。
图5B示出示例性实施例,其中一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100以显示在显示器210上的字符串320中的位置相关数据324A,500来代替一个或多个独立表达322。在我们的示例性实施例中,“咖啡馆”被替换成“咖啡馆X[10%折扣]”。在示例性实施例中,位置相关数据324A,500包括定向的广告,即在一些选择条件(位置、时间、星期几、性别、年龄等等)基础上定向的广告。
图5B进一步示出示例性实施例,其中一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100用显示在显示器210上的字符串320中的位置相关数据324A、500来代替512一个或多个独立表达322,以使得位置相关数据包括多个替代品324A/324B,并且基于用户选择510,一个或多个替代品324A被选出并被替换512。在我们的示例性实施例中,用户选择咖啡馆X,其然后替换“咖啡馆”。
在示例性实施例中,一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100在用位置相关数据来代替一个或多个独立表达322时,嵌入附加数据500作为位置相关数据的一部分。在示例性实施例中,附加数据包括如下至少之一:至网络中位置的链接、至文件的链接、至社交媒体中动作的链接、统一资源标识符(URI,例如统一资源定位符URL,和/或统一资源名URN)。在我们的示例性实施例中,附加数据是到折扣券的链接(或到文件或到网络中的存储位置)。
在图5C中,用户选择520被替换的表达512,由此用户自身位置522、咖啡馆X的位置526、以及从自身位置522至咖啡馆X的位置526的路线524在地图326上显示。此外,基于位置相关数据324A,行进时间,两分钟,由目的地示出,以此在显示器210上的地图326上显示位置相关数据324A的至少一部分。可以理解,当留在相同显示模式时,获得字符串322、执行基于位置的搜索、显示位置相关数据324A、324B、500、502、504,以及在地图326上显示位置相关数据324A的至少一部分,没有必要被完整处理:在我们的示例性实施例中,图5A、5B和5C的显示模式顺序地彼此跟随。
在图5D示出示例性实施例中,其中一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100用无线收发器204或206向另一移动装置100B传输含有一个或多个表达322被位置相关数据324A,500代替512的字符串320。在我们的示例性实施例中,其他移动装置100B在它的显示器210上显示接收的字符串530,从字符串530中表达534被识别,由此其他移动装置100B的用户用键盘400打出响应532至移动装置100A的用户。在该示例性实施方式中,移动装置100A的用户向另一移动装置100B的用户共享所选的咖啡馆X。通过这种方式,组合的消息传送和搜索导致了邀请/推荐。
在图5E中,用户选择540表达534,因此,如图5F所示,作为位置相关数据324A的一部分,折扣券在其他移动装置100B的显示器210上显示。在我们的示例性实施例中,用户已经选择550具有条形码556的折扣券。其它备选方案552使用QR码。自然地,提供折扣券的其他方法也可以利用(例如通过RFID通信)。折扣券还可以在明文554中包括供货和商店细节。支付时,用户可以在咖啡馆X的柜台显示折扣券,由此店员可以机器读取条形码556并给予10%折扣。
图5A、5B、5C、5D、5E和5F中示出的示例性实施例,可以通过进一步的示例性实施例进行扩充,其中一个或多个存储器220和计算机程序代码222被配置为,采用一个或多个处理器212,进一步使得移动装置100,在获得字符串320之后,处理字符串320作为词的开始部分,并执行基于位置的搜索,以便发现匹配词的开始部分的大量替代方案。让我们举一简单的例子。用户在显示器210上开始写一词“ca”,由此获得该自由形式的文本作为字符串320。采用定位接口228还获得移动装置100的自身位置。对位置相关数据的基于位置的搜索在自身位置和字符串320内的独立表达“ca”基础上执行,以使得位置相关数据在离自身位置的预定距离内是有关的。基于位置的搜索“猜测”用户可能的用意:“ca”被解释成是指“咖啡馆”、“汽车商店”和“猫食品”,并且执行三种独立的基于位置的搜索:对“咖啡馆”的第一搜索,对“汽车商店”的第二搜索和对“猫食品”的第三搜索。注意猜测可以涉及位置,但是可选地,或此外,同样可以涉及项目(例如包括产品及服务的消费品)。这些结果可以显示为图5A中的列表,或可选地,例如显示在图5C的地图326上。然后可以执行之前描述的替换和传输。
图6A和6B示出用于共享位置的示例性实施例。
亚历克斯通过向克里斯写字符串320“嗨,克里斯,我在这里”来共享他的位置,表达322“我在这里”从该字符串被识别出。图6A显示克里斯的移动装置100。
在图6B中,克里斯用字符串600“一会儿见”来回答。克里斯还敲入(tap)602表达322“我在这里”,由此,克里斯的自身位置604,连同亚历克斯的位置608以及从克里斯至亚历克斯的建议路线606被显示。
图6A和6B进一步示出购物的社交方面。我们假设字符串320是“嗨,克里斯,我这里发现极好的鞋子”。表达“这里”被解释成指的是用户位置(位置可以在随后用早些时候描述的种种方式获得)。采用这种方式,通过基于位置的搜索经验可以在朋友间分享、扩充。
图7、8和9示出一般搜索结果的示例性实施例。
在图7中,从字符串320“会议室TS101”识别表达“TS101”322。用户敲入700表达322,因此,用户的自身位置702,连同会议室的位置706和路线建议704在显示器210上显示。
在图8中,用户写字符串320,从该字符串识别出表达322“冰淇淋”,由此两个结果800、802在显示器210上显示。在示例性实施例中,结果800、802由商店、进口商、制造商,或对改进的产品800、802的成功感兴趣的其他方得以升级。
在图9中,用户接收字符串320,从该字符串表达322“门34”被识别出。用户用表达902写响应字符串900。最后,用户敲入904表达322,由此,用户的自身位置906连同门34的位置910和路线建议908在显示器210上显示。
接下来,让我们研究说明在移动装置100中执行的方法的图10。操作不是严格地按时间顺序,某些操作可以同时被执行或与给出的次序不同的那些次序执行。其他功能还可以在操作之间或在操作内执行并且其他数据可以在操作之间交换。某些操作或部分操作还可以忽略或用相应操作或操作的一部分替换。应当指出的是,除了因处理顺序的逻辑要求而必需的情况之外不要求操作的特别顺序。
当移动装置100已接通并开始处理字符串时,方法于1000开始。
在1002,获得字符串。
在1004,获得与字符串相关联的位置。
在1006,在位置和字符串内的一个或多个独立表达的基础上,执行对位置相关数据的基于位置的搜索,以使得位置相关数据在离位置的预定距离内是有关的。
在1008,在地图上显示位置相关数据的至少一部分。
如果移动装置100被关闭,该方法结束于1010,或该方法在所有未决字符串被处理之后被悬置直到获得下一个尚未处理的字符串。
移动装置100的已经描述的示例性实施例可以利用不同的进一步的示例性实施例来增强该方法。
对本领域技术人来说显而易见的是,由于技术的发展,发明构思可以用各种方式实现。本发明和它的实施例不限于如上所述的示例性实施例,但是在权利要求的范围内可以改变。

Claims (47)

1.一种移动装置,包括:
显示器;
一个或多个处理器;和
包括计算机程序代码的一个或多个存储器;
所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器使得所述移动装置至少:
获得字符串;
获得与所述字符串相关联的位置;
基于所述位置和所述字符串内的一个或多个独立表达,执行对于位置相关数据的基于位置的搜索,以使得所述位置相关数据在离所述位置的预定距离内是有关的;和
在所述显示器上的地图上显示所述位置相关数据的至少一部分。
2.如权利要求1所述的移动装置,其中所述独立表达是独立的,以使得每一表达引起自己的基于位置的搜索。
3.如权利要求2所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
在所述显示器上的地图上显示所述位置相关数据,以使得对于每个基于位置的搜索,通过以下之一来显示位置相关数据:同时显示用于每个基于位置的搜索的位置相关数据、显示由用户交互选择的用于每个基于位置的搜索的位置相关数据。
4.如权利要求1所述的移动装置,其中所述移动装置进一步包括定位接口,所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
采用所述定位接口获得所述移动装置的自身位置作为所述位置。
5.如权利要求4所述的移动装置,其中所述定位接口包括到室内定位系统的接口。
6.如权利要求4所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
获得至少一个其他移动装置的至少一个其他位置;和
基于所述自身位置和所述至少一个其他位置产生与所述字符串相关的位置。
7.如权利要求6所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
通过以下方式之一执行基于位置的搜索:使得所述位置相关数据在离所述自身位置或离所述至少一个其他位置的预定距离内是有关的,或者,使得所述位置相关数据在离由所述自身位置和所述至少一个其他位置所定义的组合区域的预定距离内是有关的。
8.如权利要求1所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
执行基于位置的搜索,以使得所述位置相关数据与包括建筑物的室内位置相关联。
9.如权利要求1所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
从所述显示器上显示的自由形式的文本获得所述字符串。
10.如权利要求9所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
从所述自由形式的文本获得与所述字符串相关联的位置。
11.如权利要求1所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
从所述显示器上的消息收发接口中显示的自由形式的文本获得所述字符串。
12.如权利要求11所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
获得另一移动装置的位置作为与所述字符串相关联的位置,所述另一移动装置是所述消息收发接口中的发送方或接收方。
13.如权利要求11所述的移动装置,其中所述消息收发接口同时充当搜索接口,以使得在所述显示器上显示组合的消息收发和搜索接口。
14.如权利要求1所述的移动装置,其中所述移动装置进一步包括无线收发器,并且所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
从使用无线收发器作为消息通信的自由形式的文本获得所述字符串。
15.如权利要求14所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
获得另一移动装置的位置作为与所述字符串相关联的位置,所述另一移动装置是所述消息中的发送方或接收方。
16.如权利要求1所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
获得至少一个其他移动装置的至少一个位置作为与所述字符串相关联的位置。
17.如权利要求1所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
从自由形式的文本获得所述字符串,所述自由形式的文本从驻留在存储器中的下述至少一个挖掘得出:文本文件、图像文件、视频文件、音频文件、到文本文件的索引、到图像文件的索引、到视频文件的索引、到音频文件的索引。
18.如权利要求1所述的移动装置,其中所述字符串包括驻留在存储器的下述单元中的至少一个:图像文件、视频文件、音频文件、到图像文件的索引、到视频文件的索引、到音频文件的索引,并且所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
将一个或多个单元内的一个或多个数字对象识别为所述独立表达;和
执行基于位置的搜索,以使得用于一个或多个数字对象的模式识别搜索形成基于位置的搜索的至少一部分。
19.如权利要求1所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
在获得所述字符串之后,自动识别所述字符串内的一个或多个独立表达。
20.如权利要求19所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
在执行基于位置的搜索之前,自动识别所述字符串内的一个或多个独立表达。
21.如权利要求19所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
作为基于位置的搜索的一部分,自动识别所述字符串内的一个或多个独立表达。
22.如权利要求19所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
在识别所述字符串内的一个或多个表达之后,显示字符串以使得所述一个或多个独立表达在所述字符串之内变得可区分。
23.如权利要求19所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
在显示所述字符串以使得所述一个或多个独立表达在所述字符串之内变得可区分之后,接收所述一个或多个独立表达的至少一个的用户选择,并基于所述用户选择执行基于位置的搜索。
24.如权利要求1所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
接收与表达有关的用户交互,并且显示所述字符串以使得所述表达被标记为在所述字符串内被处理过。
25.如权利要求1所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
在获得所述字符串之后,接收在所述显示器上显示的所述一个或多个独立表达的用户选择,并且基于所述用户选择执行基于位置的搜索。
26.如权利要求25所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
如果基于位置的搜索没发现作为结果的任何位置相关数据,接收用户交互,所述用户交互确定了用于所述表达的用户定义的位置,并且所述用户定义的位置被显示在地图上作为所述位置相关数据的至少一部分。
27.如权利要求1所述的移动装置,其中所述移动装置进一步包括无线收发器,并且所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
通过经由无线收发器与外部电子服务的通信,执行所述基于位置的搜索的至少一部分。
28.如权利要求1所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
通过与存储在存储器中的数据库进行交互,执行所述基于位置的搜索的至少一部分。
29.如权利要求1所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
在所述显示器上显示的字符串中使用所述位置相关数据来代替一个或多个独立表达。
30.如权利要求29所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
在所述显示器上显示的字符串中使用所述位置相关数据来代替一个或多个独立表达,使得所述位置相关数据包括多个替代品,并且基于用户选择一个或多个替代品被选出和替换。
31.如权利要求30所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
在获得所述字符串之后,作为词的开始部分处理所述字符串,并执行基于位置的搜索以便发现匹配所述词的开始部分的多个替代品。
32.如权利要求29所述的移动装置,其中所述移动装置进一步包括无线收发器,所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
用无线收发器向另一移动装置传输含有以所述位置相关数据代替一个或多个表达的字符串。
33.如权利要求29所述的移动装置,其中所述移动装置进一步包括无线收发器,所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
当以所述位置相关数据代替一个或多个独立表达时,嵌入附加数据作为位置相关数据的一部分。
34.如权利要求33所述的移动装置,其中所述附加数据包括下述中的至少一个:到网络中的位置的链接、到文件的链接、到社交媒体中的动作的链接、统一资源标识符。
35.如权利要求1所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
在所述显示器上同时显示与地图上的所述表达有关的位置相关数据以及所述表达。
36.如权利要求1所述的移动装置,其中所述表达包括选自预定词汇表的一个或多个词。
37.如权利要求1所述的移动装置,其中所述移动装置进一步包括数据库,所述数据库包括表达-数据对,所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
通过用每一表达反复地搜索数据库执行基于位置的搜索。
38.如权利要求1所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
通过辨别包括被预定义的字符分隔的表达的结构类型列表,识别所述字符串内的每个表达,所述预定义的字符包括以下至少一个:空格、逗号、标点符号、预定字符、预定符号。
39.如权利要求1所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
确定所述表达是否对应于与预定位置相关联的索引;和
如果所述表达对应于所述索引,在所述显示器上的地图上的预定位置显示所述位置相关数据。
40.如权利要求1所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
接收用户交互,所述用户交互确定了用于所述表达的用户定义的位置,并且所述用户定义的位置被显示在地图上作为所述位置相关数据的至少一部分。
41.如权利要求40所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
在接收所述用户交互之前,确定所述表达是否对应于与预定位置相关联的索引;以及
如果所述表达与所述索引不对应,在所述显示器上显示查询,所述查询询问所述表达相关联的用户定义的位置是哪一个;以及
接收所述用户交互作为对查询的回应。
42.如权利要求40所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
接收所述用户交互作为拖放操作。
43.如权利要求40所述的移动装置,其中所述移动装置进一步包括无线收发器,所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
采用所述无线收发器向外部电子服务传输关于所述表达和相关联的用户定义位置的信息,所述外部电子服务以众包的方式收集和维护所述信息,并向其他移动装置分发关于所述表达和相关的用户定义位置的信息。
44.如权利要求1所述的移动装置,其中所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
在所述显示器上的地图上显示所述位置;和
在所述显示器上的地图上显示所述位置和由位置相关数据定义的另一位置之间的路线。
45.如权利要求1所述的移动装置,其中所述移动装置进一步包括其内容被分类成位置等级的数据库,所述一个或多个存储器和计算机程序代码被配置为,采用所述一个或多个处理器进一步使得所述移动装置:
选择所述数据库的子集,以使得位置等级对应于所述位置;以及
采用所述一个或多个独立表达执行对于数据库的子集的基于位置的搜索。
46.一种包括计算机程序的非暂时性计算机可读存储介质,所述计算机程序包括计算机程序代码,当所述计算机程序代码被加载进移动装置时使得该移动装置执行:
获得字符串;
获得与所述字符串相关联的位置;
基于所述位置和所述字符串内的一个或多个独立表达,执行对于位置相关数据的基于位置的搜索,以使得所述位置相关数据在离所述位置的预定距离内是有关的;以及
在地图上显示所述位置相关数据的至少一部分。
47.一种移动装置中的方法,包括:
获得字符串;
获得与所述字符串相关联的位置;
基于所述位置和所述字符串内的一个或多个独立表达,执行对于位置相关数据的基于位置的搜索,以使得所述位置相关数据在离所述位置的预定距离内是有关的;和
在地图上显示所述位置相关数据的至少一部分。
CN201610088358.3A 2015-02-19 2016-02-17 具有搜索功能的移动装置 Active CN105912556B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/626217 2015-02-19
US14/626,217 US9521522B2 (en) 2015-02-19 2015-02-19 Mobile apparatus with search function

Publications (2)

Publication Number Publication Date
CN105912556A true CN105912556A (zh) 2016-08-31
CN105912556B CN105912556B (zh) 2019-07-12

Family

ID=55398321

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610088358.3A Active CN105912556B (zh) 2015-02-19 2016-02-17 具有搜索功能的移动装置

Country Status (4)

Country Link
US (1) US9521522B2 (zh)
JP (1) JP6554548B2 (zh)
CN (1) CN105912556B (zh)
WO (1) WO2016132013A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108776481A (zh) * 2018-06-20 2018-11-09 北京智行者科技有限公司 一种平行驾驶控制方法
CN112543352A (zh) * 2019-09-23 2021-03-23 腾讯科技(深圳)有限公司 一种动画加载方法、装置、终端、服务器及存储介质

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10650621B1 (en) 2016-09-13 2020-05-12 Iocurrents, Inc. Interfacing with a vehicular controller area network
US10511951B2 (en) 2017-01-17 2019-12-17 3AM Innovations LLC Tracking and accountability device and system
US10656274B2 (en) 2017-06-12 2020-05-19 Intergraph Corporation OnScene command vision
US20200393573A1 (en) 2018-02-19 2020-12-17 Indooratlas Oy Control apparatus, method and computer program code for controlling indoor positioning transitions

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101266608A (zh) * 2008-05-09 2008-09-17 魏新成 对电脑屏幕上显示的文本字符串进行在线搜索的方法
US8219115B1 (en) * 2008-05-12 2012-07-10 Google Inc. Location based reminders
CN103678358A (zh) * 2012-09-13 2014-03-26 腾讯科技(深圳)有限公司 一种信息搜索方法及系统
CN104335205A (zh) * 2012-05-15 2015-02-04 苹果公司 可采取操作的提醒条目

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005004782A (ja) * 2004-07-02 2005-01-06 Sony Corp 情報処理システム、情報処理装置および情報処理方法、並びに携帯型情報端末装置
JP2006058887A (ja) * 2005-08-17 2006-03-02 Sony Corp 情報処理システム、並びに、情報処理装置および方法
US7747598B2 (en) 2006-01-27 2010-06-29 Google Inc. Geographic coding for location search queries
US8122019B2 (en) * 2006-02-17 2012-02-21 Google Inc. Sharing user distributed search results
US20090012704A1 (en) * 2007-07-02 2009-01-08 Bruce Franco Retail Store Product Location Service System and Method
US8145521B2 (en) * 2008-07-15 2012-03-27 Google Inc. Geographic and keyword context in embedded applications
US8812585B2 (en) * 2010-03-29 2014-08-19 Google Inc. Trusted maps: updating map locations using trust-based social graphs
US8930837B2 (en) 2011-05-23 2015-01-06 Facebook, Inc. Graphical user interface for map search
JP5831937B2 (ja) * 2012-01-10 2015-12-09 アルパイン株式会社 端末機器
US9141988B2 (en) 2012-02-22 2015-09-22 Ebay, Inc. Systems and methods to provide search results based on time to obtain
KR102057558B1 (ko) * 2013-03-06 2019-12-19 엘지전자 주식회사 이동 단말기 및 그것의 제어 방법
JP6353199B2 (ja) * 2013-07-01 2018-07-04 株式会社 ミックウェア 情報処理装置、情報処理方法、およびプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101266608A (zh) * 2008-05-09 2008-09-17 魏新成 对电脑屏幕上显示的文本字符串进行在线搜索的方法
US8219115B1 (en) * 2008-05-12 2012-07-10 Google Inc. Location based reminders
CN104335205A (zh) * 2012-05-15 2015-02-04 苹果公司 可采取操作的提醒条目
CN103678358A (zh) * 2012-09-13 2014-03-26 腾讯科技(深圳)有限公司 一种信息搜索方法及系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108776481A (zh) * 2018-06-20 2018-11-09 北京智行者科技有限公司 一种平行驾驶控制方法
CN112543352A (zh) * 2019-09-23 2021-03-23 腾讯科技(深圳)有限公司 一种动画加载方法、装置、终端、服务器及存储介质
CN112543352B (zh) * 2019-09-23 2022-07-08 腾讯科技(深圳)有限公司 一种动画加载方法、装置、终端、服务器及存储介质

Also Published As

Publication number Publication date
JP6554548B2 (ja) 2019-07-31
JP2018510412A (ja) 2018-04-12
WO2016132013A1 (en) 2016-08-25
US20160249163A1 (en) 2016-08-25
CN105912556B (zh) 2019-07-12
US9521522B2 (en) 2016-12-13

Similar Documents

Publication Publication Date Title
CN105912556B (zh) 具有搜索功能的移动装置
US20210385613A1 (en) Super geo-fences and virtual fences to improve efficiency of geo-fences
US10332172B2 (en) Lead recommendations
US20180176728A1 (en) Method, system and apparatus for location-based machine-assisted interactions
Emmanouilidis et al. Mobile guides: Taxonomy of architectures, context awareness, technologies and applications
JP6063965B2 (ja) 個人情報のジオコーディング
US8341196B2 (en) Method and apparatus for creating a contextual model based on offline user context data
CN109063014B (zh) 电子交易方法、移动台、基站、通信系统和存储介质
US10942972B2 (en) Query processing method, electronic device, and server
KR20230170138A (ko) 콘텐츠 공유 플랫폼 프로파일 생성
CN102982016A (zh) 用于电子表格应用程序的快速分析工具
US20130253980A1 (en) Method and apparatus for associating brand attributes with a user
US11138249B1 (en) Systems and methods for the creation, update and use of concept networks to select destinations in artificial intelligence systems
CN106462597A (zh) 利用不同设备执行搜索和访问搜索结果
CN104520851A (zh) 基于电子表格应用中的数据点生成查询
CN104426933B (zh) 一种筛选增强现实内容的方法、装置及系统
KR20150011441A (ko) 장소를 추천하는 방법 및 그 장치
KR20240010106A (ko) 증강 현실 안내 인터페이스
US11386174B2 (en) User electronic message system
US11694278B2 (en) Automatic analysis of digital messaging content method and apparatus
JP2023541584A (ja) 自動データモデル生成
KR20170139633A (ko) 상품 특징을 도시하는 발견 페이지 생성 기법
CN105224659A (zh) 信息获取方法和装置
Geise et al. Reality mining in sensor-based mobile-driven environments
KR101566147B1 (ko) 업체 평가 정보 획득방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant