在软件应用程序之间共享数据结构值的制作方法

    专利查询2022-08-16  90



    1.本发明涉及在软件应用程序之间共享数据结构值,更具体地,涉及经由操作系统中的消息传递而在应用程序之间共享数据结构值。


    背景技术:

    2.计算设备的用户可能希望在他们的设备上的另一个应用程序中使用他们在一个应用程序中接收到的详情。这样的一个例子是当用户通过消息接收银行信息并想要将银行信息输入到银行应用程序中以进行支付时。银行信息由多个字段组成,至少包括账户名、银行行号(sort number)和账号。
    3.一种选择是用户在切换应用程序时单独记录银行信息以供参考。另一种选择是对银行信息的每个值进行复制和粘贴动作。为了转移信息,会需要在消息传递应用程序与银行应用程序之间分三个部分执行简单的复制和粘贴。


    技术实现要素:

    4.根据本发明的一个方面,提供了一种用于经由操作系统中的消息传递而在应用程序之间共享数据结构值的计算机实现的方法,该方法包括:定义多个数据结构,其中的每个数据结构具有给定主题名称,数据结构包括多个数据元素的定义格式的集合;注册应用程序对主题的兴趣;在应用程序内识别具有所定义的数据结构的格式的多个数据元素的集合,并将项与所定义的数据结构的给定主题名称相关联地存储,其中该项是所识别的数据元素的数据值的集合;以及使该项对于被注册到主题的应用程序可用,以用于在该应用程序中的对应数据结构中输入值。
    5.根据本发明的另一方面,提供了一种用于经由操作系统中的消息传递而在应用程序之间共享数据结构值的系统,其包括:处理器和存储器,该存储器被配置为向处理器提供计算机程序指令以执行数据值转移系统的组件的功能:数据结构定义组件,用于定义多个数据结构,其中的每个数据结构具有给定主题名称,数据结构包括多个数据元素的定义格式的集合;主题组件,用于注册应用程序对主题的兴趣;识别组件,用于在应用程序内识别具有所定义的数据结构的格式的多个数据元素的集合;项存储组件,用于将项与所定义的数据结构的给定主题名称相关联地存储,其中该项是所识别的数据元素的数据值的集合;以及项访问组件,用于使项对于被注册到主题的应用程序可用,以用于在该应用程序中的对应数据结构中输入值。
    6.根据本发明的再一方面,提供了一种用于经由操作系统中的消息传递而在应用程序之间共享数据结构值的计算机程序产品,该计算机程序产品包括具有程序指令的计算机可读存储介质,该程序指令可由处理器执行以使处理器:定义多个数据结构,其中的每个数据结构具有给定主题名称,数据结构包括多个数据元素的定义格式的集合;注册应用程序对主题的兴趣;在应用程序内识别具有所定义的数据结构的格式的多个数据元素的集合,并将项与所定义的数据结构的给定主题名称相关联地存储,其中该项是所识别的数据元素
    的数据值的集合;以及使项对于被注册到主题的应用程序可用,以用于在该应用程序中的对应数据结构中输入值。
    7.计算机可读存储介质可以是非暂时性计算机可读存储介质,并且计算机可读程序代码可以由处理电路执行。
    附图说明
    8.在说明书的结论部分特别指出并清楚要求保护本发明的主题。当结合附图阅读时,通过参考以下详细描述,可以最好地理解本发明的组织和操作方法及其目的、特征和优点。
    9.现在将参考以下附图仅通过示例的方式描述本发明的优选实施例,其中:
    10.图1是根据本发明的方法的示例实施例的流程图;
    11.图2是示出根据本发明的方法的示例实施例的示意图;
    12.图3是根据本发明的系统的示例实施例的框图;以及
    13.图4是其中可以实现本发明的计算机系统的示例实施例的框图。
    14.应当理解,为了说明的简单和清楚,图中所示的元件不一定按比例绘制。例如,为了清楚起见,一些元件的尺寸可能相对于其他元件被放大。此外,在认为适当的情况下,附图标记可以在附图中重复以指示对应或类似的特征。
    具体实施方式
    15.所描述的方法和系统使用在计算机操作系统级别的消息传递系统以在运行在操作系统上的应用程序之间共享所定义的数据结构的值。所定义的数据结构具有定义格式的多个数据元素的集合和用作消息传递主题以用于共享所定义的数据结构的数据元素的值的给定主题名称。针对可被要求在应用程序之间共享的数据集合的数据结构来定义消息传递主题。
    16.消息传递系统可以涉及表达对主题的兴趣的应用程序,并且采用所识别的数据元素的数据值的集合形式的项从应用程序获得,与主题名称相关联地存储,并使得对于对主题感兴趣的其他应用程序可用。
    17.消息传递系统可以是发布/订阅消息传递系统,其中采用项的形式的消息由应用程序发布到消息主题名称。其他应用程序订阅主题名称,并接收值的所发布的项。
    18.在其他实施例中,消息传递系统可以使用另一种消息传递模式以共享用于主题的数据结构值的项。例如,代替将项推送到任何所注册的应用程序可以订阅并访问关于其的项的主题,更简单的消息传递系统可以提供用于给定应用程序的主题队列,并且操作系统可以将采用数据值的集合形式的项放置到用于该应用程序的主题队列上。
    19.在发布/订阅消息传递系统中定义数据结构,用于该数据结构的值可以被临时存储在操作系统级别的发布/订阅消息主题中。当在应用程序中识别出相关的数据结构时,在操作系统级别的消息主题上发布和存储这些值。在操作系统上运行的其它应用程序可订阅该消息主题以检索相关的数据结构。
    20.在操作系统上运行的应用程序可以接收或打开符合所定义的数据结构的数据。例如,消息传递应用程序可以接收具有采用银行详情形式的数据的消息,该数据包括作为字
    母串的账户名、作为6位数字串的银行代码(sort code)、以及作为8位数字串的账号。所描述的方法可以将在消息中所接收的数据识别为符合具有唯一名称(例如,“银行账户”)的所定义的数据结构,并且所接收的数据的值可以被发布到所定义的数据结构的消息主题并被存储在消息主题队列中。
    21.例如,另一个应用程序可以是银行应用程序,并且可以订阅用于银行账户信息的消息主题。另一个应用程序可以检索由消息传递应用程序发布的银行账户信息的值,并且可以将这些值建议为银行应用程序中的适当字段的输入,从而使用户不必手动键入数据或手动地分别复制和粘贴每个组成部分。被公布或订阅的所定义的数据结构可以是订阅应用程序可期望在那里并可解析的包括结构、字段名称等的块。
    22.数据结构可定义具有已识别格式的数据类型。数据结构可包括用于数据结构内的多个值的多个字段格式。数据结构可以包括文本或数字串、图像、元数据、超文本标记语言(html)属性等。数据结构类型可以包括例如:银行信息数据结构,其包括账户名字段、银行代码字段和账号字段;信用卡信息数据结构,其包括账户名字段、账号字段、信用卡安全码字段和有效期字段;包裹递送信息数据结构,其包括追踪码字段和邮政编码字段;身份信息数据结构,其包括用于姓名的字段和身份证或护照号码;数据格式,其包括具有相关联的元数据的图像等。
    23.当定义数据结构时,其中的每个组件可以被标记。例如,在“银行账户”数据结构中,会存在用于账户名的标签、用于银行代码的标签和用于账号的标签。当应用程序订阅“银行账户”主题并检索所发布的值时,它使用内部标签以将数据组件匹配到应用程序中的对应用户界面标签,以将值插入用户界面中的正确字段中。
    24.参考图1,流程图100示出所描述的用于经由操作系统在应用程序中共享数据结构值的方法的示例实施例。该方法在操作系统级别的消息传递系统处执行。
    25.多个数据结构可被定义101为消息传递基础结构中的具有主题名称的消息主题。消息主题是针对具有采用数据元素形式的多个字段的数据结构而定义的,其中每个数据元素具有定义格式。这样,一组相关的字段被定义为单个数据结构。每个数据结构可以用于采用定义格式形式的数据输入字段的集合,定义格式是诸如字符类型串、媒体类型串、或其他排列串。
    26.数据结构可以在操作系统级别被预定义为用于已识别数据结构格式(例如标准银行格式)的消息主题,并且还可以被应用程序开发者和/或最终用户添加以用于用户可能希望使用的更加个性化的数据结构。这允许由应用程序开发者或最终用户指定定制的数据格式。例如,应用程序开发者可以定义他们自己的数据结构,然后该数据结构可被添加到操作系统级别的已识别数据结构的列表(例如,经由操作系统应用程序编程接口(os api))。最终用户还可以在他们的本地设备上定义数据结构,例如,针对他们自己的特定俱乐部会员识别格式(其包括姓名和号码字段)。
    27.该方法可以在操作系统处配置102应用程序,该应用程序被允许经由消息传递基础结构发送和/或接收所定义的数据结构的值。数据结构的数据元素的值可以被分组为用于经由消息传递系统被转移的项。某些应用程序可以被允许向或从所有消息主题或一些消息主题仅发送或仅接收值,而其它应用程序可以根据应用程序的类型和要求而被允许既发送又接收。
    28.该方法可以注册103应用程序对消息主题的兴趣。可以在每个应用程序处配置关于该应用程序是否可以针对主题提供值和接收值。在发布/订阅消息传递系统中,应用程序可以被配置为发布到和/或订阅消息传递系统的主题。在操作系统上执行的应用程序可订阅用于所定义的数据结构的消息主题。每个所定义的数据结构被给定唯一的主题名称,并且订阅应用程序可以声明它希望接受的主题名称的列表。应用程序可以订阅与其功能相关的一个或多个消息主题,例如银行应用程序、用于在线购买的浏览器应用程序、递送应用程序等。
    29.在另一个实施例中,应用程序可以在安装该应用程序时定义用于所定义的数据结构的主题队列,然后,操作系统可以知道将采用用于所定义的数据结构的数据值的集合形式的项直接放到用于该应用程序的主题队列上。
    30.操作系统可以管理应用程序和应用程序已经声明对什么主题感兴趣并且支持什么主题的表格,以使得当操作系统看到匹配的数据结构时,它可以找到它的主题名称,并将该结构内容推送到声明支持该主题的所有应用程序。
    31.该方法可以识别104符合所定义的数据结构的数据元素的格式的值。这可以通过值的模式识别或通过使用其它已知的数据检测方法来执行。这可以使用操作系统的类似于用于检测日期、地址等的已知数据检测器的功能。当在应用程序中输入或接收到这些值时,可以识别这些值。
    32.该方法可以提取值并将其作为项存储105到与用于所定义的数据结构的消息主题相关联的存储设备。例如,值的项可被存储在消息队列上。可以有各种方法来控制或限制项的数据保持例如所配置的时间段和/或到队列深度。这可以在操作系统级别配置或者由用户配置。在一个示例中,用于银行信息的一组值可以仅被存储短的时间段。在另一个示例中,当检索应用程序已经检索到特定数据结构时,该方法可以被配置成使得应用程序向消息队列回传以确认它已经使用了该消息(数据结构实例)并因此它现在可以被删除。
    33.项可以包括具有与数据结构的数据元素的字段相关的相关联标签的数据元素的所提取的值。可以使项对于对所定义的数据结构的主题注册了兴趣的应用程序可用106。当新的项可用于主题时,项可被推送到对该主题已注册了兴趣的所有应用程序,或者应用程序可周期性地从主题拉取项。
    34.该方法可以允许对消息主题注册了兴趣的应用程序检索107项,并且数据元素的值可被用作所建议的输入以自动完成检索应用程序中的匹配数据结构的字段。该方法可以提示108用户输入以确认或拒绝所建议的输入。
    35.所定义的数据结构内的每个数据元素可以被标记,并且当应用程序检索107所发布的值时,它使用内部标签来将数据元素匹配到应用程序中的对应用户界面标签。
    36.参考图2,示意图示出了在具有操作系统210和两个应用程序的计算设备200的上下文中的所描述的方法的示例实施例,这两个应用程序在发布/订阅消息传递系统中担任发布应用程序230和订阅应用程序240的角色。
    37.操作系统210使用提供消息传递中间件功能的发布/订阅消息传递系统220。发布/订阅消息传递系统220提供消息传递,其中信息提供者与信息消费者分离。信息提供者(被称为发布者)将所发布的消息分类为主题,订阅者表达对一个或多个主题的兴趣,并仅接收感兴趣的消息。
    38.发布/订阅消息传递系统220已经针对不同的所定义的数据结构定义了消息主题队列221。在该示例中,消息主题可以是针对用于银行信息的数据结构。
    39.发布应用程序230可具有符合所定义的数据结构格式的文本、数据字段、或图像。在该示例中,数据结构231可以是已识别格式的银行信息,其具有采用已识别格式的数据的多个值a 232、值b 233、值c 234。
    40.在账户信息的情况下,文本遵循设定格式:
    41.账户名:xxxxx(4-18个字符)(值a 232)
    42.账号:xxxxxx(8位)(值b 233)
    43.银行代码:xx-xx-xx(6位)(值c 234)
    44.发布应用程序230可以例如是经由在文本编辑应用程序中已打开的文本消息或基于文本的文档已接收了个人的银行信息的消息传递应用程序或电子邮件应用程序。值232、233、234作为项222被发布到用于数据结构的消息主题队列221。在一些实施例中,可以使用光学字符识别(例如,其中银行详情已经被捕获为屏幕截图)来从图像检测和检索数据值。
    45.订阅应用程序240可以订阅消息主题队列221,因为银行应用程序具有在等效的数据结构241中需要输入值的字段。订阅应用程序240可以被打开,并且用户可以与匹配数据结构的表单交互。来自消息主题队列221的具有值232、233、234的项222可以被发布给订阅应用程序240,以使它们可用于在订阅应用程序240中的适当字段内自动完成。如果用户接受/选择了数据结构,则该数据结构可以被用于自动地将相关值填充到银行应用程序中的相关表单字段中。
    46.在应用程序所提供的主题队列的更简单的实施例中,一个例子可以是银行应用程序,其定义在安装银行应用程序时要使用的主题队列“账户详情”。操作系统知道将匹配所定义的“账户详情”数据结构的分组放到用于银行应用程序的主题队列上。
    47.数据元素的数据格式不限于文本串或数字串。例如,用户可能想要将数字图像从一个应用程序复制粘贴到另一个应用程序,可以识别不仅包括数字图像而且包括任何相关联的html属性(诸如在图像“alt”属性中定义的文本)的图像数据结构。正如其它示例一样,这样做的好处会是它会便于复制和粘贴(或自动建议)相关的数据集,而不是一次只复制粘贴一个数据。
    48.使用所描述的方法的数据共享可以以与在操作系统级别提供的用于应用程序的位置服务的数据共享类似的方式使用。可以存在用于应用程序选择它们是否想要利用该数据共享功能的操作系统配置选项。
    49.还可以向用户提供选择(支持该功能的那些应用程序中的)哪些应用程序被允许在用户的设备上这样做的选项。例如,用户可以决定在某些应用程序上允许该功能,而在其它应用程序上不允许该功能。队列深度和消息保留时间可以根据需要来配置。
    50.由于存储数据结构和订阅使用它们的性质,因此,所描述的方法收集合适的数据结构以用于快速、自动地再利用。所描述的方法生成动态表单对象以使数据输入更容易。
    51.该方法可以被应用于其中使用了已知的标准数据结构(例如,银行详情、个人身份源、信用卡、俱乐部会员、递送追踪码等)的任何场景。
    52.参考图3,描述提供针对在计算设备300的操作系统310上提供的数据值的消息传递系统的数据值转移系统320的组件的进一步细节。
    53.计算设备300可以包括至少一个处理器301、硬件模块、或用于执行所描述的组件的功能的电路,所描述的组件可以是在至少一个处理器上执行的软件单元。可以提供运行并行处理线程的多个处理器,使得能够并行处理组件的一些或全部功能。存储器302可以被配置为向至少一个处理器301提供计算机指令303以执行组件的功能。
    54.数据值转移系统320可以使用诸如发布/订阅消息传递系统的消息传递基础结构。数据值转移系统320可以包括数据值转移应用程序接口331,用于在应用程序330中提供与数据值的转移相关的功能。
    55.可以在操作系统310上运行的应用程序330可以具有提供所定义的数据结构的值或检索值的功能,例如作为发布应用程序和/或订阅应用程序。应用程序330可以被下载到计算设备300上,或者可以是从远程服务器访问的网络应用程序。
    56.数据值转移系统320可以包括:数据结构定义组件321,用于定义多个数据结构作为消息主题;以及配置组件324,用于配置应用程序以用于提供值和检索值以及用于针对主题来定义数据结构。
    57.数据值转移系统320可以包括主题组件322,用于注册应用程序对主题的兴趣。
    58.项接收组件323用于从应用程序330提取和接收数据结构的数据元素的值的项,项存储组件326用于将项与所定义的数据结构的给定主题名称相关联地存储。可以提供多个项存储组件326以用于将用于每个主题的值的项存储所配置的时间段和/或到队列深度。
    59.可以提供项访问组件325以用于使项对于被注册到主题的应用程序330可用,以用于在应用程序330中的对应数据结构中输入值。
    60.在发布/订阅消息传递系统中,项接收组件323可以是发布组件,项访问组件325可以是订阅组件,并且项存储组件326可以是主题消息队列。
    61.数据值转移应用程序接口331可以提供识别组件332,用于在应用程序330处识别所定义的数据结构的数据元素,例如使用用于在应用程序内识别具有所定义的数据元素的格式的多个数据元素的集合的模式识别组件338,并提供用于将项提供给数据值转移系统320的项接收组件323的项提供组件333。
    62.在应用程序330处的数据值转移应用程序接口331可提供用于从项存储组件326检索数据元素的值的项的检索组件334,以及用于将所检索的项的值添加到应用程序330中的字段的自动完成组件335。可以提供确认组件336以用于接受或拒绝自动完成值建议。
    63.在应用程序330处的数据值转移应用程序接口331还可包括应用程序配置组件337,用于配置应用程序是否可提供项和从数据值转移系统320检索项。
    64.图4描绘了根据本发明的实施例的用于计算设备300的计算系统的组件的框图。应当理解,图4仅提供了一种实现的说明,而并不暗示对其中可实现不同实施例的环境的任何限制。可以对所描述的环境进行许多修改。
    65.计算系统可以包括一个或多个处理器402、一个或多个计算机可读ram 404、一个或多个计算机可读rom 406、一个或多个计算机可读存储介质408、设备驱动程序412、读/写驱动程序或接口414、以及网络适配器或接口416,所有这些都通过通信结构418互连。通信结构418可以用被设计用于在处理器(诸如微处理器、通信和网络处理器等)、系统存储器、外围设备和系统内的任何其它硬件组件之间传递数据和/或控制信息的任何体系结构来实现。
    66.一个或多个操作系统410以及应用程序411例如被存储在一个或多个计算机可读存储介质408上以由一个或多个处理器402经由一个或多个相应的ram 404(通常包括高速缓冲存储器)来执行。在所示的实施例中,根据本发明的实施例,每个计算机可读存储介质408可以是内部硬盘驱动器的磁盘存储设备、cd-rom、dvd、记忆棒、磁带、磁盘、光盘、诸如ram、rom、eprom、闪存之类的半导体存储设备、或者可以存储计算机程序和数字信息的任何其它计算机可读存储介质。
    67.计算系统还可以包括r/w驱动程序或接口414,以从一个或多个便携式计算机可读存储介质426读取和向其写入。计算系统上的应用程序411可以被存储在一个或多个便携式计算机可读存储介质426上,经由相应的r/w驱动程序或接口414读取,并且被加载到相应的计算机可读存储介质408中。
    68.计算系统还可以包括网络适配器或接口416,诸如tcp/ip适配卡或无线通信适配器。计算系统上的应用程序411可以经由网络(例如,互联网、局域网或其他广域网或无线网络)和网络适配器或接口416从外部计算机或外部存储设备下载到计算设备。程序可以从网络适配器或接口416加载到计算机可读存储介质408中。网络可以包括铜线、光纤、无线传输、路由器、防火墙、交换机、网关计算机和边缘服务器。
    69.计算系统还可以包括显示屏420、键盘或小键盘422、以及计算机鼠标或触摸板424。设备驱动程序412与显示屏420接口以用于成像、与键盘或小键盘422接口、与计算机鼠标或触摸板424接口、和/或与显示屏420接口以用于压力感测字母数字字符输入和用户选择。设备驱动程序412、r/w驱动程序或接口414、以及网络适配器或接口416可包括被存储在计算机可读存储介质408和/或rom 406中的硬件和软件。
    70.计算系统可以是通信设备、智能电话、或具有电话能力并包括用于连接到通信信道(例如,蜂窝电话网络、数据传输网络、wi-fi网络、卫星电话网络、互联网网络、卫星互联网网络等)的通信元件的计算设备。
    71.本发明可以是任何可能的技术细节集成水平的系统、方法和/或计算机程序产品。计算机程序产品可以包括在其上具有计算机可读程序指令的(一个或多个)计算机可读存储介质,计算机可读程序指令用于使处理器执行本发明的各方面。
    72.计算机可读存储介质可以是可保持并存储由指令执行设备使用的指令的有形设备。计算机可读存储介质可以是例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备、或前述存储设备的任何合适的组合。计算机可读存储介质的更具体示例的非穷举列表包括以下:便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式光盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、诸如在上面记录有指令的打孔卡或凹槽中的凸起结构的机械编码设备、以及上述设备的任何适当的组合。如本文所使用的计算机可读存储介质不应被解释为是暂时性信号本身,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤线缆的光脉冲)、或通过导线传输的电信号。
    73.本文描述的计算机可读程序指令可以从计算机可读存储介质下载到相应的计算/处理设备,或者经由网络(例如互联网、局域网、广域网和/或无线网络)下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换
    机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
    74.用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路的配置数据、或者以一种或多种编程语言(包括面向对象的编程语言,例如smalltalk、c 等)和过程编程语言(例如“c”编程语言或类似的编程语言)的任意组合编写的源代码或目标代码。计算机可读程序指令可以完全在用户的计算机上执行、部分在用户的计算机上执行、作为独立的软件包执行、部分在用户的计算机上并且部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在后一种场景下,远程计算机可以通过任何类型的网络(包括局域网(lan)或广域网(wan))连接到用户的计算机,或者可以连接到外部计算机(例如,使用互联网服务提供商通过互联网)。在一些实施例中,包括例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla)的电子电路可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以使电子电路个性化,以便执行本发明的各方面。
    75.在此参考根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明的各方面。将理解,流程图和/或框图的每个框以及流程图和/或框图中的框的组合可以由计算机可读程序指令来实现。
    76.这些计算机可读程序指令可以被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,以使得经由计算机或其他可编程数据处理装置的处理器而执行的指令创建用于实现流程图和/或框图的一个或多个框中指定的功能/动作的装置。这些计算机可读程序指令还可以存储在计算机可读存储介质中,其可以引导计算机、可编程数据处理装置和/或其他设备以特定方式工作,已使得在其中存储有指令的计算机可读存储介质包括制品,该制品包括实现流程图和/或框图的一个或多个框中指定的功能/动作的各方面的指令。
    77.计算机可读程序指令还可以被加载到计算机、其他可编程数据处理装置或其他设备上,以使一系列操作步骤将在计算机、其他可编程装置或其他设备上执行,以产生计算机实现的过程,以使得在计算机、其他可编程装置或其他设备上执行的指令实现流程图和/或框图的一个或多个框中指定的功能/动作。
    78.附图中的流程图和框图示出了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。在这点上,流程图或框图中的每个框可以表示指令的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些替代实施方案中,框中所注明的功能可不按图中所注明的次序发生。例如,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行,这取决于所涉及的功能。还将注意,框图和/或流程图图示的每个框以及框图和/或流程图图示中的框的组合可以由执行指定功能或动作或执行专用硬件和计算机指令的组合的专用的基于硬件的系统来实现。
    79.本发明的计算机程序产品包括一个或多个计算机可读硬件存储设备,在其中存储有计算机可读程序代码,所述程序代码可由一个或多个处理器执行以实现本发明的方法。
    80.本发明的计算机系统包括一个或多个处理器、一个或多个存储器以及一个或多个
    计算机可读硬件存储设备,所述一个或多个硬件存储设备包含可由一个或多个处理器经由一个或多个存储器执行以实现本发明的方法的程序代码。
    81.本文已经出于说明的目的呈现了对各种实施例的描述,但其并非旨在是穷尽性的或限于所公开的实施例。在不背离所描述的实施例的范围的情况下,许多修改和变化对于本领域的普通技术人员将是显而易见的。选择本文所使用的术语以最好地解释实施例的原理、实际应用或对市场上存在的技术改进,或使本领域的其他普通技术人员能够理解本文所公开的实施例。
    82.在不背离本发明的范围的情况下,可以对前述内容进行改进和修改。

    技术特征:
    1.一种用于经由计算机操作系统中的消息传递而在应用程序之间共享数据结构值的计算机实现的方法,包括:定义多个数据结构,其中的每个数据结构具有给定主题名称,数据结构包括多个数据元素的定义格式的集合;注册应用程序对主题的兴趣;在应用程序内识别具有所定义的数据结构的格式的多个数据元素的集合,并将项与所述所定义的数据结构的给定主题名称相关联地存储,其中,所述项是所识别的数据元素的数据值的集合;以及使所述项对于被注册到所述主题的应用程序可用,以用于在所述应用程序中的对应数据结构中输入所述值。2.根据权利要求1所述的方法,其中,所定义的数据结构中的数据元素的每一个具有可匹配到接收应用程序中的用户界面标签的标签,以用在所述项中提供的数据元素的数据值自动完成字段。3.根据权利要求1所述的方法,其中,所述数据元素的所述定义格式包括以下组中的一个或多个:字符类型串;字符类型排列;图像数据类型;以及元数据属性。4.根据权利要求1所述的方法,其中,将项与所述给定主题名称相关联地存储将所述项存储所述主题名称的所配置的持续时间和/或已存储项的数量。5.根据权利要求1所述的方法,其中,在应用程序内识别多个数据元素的集合包括:提供到所述应用程序的应用程序接口,以及针对所述应用程序内的所述数据元素使用模式识别。6.根据权利要求1所述的方法,包括:由用户定义具有用户配置的主题名称的数据结构。7.根据权利要求1所述的方法,包括:在所述操作系统处配置被允许注册对主题的兴趣和/或提供用于主题的项的应用程序,以及向用户显示主题名称列表以及所注册的应用的兴趣以用于所述用户的访问控制。8.根据权利要求1所述的方法,包括:在应用程序处配置所述应用程序是否能够注册对主题的兴趣和/或提供用于主题的项。9.根据权利要求1所述的方法,其中,所述消息传递是由操作系统提供的发布/订阅消息传递基础结构,并且其中:注册应用程序的兴趣注册对主题的订阅者;以及存储项将项发布到主题队列以用于发送到订阅应用程序。10.根据权利要求1所述的方法,其中,将所述项发送到应用程序包括:应用程序周期性地拉取用于主题的项。11.一种用于经由操作系统中的消息传递而在应用程序之间共享数据结构值的系统,包括:处理器和存储器,所述存储器被配置为向所述处理器提供计算机程序指令以执行数据值转移系统的组件的功能,所述组件包括:数据结构定义组件,用于定义多个数据结构,其中的每个数据结构具有给定主题名称,数据结构包括多个数据元素的定义格式的集合;
    主题组件,用于注册应用程序对主题的兴趣;识别组件,用于在应用程序内识别具有所定义的数据结构的格式的多个数据元素的集合;项存储组件,用于将项与所述所定义的数据结构的所述给定主题名称相关联地存储,其中,所述项是所识别的数据元素的数据值的集合;以及项访问组件,用于使所述项对于被注册到所述主题的应用程序可用,以用于在所述应用程序中的对应数据结构中输入所述值。12.根据权利要求11所述的系统,其中,所述数据结构定义组件包括在所定义的数据结构中提供与可匹配到接收应用程序中的用户界面标签的标签相关联的数据元素,以用在所述项中提供的数据元素的数据值自动完成字段。13.根据权利要求11所述的系统,其中,所述项存储组件将项与所述给定主题名称相关联地存储,并且将所述项存储所述主题名称的所配置的持续时间和/或已存储项的数量。14.根据权利要求11所述的系统,包括:配置组件,用于在所述操作系统处配置被允许注册对主题的兴趣和/或提供用于主题的项的应用程序,并向用户显示主题名称列表以及所注册的应用的兴趣以用于所述用户的访问控制。15.根据权利要求11所述的系统,包括:应用程序接口组件,用于与所述数据值转移系统相接,所述应用程序接口组件包括用于提供用于主题的项的项提供组件和用于检索用于主题的项的检索组件。16.根据权利要求15所述的系统,其中,所述应用程序接口组件包括模式识别组件,用于在应用程序内识别具有所定义的数据元素的格式的多个数据元素的集合。17.根据权利要求15所述的系统,其中,所述应用程序接口组件包括自动完成组件,用于将项的数据元素值的标签匹配到用户界面标签,以在所述应用程序中用所述数据元素值自动完成字段。18.根据权利要求11所述的系统,包括:确认组件,用于提示用户输入以确认或拒绝在应用程序中自动完成字段。19.根据权利要求11所述的系统,其中,所述消息传递由操作系统所提供的发布/订阅消息传递基础结构提供,并且其中:用于注册应用程序的兴趣的所述主题组件注册对主题的订阅者;以及用于存储项的所述项存储组件将项发布到主题队列以用于发送到订阅应用程序。20.一种用于经由操作系统中的消息传递而在应用程序之间共享数据结构值的计算机程序产品,所述计算机程序产品包括具有程序指令的计算机可读存储介质,所述程序指令可由处理器执行以使所述处理器:定义多个数据结构,其中的每个数据结构具有给定主题名称,数据结构包括多个数据元素的定义格式的集合;注册应用程序对主题的兴趣;在应用程序内识别具有所定义的数据结构的格式的多个数据元素的集合,并将项与所述所定义的数据结构的给定主题名称相关联地存储,其中所述项是所识别的数据元素的数据值的集合;以及使所述项对于被注册到所述主题的应用程序可用,以用于在所述应用程序中的对应数
    据结构中输入所述值。

    技术总结
    提供了经由计算机操作系统中的消息传递而在应用程序之间共享数据结构值。定义多个数据结构,每个数据结构具有给定主题名称,并且数据结构包括多个数据元素的定义格式的集合。注册应用程序对主题的兴趣。在应用程序内识别具有所定义的数据结构的格式的多个数据元素的集合,并将项与所定义的数据结构的给定主题名称相关联地存储,其中该项是所识别的数据元素的数据值的集合。使项对于被注册到主题的应用程序可用,以用于在应用程序中的相应数据结构中输入值。构中输入值。构中输入值。


    技术研发人员:C
    受保护的技术使用者:国际商业机器公司
    技术研发日:2021.11.03
    技术公布日:2022/5/25
    转载请注明原文地址:https://tc.8miu.com/read-8241.html

    最新回复(0)