具体实施方式
以下,参照附图具体描述本发明的实施例。
图1是图示了根据本发明实施例的无线通信终端1的配置示例的框图。如图中所示,无线通信终端1是便携式信息处理设备,例如智能手机或便携式游戏机,并且包括控制单元11、存储单元12、无线通信单元13、介质信息读取单元14、操作单元15和显示单元16。
例如,控制单元11是微处理器,并且根据在存储单元12中存储的程序执行各种信息处理。稍后描述在本实施例中的由控制单元11执行的处理的具体示例。
存储单元12包括例如RAM或ROM之类的存储器件,并且存储由控制单元11执行的程序以及各种数据。此外,存储单元12作为控制单元11的工作存储器工作。
无线通信单元13是无线通信接口,并且通过无线通信向其他无线通信终端发送信息或从其他无线通信终端接收信息而不需要使用传输线。例如,无线通信单元13可以是能够根据IEEE 802.11标准执行无线通信(WLAN通信)的无线通信模块。
介质信息读取单元14读取存储在计算机可读存储介质(例如光盘或存储卡)中的信息。将这样读取的信息临时存储在存储单元12中,并且该信息用于由控制单元11执行的处理。
操作单元15包括输入器件(例如按钮),并且将由用户执行的指令操作的内容输出到控制单元11。此外,显示单元16包括例如液晶面板,并且基于来自控制单元11的指令,在显示屏幕上显示要向用户呈现的各种信息。
以下,对于根据本实施例的无线通信终端1实现的功能给出描述。图2是图示了无线通信终端1的功能示例的功能框图。如图中所示,无线通信终端1包括应用执行部件21、交换数据相关信息管理部件22、交换数据确定部件23和数据交换处理部件24。控制单元11执行存储在存储单元12中的程序,并且控制无线通信单元13,从而实现这些功能。注意,由控制部件11执行应用程序来实现应用执行部件21,其中应用程序是由介质信息读取单元14从例如光盘之类的信息存储介质读取的、并且被存储在存储单元12中。另一方面,由控制单元11执行预先存储在例如ROM中的***软件程序来实现其他功能。***软件程序是与上述应用程序独立的程序,且与应用程序类似,可提供其被存储在各种信息存储介质中,或者可通过例如因特网之类的通信网络提供。
应用执行部件21执行例如游戏应用之类的应用程序。具体地,在本实施例中,应用执行部件21执行符合数据交换处理的多种应用程序。然后,在执行应用程序的情况下,根据由用户关于操作单元15执行的指令操作或应用程序的处理的进程,应用执行部件21输出与应用程序对应的交换数据相关信息项。
交换数据相关信息项是关于要与另一无线通信终端1交换的、关于应用程序的数据,并且可包含要与其他无线通信终端1交换的交换目标数据本身。交换数据相关信息管理部件22接收由应用执行部件21输出的交换数据相关信息项,并且然后将交换数据相关信息项存储在存储单元12中。从而,存储单元12存储多个交换数据相关信息项,每个交换数据相关信息项与多个应用程序中的任意一个相关联。
图3是图示了存储单元12中存储的交换数据相关信息项的图。如在图中所示的,多个交换数据相关信息项中的每个包含用于识别相应的应用程序的信息、交换数据控制信息和交换目标数据。例如,在应用程序是游戏应用的情况下,交换目标数据是再现数据、项目数据、人物数据等。应注意在关于给定应用程序的情况下,无线通信终端1仅从另一无线通信终端1获取数据,并且不将数据提供到该另一无线通信终端1,与给定应用程序相关联的交换数据相关信息项不需要包含交换目标数据。此外,根据例如用户的指令操作,可与一个应用程序相关联地存储多个交换数据相关信息项。
交换数据控制信息是定义在与另一无线通信终端1执行数据交换处理时使用的通信过程的信息,并且例如是可由无线通信终端1的***软件执行的、以脚本(script)语言写成的通信脚本。具体地,交换数据控制信息可以是描述了以下方面的脚本信息:将相应的交换目标数据提供到另一无线通信终端1的条件;从另一无线通信终端1获取交换目标数据的条件;或者在一个交换数据相关信息项中存在多种交换目标数据项的情况下,从多种数据项当中识别实际上要经历数据交换的数据的过程。应注意,除了脚本信息以外,交换数据控制信息可以是可由控制单元11执行的程序模块。
应注意,根据来自用户的指令,交换数据相关信息管理部件22可被允许删除存储在存储单元12中的交换数据相关信息项或执行交换数据相关信息项的临时无效。
在交换数据相关信息项存储在存储单元12中的情况下,无线通信终端1根据来自用户的指令在数据交换模式下执行操作的开始和中断。在数据交换模式下的操作期间,无线通信终端1可并行执行上述多个应用程序中的任意一个或可执行除了那些应用程序以外的应用程序。应注意,取决于正在执行的应用程序的处理内容,应用执行部件21可暂时停止数据交换模式下的操作。在数据交换模式下的操作期间,如果以相同方式在数据交换模式下操作的另一无线通信终端1接近无线可通信距离范围内,则无线通信单元13检测另一无线通信终端1的出现,且然后尝试建立无线通信连接。这里,建立无线通信连接指的是交换用于识别彼此的通信方的信息(例如,MAC地址),并且建立无线通信终端1能够彼此一对一地发送/接收数据的状态。
作为具体示例,假设应用执行部件21执行赛车(racing)游戏A的应用程序,以输出包含其再现数据的交换数据相关信息项作为交换目标数据,并且进一步执行角色扮演游戏B以输出包含其人物数据的交换数据相关信息项作为交换目标数据。
应注意,即使当应用执行部件21执行赛车A和角色扮演游戏B应用程序中的任意一个时或者即使当应用执行部件21执行例如视频播放器之类的另一应用程序时,无线通信终端1也可在数据交换模式下操作。此外,即使当正在执行如赛车游戏A、角色扮演游戏B或视频播放器的同时无线通信终端1响应于例如来自用户的指令已经进入暂停状态时,无线通信终端1也可在数据交换模式下操作。在暂停状态下,切断控制单元11等的电源,但是将电源提供到无线通信单元13,从而继续输出用于检测另一无线通信终端1的控制信号。然后,如果检测到存在另一无线通信终端1,则输出用于恢复到控制单元11的电源的控制信号,并且然后开始稍后描述的数据交换处理。
在数据交换模式下的操作期间,如果建立了到另一无线通信终端1的无线通信连接,则交换数据确定部件23获取在另一无线通信终端1中存储的交换数据相关信息项的列表。然后,基于存储在另一无线通信终端1中的交换数据相关信息项和存储在其自身的存储单元12中的多个交换数据相关信息项,交换数据确定部件23从多个交换数据相关信息项当中确定实际要经历数据交换处理的交换数据相关信息项。此外,在存在多个确定要经历数据交换处理的交换数据相关信息项的情况下,交换数据确定部件23可基于那些交换数据相关信息项来确定数据交换处理的执行顺序。
具体地,例如,交换数据确定部件23可选择与在其自身的无线通信终端1和相对方(partner)的无线通信终端1之间的公共应用程序相关联的交换数据相关信息项作为要经历与相对方的无线通信终端1的数据交换处理的信息。应注意,稍后描述确定数据交换处理的执行顺序的方法的具体示例。此外,在可能建立到多个无线通信终端1的无线通信连接的情况下,交换数据确定部件23可确定以何种顺序与无线通信终端1执行数据交换处理,从而以所确定的顺序与无线通信终端1执行数据交换处理。确定将对于其执行数据交换处理的无线通信终端1的顺序的方法的具体示例同样将在稍后描述。
数据交换处理部件24将以通过交换数据确定部件23确定的顺序执行与建立了到其的无线通信连接的另一无线通信终端1的数据交换处理,其中所述数据交换处理基于由交换数据确定部件23确定的交换数据相关信息项。
具体地,根据由交换数据控制信息定义的上述通信过程,数据交换处理部件24执行对另一无线通信终端1的交换目标数据的发送和/或从另一无线通信终端1的交换目标数据的接收。从而,即使当不执行已经输出了要经历数据交换处理的交换数据相关信息项的应用程序自身时,由于由应用程序预先限定了通信过程,也可以实现与应用程序相关的数据的交换。
此外,如上所述,如果将交换数据控制信息设置为脚本信息,并且数据交换处理部件24被配置为解释并且执行该脚本,则可以减少例如由于错误的发生而危及安全性或经受不稳定操作的风险,这是由于应用程序的具体实施而引起的。在此情况下,数据交换处理部件24可包含可从通信脚本调用的本地(native)功能的模块。
图4是图示根据本发明的实施例的无线通信终端连接到的无线通信网络的状态的概念图。在附图的示例中,在无线通信终端1a的可无线通信距离范围A中,存在其他无线通信终端1b和1c。以下,参考图5的流程图,给出在无线通信终端1a通过与其他无线通信终端1b和1c的无线通信执行数据交换处理的状态下所执行的处理的示例的详细描述。
首先,无线通信终端1a响应于例如用户执行的指令操作开始在数据交换模式下的操作,然后通过周期性地发送信标(beacon)信号来尝试检测另一无线通信终端1(S1)。如果例如通过对信标信号的响应的方式检测到另一无线通信终端1,则无线通信终端1a通过预定过程连接到无线通信网络(S2)。此时,通过使用自组织(ad hoc)模式来连接到无线通信网络,无线通信终端1a即使在不存在无线LAN接入点的情况下也可建立到另一无线通信终端1的通信连接。应注意,在无线LAN的情况下,通过服务设置标识符(SSID)识别每个终端连接到的逻辑通信网络。在此实施例中,为了允许相同型号的无线通信终端1执行以下描述的数据交换处理,每个无线通信终端1通过使用取决于无线通信终端1的型号而预先确定的公共SSID(而不是取决于用户设置的单独SSID)来加入无线通信网络。
在加入无线通信网络之后,无线通信终端1a获取在可通信距离范围A中存在的另一无线通信终端1(对等方)的列表(S3)。在图4的示例中,获取指示无线通信终端1b和1c的对等方的列表。列表包括,例如,用于识别每个无线通信终端1的MAC地址和用于识别每个无线通信终端1的用户的信息。
接下来,无线通信终端1a确定与在S3中获取的列表中指示的多个无线通信终端1执行数据交换处理的顺序(S4)。在本描述中,作为示例,假设确定首先要与无线通信终端1b执行数据交换然后要与无线通信终端1c执行数据交换。
接下来,无线通信终端1a建立到作为数据交换处理的相对方的无线通信终端1(这里,无线通信终端1b)的无线通信连接,然后接收在相对方的无线通信终端1b中存储的交换数据相关信息项的列表(S5)。然后,基于在S5中接收的无线通信终端1b的交换数据相关信息项的列表以及由其自身存储的交换数据相关信息项的列表,无线通信终端1a确定将要经历数据交换处理的执行的交换数据相关信息项及其执行顺序(S6)。
此后,无线通信终端1a以在S6中确定的顺序执行基于交换数据相关信息项的数据交换处理(S7)。具体地,无线通信终端1a基于在要经历数据交换处理的交换数据相关信息项中包含的交换数据控制信息来执行数据交换处理。
在完成基于一个交换数据相关信息项的数据交换处理之后,无线通信交换1a确定是否已经对于应当对其执行数据交换处理的所有交换数据相关信息项执行了处理(S8)。如果对于在S6中已经确定要经历数据交换处理的所有交换数据相关信息项尚未完成处理,则无线通信终端1a返回S7,并且随后根据S6中确定的顺序执行基于下一交换数据相关信息项的数据交换处理。另一方面,如果已经对于所有交换数据相关信息项完成了数据交换处理,则无线通信终端1a确定是否已经与在S3中获取的列表中指示的所有无线通信终端1执行了数据交换处理(S9)。这里,因为没有与无线通信终端1c完成数据交换处理,与设置为数据交换处理的相对方的无线通信终端1c再次执行从S5到S8的处理。如果与无线通信终端1c完成了数据交换处理,这意味着已经以在列表中指示的所有无线通信终端1执行了数据交换处理,并且因此随后执行接下来的处理。
最后,在已经在S7中执行了某一数据交换处理的情况下,无线通信终端1a使得显示单元16显示指示已经执行了数据交换处理的信息,从而通知用户执行结果(S10)。为了给出具体示例,在显示屏幕的确定区域中无线通信终端1a显示例如指示“已经执行了经过(passing-by)连接”的消息信息。替代地,可在显示屏幕的预定位置显示预定图标图像等。此外,可通过与每个所交换的数据项对应的交换数据控制信息来定义要向用户呈现的消息或图像。
此后,无线通信终端1a返回到S1,然后再次等待另一无线通信终端1接近。应注意,在上述图5的流程中,无线通信终端1a确定通信的顺序,导入(take lead in)与另一无线通信终端1的数据交换。然而,取决于连接环境或连接定时,无线通信终端1a可接受由另一无线通信终端1引起的数据交换。此外,在上述流程中,以在S4中确定的顺序与无线通信终端1顺序地执行数据交换,直到结束为止。然而,每次与一个无线通信终端1完成数据交换处理,可再次执行无线通信终端1的检测。
此外,在已经执行了S10的通知的状态下,如果用户响应于操作单元15执行指令操作而选择所通知的信息,则无线通信终端1a的应用执行部件21可执行与所选择的交换数据相关信息项对应的应用程序。
此外,如果当执行数据交换处理时正在执行经过数据交换处理的应用程序,除了在S10中简单地将通知提供给用户以外,无线通信终端1a还可向应用执行部件21提供指示已经执行了数据交换处理的通知作为事件。
通过上述数据交换处理,将从另一无线通信终端获取的交换目标数据存储在存储单元12中。然后,当应用执行部件21执行相应的应用程序时,应用执行部件21参考数据交换处理的结果,并且在应用程序的处理反映该结果。例如,在从另一无线通信终端1获取再现数据的情况下,作为选项,与无线通信终端1的用户自身的已经存储的再现数据一起呈现再现数据,并且随后响应于来自用户的选择进行再现。
这里,给出对于用户呈现上述经过连接的执行结果的处理的具体示例的描述。在用户已经执行了指令操作以响应于S10的上述通知的情况下,或在不考虑这种通知的情况下,用户已经执行了指令操作,以使得显示经过连接的执行状态,无线通信终端1a的交换数据相关信息管理部件22可使得显示单元16显示与在存储单元12中存储的交换数据相关信息项相关联的应用程序的列表。在此情况下,交换数据相关信息管理部件22以可与其他应用程序区别一应用程序的方式在显示屏幕上显示列表,其中所述应用程序与要经历数据交换处理的交换数据相关信息项相关联,并且在数据交换处理的执行之后尚未被执行(即,用户尚未对于其检查数据交换处理的结果的应用程序)。
图6图示了用于符合上述经过连接的应用程序的列表显示屏幕的具体示例。在附图的示例中,指示已经执行了数据交换处理的图像被附加到已经对其执行了数据交换处理的应用程序(赛车游戏A和角色扮演游戏B),而以具有较低亮度的颜色对对其尚未执行数据交换处理的应用程序(模拟游戏C)进行暗显示(在图中,以虚线表示)。应注意,显示方法不限于上述示例,并且例如,可通过高亮已经对其执行了数据交换处理的应用程序来使用加强显示。通过参考上述列表显示屏幕,用户可以容易地识别其中对于经过连接登记的应用程序以及已经实际执行了数据交换处理的应用程序。
此外,在上述列表显示屏幕中,可允许用户选择已经通过执行来自操作单元15的操作输入而执行了数据交换处理的应用程序。响应于这样的由用户执行的指令操作,交换数据相关信息管理部件22使得显示单元16显示关于对于所选择的应用程序执行的数据交换处理的处理结果的具体信息。在此情况下要显示的详细信息可包括,例如,使用作为数据交换处理的目标的另一无线通信终端1的用户的用户名、数据交换处理的执行日期和时间、以及通过数据交换处理获取的数据的内容(例如,项目名称或人物名称)。图7图示了上述数据交换处理的结果显示屏幕的示例。在附图的示例中,除了所选择的应用程序的名称和数据交换处理的详细信息以外,还在屏幕上对于应用程序显示开始按钮。当用户已经执行了指令操作以选择开始按钮时,应用执行部件21可执行所选择的应用程序。为此,在参考经过连接的执行结果的同时用户可选择他/她感兴趣的应用程序,并且可利用简单的操作直接开始执行应用程序。
这里,给出通过上述交换数据确定部件23确定关于多个无线通信终端1(其变为数据交换的相对方)执行通信连接的顺序(连接顺序)的方法的具体示例的描述,以及通过上述交换数据确定部件23确定对于要经历与相对方的无线通信终端1的数据交换的多个交换数据相关信息项执行的数据交换的顺序(数据交换顺序)的方法的具体示例的描述。在经过连接中,存在在与所有无线通信终端1完成所有的可交换目标数据项的交换之前,离相对方的无线通信终端1的距离变大,使得不能继续无线通信的情况。因此,希望区分期待对于用户具有更大重要性的、将与相对方的无线通信终端1执行的数据交换的执行的优先次序,并且区分期待对于用户具有更大重要性的、数据交换的执行的优先次序。鉴于此,交换数据确定部件23例如通过以下方法来确定各个情况的顺序。
具体地,交换数据确定部件23获取关于通过无线可通信连接的多个无线通信终端1中的每个的属性信息,然后通过使用属性信息计算每个无线通信终端1的优先级。然后,按顺序(in order)与作为数据交换的相对方的具有高优先级的无线通信终端1执行无线通信连接。在本情形使用的关于无线通信终端1的属性信息1的示例包括:关于与相对方的无线通信终端1通信的过去历史的信息;关于用于与相对方的无线通信终端1通信的条件的信息;存储在相对方的无线通信终端1中的交换数据相关信息项;以及关于携带相对方的无线通信终端1的用户的信息。
具体地,在使用关于与相对方的无线通信终端1通信的过去历史的信息的情况下,交换数据确定部件23确定连接顺序,以便于区分,例如,最近与其执行了通信的相对方或最近未与其执行通信的相对方的优先次序。在前面的情况下,可以与特定的通信相对方更频繁地执行数据交换。相反,在后面的情况下,可以与大量的通信相对方执行数据交换。
此外,关于用于与相对方的无线通信终端1通信的条件的信息的示例包括关于通信质量的信息、关于检测顺序的信息以及关于相对方的无线通信终端1的操作状态的信息。交换数据确定部件23确定连接顺序,以便于分别区分可以较高通信质量连接的无线通信终端1、在图5的S1的检测处理中较早成功检测到的无线通信终端1、以及正在执行一些处理的无线通信终端1而不是处于暂停状态的无线通信终端1的优先次序。
此外,交换数据确定部件23可获取存储在相对方的无线通信终端1中的交换数据相关信息项的列表作为属性信息。在此情况下,例如,交换数据确定部件23比较所获取的列表与其自身的存储在存储单元12中的交换数据相关信息项的列表,然后确定连接顺序,以便于区分具有更多要经历数据交换的交换目标数据项的无线通信终端1的优先次序。可替换地,交换数据确定部件23可区分对应于各个交换数据相关信息项的更多类型的应用程序(例如,游戏种类)与对应于其自身的交换数据相关信息项的类型相同的无线通信终端1的优先次序。此外,交换数据确定部件23可区分存储过去没有经历无线通信终端1a的数据交换的交换数据相关信息项的无线通信终端1的优先次序。
此外,关于携带相对方的无线通信终端1的用户的信息的示例包括关于用户的年龄或性别的信息。在此情况下,交换数据确定部件23确定连接顺序,以便于区分由其年龄与携带无线通信终端1a的用户的年龄接近的用户携带的无线通信终端1或由其性别与携带无线通信终端1a的用户的性别相同或不同的用户携带的无线通信终端1的优先次序。
应注意,当执行上述S3的处理时,无线通信终端1a可从另一携带无线通信终端1与MAC地址一起接收包括关于相对方的无线通信终端1的操作状态的信息、交换数据的信息项的列表以及关于用户的信息的上述属性信息。
此外,可以多种条件的组合来使用上述各种条件,以用于确定连接顺序。例如,交换数据确定部件23通过加和通过将与每个属性信息对应的值与预先确定或用户设置的加权因子相乘而计算的每个值来计算每个无线通信终端1的优先级。然后,按照无线通信终端1的优先级的顺序来执行连接。
接下来,给出当与特定无线通信终端1执行数据交换时,确定对于多个交换数据相关信息项执行的数据交换的顺序的方法的具体示例的描述。类似地,在此情况下,交换数据确定部件23可基于与交换数据相关信息项相关联属性信息来计算每个交换数据相关信息项的优先级,从而根据由所计算的优先级指示的顺序来执行数据交换。交换数据相关信息项的属性信息的示例包括关于相应的应用程序的执行历史的信息、关于过去执行的数据交换处理的信息以及关于交换数据相关信息项的更新历史的信息。
具体地,在使用关于相应的应用程序的执行历史的信息的情况下,交换数据确定部件23确定数据交换顺序,以便于区分,例如,在执行数据交换处理时对应于正在执行的应用程序的交换数据相关信息项,或者对应于之前刚刚执行的应用程序的交换数据相关信息项的优先次序。此外,交换数据确定部件23可以确定数据交换顺序,以便于区分与在预定的刚刚过去的时间段中更频繁地执行的应用程序对应的交换数据相关信息项的优先次序。通过这样,例如,可以优选地设置这种关于用户最近玩的最频繁的游戏等的数据作为交换目标。
此外,在使用关于过去的数据交换处理的信息的情况下,交换数据确定部件23确定数据交换顺序,以便于区分,例如,在先前的数据交换处理中要求较短时间段的交换数据相关信息项的优先次序。此外,交换数据确定部件23还可使用关于交换数据相关信息项的更新历史的信息,从而确定数据交换顺序,以便于区分在先前的数据交换处理之后已新添加的交换数据相关信息项或者在与相同的无线通信终端1最后一次执行数据交换之后已经更新的交换数据相关信息项的优先次序。
应注意,在基于上述信息确定数据交换顺序的情况下,无线通信终端1a记录应用程序的执行历史、数据交换处理的执行历史、交换数据相关信息项的更新历史等作为日志。
此外,交换数据确定部件23可确定数据交换顺序,以便于区分由用户设计为,例如,“优选”的交换数据相关信息项的优先次序。此外,与连接顺序的示例类似,可以多种条件的组合来使用上述各种条件,以便于确定数据交换顺序。
根据上述本实施例的无线通信终端1,即使在没有执行应用程序的状态下,也可与另一无线通信终端1交换关于多个应用程序中的每个的数据。因此,用户可自由地执行各种应用程序而不需要对于无线通信终端1是否正在数据交换模式下进行操作的很多关注。此外,即使没有正在执行应用程序,也可以执行关于应用程序的数据的交换,其中所述应用程序因此用于增加与其他无线通信终端1执行数据交换的机会。
应注意,本发明的实施例不限于此。例如在以上描述中,无线通信单元13根据IEEE 802.11标准执行无线通信,但是本发明不限于此。例如,可根据蓝牙(Bluetooth(注册商标))标准执行无线通信。此外,根据本发明实施例的无线通信终端1与另一无线通信终端交换的数据不限于关于游戏的数据,并且可以是由各种应用程序输出的数据。