一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

第一设备上的第一应用程序和第二设备上的第二应用程序之间的连接的建立的制作方法

2022-04-14 02:39:34 来源:中国专利 TAG:


1.本发明涉及在不同设备上的应用程序之间建立连接。本发明尤其涉及在hbbtv设备上的hbbtv应用程序和移动设备上的第二应用程序之间建立连接。


背景技术:

2.hbbtv规范的第2版定义了一种机制,通过该机制,hbbtv应用程序(“app”)可以在本地网络中找到具有显示功能的设备(例如平板电脑、手机等)并在找到的设备上启动应用程序。但是,hbbtv-2仅描述了hbbtv应用程序可以触发设备搜索(“发现,discovery”)和应用程序启动(“启动,launch”)的接口。因此,通常为了有显示能力的设备(“第二屏幕”)和hbbtv设备之间的通信而使用制造商特定的协议。
3.hbbtv 2标准规定,hbbtv设备制造商提供在hbbtv设备和相应的具有显示功能的设备上实现制造商特定协议端点的应用程序。根据hbbtv标准,此类特定于制造商的启动器(launcher)应用程序具有以下弱点:
4.1.并非所有制造商都有义务为其hbbtv设备提供“启动器”应用程序。这会对相应服务的范围产生负面影响。
5.2.没有针对“启动器”应用程序的关于安装和预期用途的用户指引的约束性指南。因此,来自不同制造商的“启动器”应用程序将在这些方面有所不同。这使得“第二屏(second screen)”应用程序的提供者面临着向用户传达哪些要在显示设备上执行的“启动器”应用程序适合于hbbtv设备、用户可以在哪里获得它以及如何正确使用它的挑战。


技术实现要素:

6.本发明克服了用于在不同设备上的应用程序之间建立连接的现有技术方法的上述问题以及其他问题。本发明不限于hbbtv,而是可总体上用于在不同设备上的应用程序之间建立连接。
7.根据本发明的方法包括使用分配给第二应用程序的标识在第一设备上的第一应用程序和第一设备上的通信服务之间建立连接,使用该标识在在第二设备上执行的第二应用程序和通信服务之间建立连接,经由该通信服务在第一应用程序和第二应用程序之间建立通信信道,并且通过第二应用程序从第一应用程序接收第一消息,其中该第一消息指定待在第二设备上执行的第三应用程序和/或第三应用程序的待在第二设备上执行的第一服务。
8.在本说明书和权利要求范围内使用的表达“连接的建立”应特别理解为消息的发送和接收,通过该消息,可以将用户数据从一个设备上的应用程序传输到另一个设备上的应用程序。此外,在本说明书和权利要求的范围内使用的术语“应用程序”应特别理解为将以前不可用的服务添加到设备并由此扩展设备的可能用途的软件程序。例如,软件程序可以专门设计用于在终端的操作系统上运行(例如“原生”android或ios应用程序)。然而,该
软件程序也可以设计为由其他应用程序解读和执行(例如,包含html、css和/或javascript代码并由网络浏览器或包含网络浏览器的应用程序执行的网页)。
9.在此方面,在本说明书和权利要求的上下文中使用的术语“设备”应尤其理解为功能单元中电气和电子组件的互连,其中可以为电气和电子组件配备组件端的软件层,该软件层允许在不同的设备上安装操作系统。
10.此外,在本说明书和权利要求的范围内使用的术语“通信服务”应尤其理解为由设备上的软件层提供的服务,其有助于实现将消息从一个设备传输到另一个设备。在此方面,如在本说明书和权利要求的范围内使用的术语“通信信道”应尤其理解为可以将消息从一个设备上的应用程序传输到另一设备上的应用程序的传输路径。此外,在本说明书和权利要求的范围内使用的术语“标识”应尤其理解为一种数字可再现信息,其用于清楚地分配实体(例如,应用程序的类型或应用程序的实例)。
11.第一设备优选形成用于播放图像和音频数据。例如,第一设备可以设计为电视机。
12.第一设备优选形成为支持hbbtv的接收设备。例如,第一设备可以形成为支持hbbtv的电视设备。
13.第一设备上的第一应用程序优选被分配给第一无线电频道并且在第一设备播放来自第一无线电频道的图像和音频数据时自动启动或者可以手动启动。例如,第一应用程序可以由广播公司发布并且提供与广播公司的广播频道相关的信息和服务和/或与广播频道相关的交互元素。
14.第二应用程序优选检查第一应用程序是否被授权启动第三应用程序和/或第一服务的执行,并且如果第一应用程序被授权启动第三应用程序和/或第一服务的执行,则促使执行第三应用程序和/或第一服务。
15.优选地,该方法还包括在第一设备上终止第一应用程序并执行第四应用程序,使用标识经由通信服务在第四应用程序和第二应用程序之间建立通信信道,以及由第二应用程序接收来自第四应用程序的第二消息,其中第二消息指定要在第二设备上执行的第五应用程序和/或要在第二设备上执行的第五应用程序的第二服务。
16.例如,在第一设备上终止第一应用程序和运行第四应用程序可源于在第一和第二无线电频道之间切换,并导致在第二设备上启动其他应用程序和/或服务以促进切换过程和与此相相关地将用户注意力转移到第二无线电频道。
17.该方法还可以包括通过在第二设备上执行的第二应用程序广播第三消息并且第一设备响应第三消息,其中响应包括第一设备上的通信服务的地址。
18.也就是说,第二应用程序可以在网络中搜索第一设备,当第一设备以第一设备上的通信服务的地址进行响应时,搜索完成。
19.在第二设备上运行的第二应用程序可以设置用于重复尝试建立通信信道,直到通信信道被建立。
20.第一和第二应用程序之间的通信信道可以在相互使用识别第二设备上的第二应用程序的实例的标识的情况下来建立。由此在不同设备上运行的相同应用程序可以进行区分,并且由此有针对性地进行访问。
21.该标识可以由第一应用程序持久存储在第一设备上,并且对所存储的标识的访问可以限于源自与第一应用程序相同的源(例如,相同的网络来源)的应用程序。
22.例如,可以将对存储的标识的访问限于由同一广播公司发布或提供在同一互联网地址的应用程序。
23.第二应用程序可以将标识传输到第一应用程序,该第一应用程序将其持久存储在第一设备上。
24.该标识可以提供给在第一设备上运行的第五应用程序,该第五应用程序源自与第一应用程序不同的源,并且由第一设备上的第五应用程序持久存储。
25.也就是说,如果需要,可以将标识从一些应用程序传递到其他应用程序,从而其不必经过搜索和确定合适的设备/应用程序的过程。
26.可以设置第一应用程序以将标识转发给第五应用程序,并且可以设置第五应用程序以将第二标识持久存储在第一设备上。
27.第二应用程序可以将授权应用程序的标识和来源传输到第一设备上的第六应用程序,该第六应用程序执行授权应用程序并为其提供标识,授权应用程序将该标识存储在第一设备上并将其与其源相关联。
28.该标识可以由第一设备上的应用程序从用户输入中导出并持久存储。
29.第一设备上的第一应用程序可以借助于该标识经由外部通信服务向第二设备上的第二应用程序发送第四消息,该第四消息识别第三应用和/或由第三应用提供的第一服务。
30.第一设备上的第一应用程序可以借助于该标识经由外部通信服务向第二设备上的第二应用程序发送第五消息,该第五消息促使第二应用程序建立第二应用程序与通信服务之间的连接。
31.响应于第一消息或响应于确认输入,要在第二设备上执行的第三应用程序和/或要在第二设备上执行的第一服务可以立即或在稍后的时间点执行。
32.优选地,第三应用程序提供与第一设备上的播放相协调的用户界面,其中该协调通过在第一应用程序和第三应用程序之间建立的通信信道进行。
33.不言而喻,在该方法的框架内执行的步骤可以通过长久存储在设备上的指令来执行,通过该指令设置设备以执行这些步骤。
附图说明
34.下面使用实施例在详细说明中解释本发明,其中参考了附图,其中:
35.图1a示出了具有第一设备和第二设备的第一示例性系统;
36.图1b示出了具有第一设备和第二设备的第二示例性系统;
37.图1c示出了具有第一设备和第二设备的第三示例系统;
38.图1d示出了具有第一设备和第二设备的第四示例系统;
39.图1e示出了具有第一设备和第二设备的第五示例系统;
40.图2示出了用于在图1a、1b、1c和1d所示系统的第一设备上的第一应用程序和第二设备上的第二应用程序之间建立通信信道的过程;
41.图3示出了图2所示过程的改进,其中,除了第二设备上的第二应用程序之外,第三设备上的另一个应用程序发出其连接准备就绪的信号;
42.图4示出了图2所示过程的其他步骤,其中检查第一应用程序是否被授权启动第三
应用程序或第一服务;
43.图5示出了图4所示过程的其他步骤,其中第二应用程序搜索(并找到)通信服务;和
44.图6示出了图2中所示过程的进一步修改,其中第二应用程序尝试建立通信信道,直到通信服务响应。
45.相同或功能相似的元件在附图中由相同的附图标记表示。
具体实施方式
46.图1a示出了第一系统10,其包括第一设备12,其可以通过内部或外部无线电单元14a与第二设备16和第三设备18交换数据。第一设备12可以设置用于播放图像和/或声音数据。例如,第一设备12可以是电视机(例如,支持hbbtv的电视机),其设置用于通过无线电或电缆接口接收一个或多个无线电频道以及(在屏幕上或通过一个或多个扬声器)播放包含在所选无线电频道中的图像和/或声音数据。第二设备16和第三设备18可以形成为移动设备(例如,平板电脑、移动电话等),并且还可以设置用于(在屏幕上或通过一个或多个扬声器)播放图像和/或声音数据。设备12、16、18可以是网络中的节点(例如,由支持wlan的路由器14a架设的家庭网络)并且可以通过地址在网络中访问。
47.图1b示出了第二系统10,其与图1a所示的系统10的不同之处在于,第二设备16和第三设备18不通过无线电链路而是通过有线传输链路(例如,通过路由器14b和以太网连接)与第一设备12连接。图1c示出了第三系统10,其与图1a所示的系统10的不同之处在于,第二设备16不通过无线电链路而是通过有线传输链路(例如,通过路由器14b和以太网连接)与第一设备12连接。图1d示出了第四系统10,其与图1a中所示的系统10的不同之处在于,第三设备18不通过无线电链路而是通过有线传输链路(例如,通过路由器14b和以太网连接)与第一设备12连接。
48.图1e示出了第五系统10,其与图1b-图1d中的系统10的不同之处在于,第一设备12通过无线电与路由器14b连接,并且路由器14b还通过无线电与第二设备16和第三设备18连接。第二设备16和/或第三设备18当然也可以通过有线传输链路与路由器14b连接。
49.图2示出了用于在第一设备12和第二设备16之间建立通信信道的过程。这里假设,例如以类型标识符“typ(类型)1”形式的标识id可用于第一应用20(例如“启动器应用程序实施的名称”)。图2中所示的会话开始于第一应用程序20(例如hbbtv应用程序)打开到通信服务22(例如app2app本地端点)的连接(其中其例如在相应的url处附加了id)。
50.如图5和图6所示,图2所示的序列可能在先已经进行了第二应用程序24尝试寻找通信服务22(或app2app远程端点)并与其连接的过程。例如,第二应用程序24可以执行通信服务识别例程(例如使用hbbtv-2中描述的“发现(discovery)”例程),其通过该例程找到通信服务22(例如app2app远程端点)。在此,通信服务22可以总是可用或仅在第一应用20保持与通信服务22的连接打开时可用。例如,根据hbbtv-2规范,app2app远程端点的app2app远程url只有在被hbbtv应用程序打开之后,并且直到hbbtv应用程序关闭与通信服务22的连接后保持可到达。因此,连接尝试可能会失败,因为没有应用程序与相应的远程站(或app2app本地端点)连接。以前存在的连接也可能因为用于连接的应用程序被终止而终止。
51.在第二应用程序24找到通信服务22(或app2app远程端点)之后,该第二应用程序
可以与其建立连接,如图2所示,其中该第二应用程序例如可以将(分配给第二应用程序的)id附加到app2app远程url并向通信服务22发送相应的请求30。如果第一应用程序20在请求32中和第二应用程序在请求30中给出的id一致,则第一设备12上的通信服务22在两个应用程序20、24之间建立连接。通信服务22可以通过消息34(“配对完成”)通知第一应用程序20和/或第二应用程序24,连接建立。第一应用程序20现在可以使用通信服务22以相应的消息36来请求第二应用程序24在第二设备16(例如,“第二屏幕”)上启动第三应用程序26和/或第一服务28。
52.第二应用程序24可以设置用于使得来自不同供应商的应用程序20(例如不同的hbbtv应用程序)或第一设备12上来自不同源的应用程序20能够在第二设备16上启动应用程序/服务。为了使第一设备12上的应用程序20能够与第二应用程序24连接,各个相应的应用程序20需要知道id,该id例如可以是第二应用程序24的类型和/或实例的标识符。在此可以规定,由第一设备12上的特定应用20存储的id只能被来自相同源(或从相同源下载)的应用20读取。在此方面,源例如可以由能够下载应用程序的通信协议(例如http或https)、主机(host)(例如www.irt.de)和端口(例如80)来定义,其中不同的发布者的应用程序20通常从不同的来源获得。然而,同一发布者也可以通过不同的源来提供应用程序20。
53.如图3所示,在不同设备(例如,第二设备16和第三设备18)上运行的相同类型的应用程序24的区别在于,当它们在(显式地或隐式地)做出请求30时,传输可以区分实例的id。在设置例程的框架内,可以将id传输到第一设备12上的一个或多个(来自不同源的)第一应用20程序。该一个或多个应用程序20可以将id长久存储在第一设备12上。设置例程可以被设计成使得用户可以确定稍后允许哪些应用程序20(或来自哪些源的哪些应用20)与特定类型的应用程序24连接。
54.如图4所示,第一应用程序20可以向消息36添加关于要启动的第三应用程序26或要启动的第一服务28的、识别第一应用程序20的信息(例如,第一应用程序20的应用程序类型)。基于该信息,第二应用程序24可以检查第一应用程序20是否通常被授权以启动任何应用程序/服务或具体地启动第三应用程序26和/或第二服务28。例如,第二应用程序24可以将该信息与“黑名单”(禁止启动的应用程序/服务的列表)或“白名单”(允许启动的应用程序/服务的列表)进行比较。
55.如果第一应用程序20没有出现在任何列表中,则第二应用程序24可以要求用户指示他们是否同意由第一应用程序20现在(和未来的)启动这个应用程序和/或服务。如果第一应用程序20被授权启动相应的应用程序和/或相应的服务,则第二应用程序24可以将此通知第一应用程序20,然后尝试启动所请求的应用程序或所请求的服务。如果第一应用程序20对此未被授权,则第二应用程序24也可以将此通知第一应用程序20。第二应用程序24可以提供细节以说明原因,例如第一应用程序20在“黑名单”上。这使得第一应用程序20能够向用户显示相应的提示。
56.在hbbtv领域,所说明的解决方案提供了hbbtv-2中指定的制造商特定“启动器”应用程序的替代方案。其允许针对所有电视服务在“第二屏幕”上“启动”应用程序/服务,并且不需要额外的web服务器。后者的优点是运营成本不会随着用户数量的增加而增加。此外,除了第一设备12上的id外,无需将数据存储在第二应用程序24之外。包含例如启动的应用程序/服务的历史和具有由用户维护的应用程序/服务的收藏列表的用户简档可以存储在
第二设备16上的第二应用程序24中。由此用户对其数据拥有完全和唯一的主权,并且是唯一可以读取、删除和更改数据的人。
57.为了避免用户必须为每个(应能够与第二应用程序24连接的)应用程序20单独输入id,这些应用程序20的列表可以存储在第二应用程序24中,并且该第二应用程序24可以设置用于顺次访问第一设备12上的应用程序20,并在此过程中将id告知给它们。
58.例如,在hbbtv应用的情况下,可以使用hbbtv-2的发现和启动协议。例如,第二应用程序24可以将id通过通信服务或已经作为起始url中的参数传输到第一设备12上的应用程序20,该应用程序可以将该id持久地存储在第一设备12上(例如在cookie中)。然后该id可用于随后的连接。当第二应用程序24被“升级”时,可以更新第一设备12上(可能)需要id的应用程序20的列表。在更新之后,可以执行新的设置(通过对第一设备12上的应用程序20的顺次访问)。
59.例如,第二应用程序24可以启动第一设备12上来自特定源的应用程序20(在hbbtv环境中,例如通过来自hbbtv规范的dial协议)并在此传输id。来自该源的应用程序20可以存储id并将其转发到来自另一个源的应用程序20。来自另一个源的应用程序20也可以存储该id,然后将其转发给来自另一个源的应用程序20,以此类推。
60.应用程序20应该将id转发到哪里可以以不同的方式定义。例如,可以为来自某个特定源的应用程序20提供应将id转发到的其他应用程序20的列表,并且在转发时将该列表与id一起传递给列表上的第一个应用程序20。然后可以从列表中删除列表中的第一个应用程序20,并将列表与id一起传递给列表中的下一个应用程序20,依此类推。
61.此外,第一应用20可以建立到第二应用24的连接并且通知第二应用24其已经存储了id。然后,第二应用程序24可以向第一应用程序20发送命令以将id转发到来自另一个源的其它应用程序20,然后该应用程序20建立到第二应用程序24的连接,依此类推。
62.此外,第二应用程序24(例如在hbbtv环境中使用来自hbbtv-2规范的dial协议)可以顺次地启动授权源的所有应用程序20,并且在此分别传递id。
63.此外,第二应用程序24可以启动第一设备12上的应用程序,并且在此传输授权源的所有应用程序20的url。然后,启动的应用程序可以将授权源的应用程序20捆扎为内联框架,并在内联框架中将id传递给应用程序20。例如,可以通过url参数将id传送到来自授权源的应用程序20的地址。此外,可以借助于w3c web messaging api通过嵌入内联框架中来在启动的应用程序和授权的应用程序20之间传输id。
64.此外也可以使用网络服务。如果第一设备12上的应用程序20想要与第二应用程序24连接并且id不存在,则应用程序20可以建立到网络服务的应用程序的转发。如果web服务应用程序没有id可用,其可以要求用户输入id。一旦用户输入了id,网络服务应用程序就可以将其存储在第一设备12上。然后web服务应用程序可以建立到第一设备12上的应用程序20的重定向并在此发送id。第一设备12上的应用程序20可以将id存储在第一设备12上。该id因此可以通过转发到网络服务的应用程序而对第一设备12上的所有应用程序20可用。
65.在具有android和ios操作系统的第二设备16上,网络服务还可以用作google的“firebase-cloud-messaging”服务的中央网关(用于第二设备16的其他平台提供等效服务)。在设备16的后台运行并且不具有特殊权限的应用程序24通常在特定时间之后由操作系统清理,以便释放诸如系统内存和cpu之类的资源。在这种状态下,所述应用程序24不能
再执行任何代码。在清理状态下,第二应用程序24因此不能再在网络(家庭网络)中搜索第一设备12或通信服务22或对来自第一应用程序20的消息作出反应。除了由用户再次启动第二应用程序24之外,调度任务(例如android下的“jobscheduler”)和“firebase cloud messages”(fcm)可用于使第二应用程序24能够再次运行。fcm是可以通过firebase-cloud-messaging服务发送到设备16上的应用程序的推送消息。
66.响应于fcm,应用程序24可以向用户显示通知(例如,作为状态栏中的“图标”的“通知”,必要时由振动警报和/或信号声辅助),然后用户可以通过该通知重新启动第二应用程序24。在android中,也可以使用fcm作为所谓的“前台”服务来启动应用程序24。这是在后台在设备16上运行但对用户可见的服务,例如通过状态栏中的图标。结合第一设备12上的fcm应用程序20,网络服务提供了在第二设备16上不可访问的第二应用程序24中触发活动的可能性,这使得其再次可访问。
67.附图标记说明
68.10 系统
69.12 第一设备
70.14a 无线电单元
71.14b 路由器
72.16 第二设备
73.18 第三设备
74.20 第一应用程序
75.22 通讯服务
76.24 第二应用程序
77.26 第三应用程序
78.28 第一服务
79.30 消息
80.32 消息
81.34 消息
82.36 消息
83.40 消息
84.42 消息
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献