CN102884507A - 客户机应用程序和网页集成 - Google Patents

客户机应用程序和网页集成 Download PDF

Info

Publication number
CN102884507A
CN102884507A CN2011800208485A CN201180020848A CN102884507A CN 102884507 A CN102884507 A CN 102884507A CN 2011800208485 A CN2011800208485 A CN 2011800208485A CN 201180020848 A CN201180020848 A CN 201180020848A CN 102884507 A CN102884507 A CN 102884507A
Authority
CN
China
Prior art keywords
application program
function
showing
computer
user
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.)
Pending
Application number
CN2011800208485A
Other languages
English (en)
Inventor
司马云瑞
陈宏�
董颖涛
张继超
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Priority to CN201510390794.1A priority Critical patent/CN105138313A/zh
Publication of CN102884507A publication Critical patent/CN102884507A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units

Abstract

提供了应用程序集成。第一应用程序可以在客户机计算机上执行。该第一应用程序可连接到诸如基于浏览器的应用程序等第二应用程序。该第一应用程序可以标识与第二应用程序相关联的至少一个功能,并在该第一应用程序内显示与该至少一个功能相关联的用户界面元素。

Description

客户机应用程序和网页集成
背景技术
客户机应用程序和网页集成是用于在基于web浏览器的功能与独立应用程序功能之间提供互操作性的方法。在一些情况下,基于客户机的应用程序可以在无需任何网络支持的情况下在计算机上执行,而基于浏览器的应用程序可以在web浏览器内执行,从而减轻了将应用程序安装在客户机上的需求。然而,这可造成工作重复,要开发类似功能的两个单独版本。此外,这两个不同的应用程序会呈现不一致的用户体验,并且不能同时利用对客户机应用程序和web浏览器功能可用的本地资源。这可对在客户机应用程序和基于浏览器的应用程序之间切换的用户造成混淆和低效。常规策略是分开开发这两个应用程序,但这通常造成问题,因为常规策略不允许这两个版本之间的集成、互操作性、以及一致的用户体验。
概述
提供了客户机应用程序和网页集成。提供本概述是为了以简化的形式介绍将在以下详细描述中进一步描述的一些概念。本概述并非旨在标识出所要求保护的主题的关键特征或必要特征。本概述亦非旨在用于限制所要求保护的主题的范围。
提供了应用程序集成。第一应用程序可以在客户机计算机上执行。该第一应用程序可连接到诸如基于浏览器的应用程序等第二应用程序。该第一应用程序可以标识与第二应用程序相关联的至少一个功能,并在该第一应用程序内显示与该至少一个功能相关联的用户界面元素。
前述概括描述和以下详细描述两者都提供示例且都只是说明性的。因此,前述概括描述和以下详细描述不应被认为是限制性的。此外,除了此处所阐明的那些之外还可提供其他特征或变型。例如,各实施方式可涉及在具体实施方式中描述的各种特征组合和子组合。
附图简述
合并在本发明中并构成其一部分的附图示出本发明的各种实施方式。在附图中:
图1是一操作环境的框图;
图2A-2B是示例应用程序的框图;
图3是集成客户机应用程序的框图;
图4是用于提供应用程序集成的方法的流程图;以及
图5是包括计算设备的系统的框图。
详细描述
以下详细描述参考各个附图。只要可能,就在附图和以下描述中使用相同的附图标记来指示相同或类似的要素。尽管可能描述了本发明的各实施方式,但修改、改编和其他实现也是可能的。例如,可以对附图中所示出的要素进行置换、添加、或修改,且可以通过对所公开的方法置换、重新排序、或添加阶段来修改此处所描述的方法。因此,以下详细描述并不限制本发明。相反,本发明的正确范围由所附权利要求书确定。
提供了客户机应用程序和网页集成。根据本发明的各实施方式,一种用于在基于浏览器的和基于客户机的应用程序之间提供互操作性的设计。该设计可以将相关的基于浏览器的应用程序上可用的动作通知给基于客户机的应用程序,以使这些动作可以在基于客户机应用程序的用户界面(UI)上动态地展示。用户可以通过基于客户机的应用程序的UI来采取动作,但这些动作可对与基于浏览器的应用程序相关联的数据起作用。在调用从基于浏览器的应用程序展示的动作之前或之后,基于客户机的应用程序还可以执行该基于客户机的应用程序可用,但不在基于浏览器的应用程序中可用的附加商务逻辑。
例如,一公司可以开发两个工资单应用程序。一个应用程序可包括基于客户机的应用程序并且可以由会计用来向雇员的银行账户中转账工资。另一应用程序可以被开发成用于生成工资单报告并允许雇员通过web浏览器检查它们的基于浏览器的应用程序。这两个应用程序都可以正确地运作,但集成这些应用程序可允许公司添加附加商务逻辑。这样的逻辑可包括例如允许在转账工资后立即生成工资单报告。工资单报告随后可被直接发送给雇员。
图1是一操作环境100的框图。操作环境100可包括客户机110、网络120、以及多个web服务器130(A)-(B)。网络120可包括例如诸如企业内联网等专有网络和/或诸如因特网等公共网络。web服务器130(A)-(B)可包括可用于接收例如来自客户机110的网页请求并用所请求的网页进行响应的计算机。web服务器130(A)-(B)还可用于为基于浏览器的应用程序提供执行框架。例如,客户机110可以经由web浏览器应用程序请求包括基于浏览器的工资单报告应用程序的网页。例如,web服务器130(A)可以用该网页和相关联的应用程序对该请求进行响应。客户机110随后可以经由与web浏览器应用程序的交互来请求web服务器130(A)执行与该基于浏览器的应用程序相关联的功能。
图2A是示例的基于浏览器的应用程序200的框图。基于浏览器的应用程序200可包括包含菜单栏210、第一功能UI元素230、以及第二功能UI元素240的用户界面(UI)。例如,基于浏览器的应用程序200可包括财务应用程序,该财务应用程序包含雇员数据以及与第一功能UI元素230相关联的用于生成报告的功能、和/或与第二功能UI元素240相关联的用于通知雇员事务已经完成的功能。
图2B是客户机应用程序250的框图。客户机应用程序250可包括包含多个UI动作元素260(A)-(C)的用户界面带状条(ribbon)265。客户机应用程序250可包括例如包含雇员数据和用于执行将资金转账到与雇员相关联的账户的功能的会计应用程序。
图3是集成客户机应用程序300的框图。集成客户机应用程序可包括包含多个UI动作元素260(A)-(C)和多个集成UI元素310(A)-(B)的用户界面带状条265。集成UI元素310(A)-(B)可以基于由基于浏览器的应用程序200所展示的功能来集成到用户界面带状条265中。根据本发明的各实施方式,集成客户机应用程序300可用于访问、修改、和/或同步与基于浏览器的应用程序200相关联的雇员数据。
并非与现有UI分开呈现网页,集成客户机应用程序300可以集成基于浏览器的应用程序200所展示的动作以实现一致的用户体验。例如,根据与集成客户机应用程序300相关联的视觉外观,可以在用户界面带状条265中显示与第一功能UI元素230和/或第二功能UI元素240相关联的功能。该视觉外观可包括诸如色彩、文本样式、位置、图标、和/或菜单布置等配置细节。
根据本发明的各实施方式,集成客户机应用程序300可在用户请求打开该应用程序时初始化。集成客户机应用程序300可以根据与集成客户机应用程序300的配置相关联的统一资源定位符(URL)来加载网页。web浏览器控件可包括例如用.NET框架发布的标准ActiveXTM控件或托管控件,并可以允许集成客户机应用程序300访问与常规web浏览器应用程序相似的基于浏览器的应用程序200。
在加载网页之后,该网页可以将其内容展示给集成客户机应用程序300。对于上述示例财务应用程序,可以将与基于浏览器的应用程序200相关联的“生成报告”和“通知”功能和/或雇员数据展示给基于客户机的应用程序。所展示的数据的其他示例可包括帮助文本、主题索引、和/或方法调用地址或名称。
例如,可以通过使基于浏览器的应用程序200调用在集成客户机应用程序300中实现的方法来展示与基于浏览器的应用程序200相关联的数据和功能。基于浏览器的应用程序200随后可以将数据和/或功能引用交换到集成客户机应用程序300。基于浏览器的应用程序200可以负责将所有必要信息构建成串并将该串传递到集成客户机应用程序300。
该交换可包括若干片段。例如,每一片段可包括标题(例如,“HelpId(帮助Id)”)和/或值串(例如,“<HelpID>”)。该值串可以标识与该片段相关联的类别,其可用来配置与该片段相关联的用户界面元素在集成客户机应用程序300内的视觉外观。在HelpID片段中,该值可包括数据串。在诸如方法列表片段等另一示例中,该值可包括可将方法映射到它的名称并允许稍后对它的调用的多个方法名和方法地址对。基于浏览器的应用程序200可通过调用包括在与基于浏览器的应用程序200相关联的网页中的诸如javascript方法“window.external.Expose(segmentString);”等方法来将这些片段传递给集成客户机应用程序300。
根据本发明的各实施方式,还可以通过扩展HTML以添加用于展示数据和功能的附加标签来展示这些数据和功能。网页可以指定哪些数据和/或功能可在HTML中展示,并且集成客户机应用程序300可以解析这些标签。集成客户机应用程序300随后可以向其工具栏、上下文菜单、和/或标签所指定的其他控件(如UI带状条265)展示相关联的动作。标签的句法可包括例如:
<Toolbar>
<button name=”Generate a report”onclick=”GenerateReport()”/>
</Toolbar>
在该工具栏标签内,数据和诸如GenerateReport(生成报告)等功能可以展示给集成客户机应用程序300。该标签还可以指定哪一控件可表示该功能。在以上这一示例中,在解析该HTML之后,可以向集成客户机应用程序300的带状条UI 265添加按钮。集成客户机应用程序300的用户可以点击UI带状条265中的“生成报告”按钮(例如,集成UI元素310(A))以使基于浏览器的应用程序200生成报告。另外,集成客户机应用程序300在调用基于浏览器的功能之前和/或之后可以执行预调用和/或后调用功能。
集成客户机应用程序300所调用的动作或方法可由基于浏览器的应用程序200来执行。基于浏览器的应用程序200随后可以向集成客户机应用程序300发送包括成功/失败结果和/或附加数据的完成通知。
图4是阐明根据本发明的一实施方式的用于提供应用程序集成的方法400中所涉及的各概括阶段的流程图。方法400可使用如将在以下参考图5更详细地描述的计算设备500来实现。以下将更详细地描述实现方法400的各阶段的方式。方法400可开始于起始框405并继续至阶段410,在此计算设备500可初始化客户机应用程序并连接到基于浏览器的应用程序。例如,客户机100可以从用户接收初始化客户机应用程序250的请求。客户机应用程序250随后可根据诸如URL等与客户机应用程序250的配置相关联的web位置连接到基于浏览器的应用程序200。
从阶段410,方法400可前进到阶段415,在此计算设备500可以确定基于浏览器的应用程序是否包括任何展示的数据和/或功能。例如,基于浏览器的应用程序200可以执行用于向客户机应用程序250展示数据和/或功能的javascript方法。根据本发明的各实施方式,客户机应用程序250可以解析基于浏览器的应用程序200的网页来标识任何展示的数据和/或功能。
如果在阶段415标识了所展示的元素,则方法400可前进到阶段420,在此计算设备500可以向客户机应用程序添加用户界面元素。例如,客户机应用程序250可以添加与基于浏览器的应用程序200的所展示的功能相关联的多个集成UI元素310(A)-(B),从而得到集成客户机应用程序300的用户界面。集成客户机应用程序300可以将与客户机应用程序250相关联的视觉样式应用于集成UI元素310(A)-(B),以向集成客户机应用程序300的用户提供一致的用户体验。
从阶段420,或如果在阶段415没有标识所展示的数据和/或功能,则方法400可前进到阶段425,在此计算设备500可以确定是否有任何附加网页和/或基于浏览器的应用程序与客户机应用程序200相关联。如果有,则方法400可返回到阶段415并确定其他页面/应用程序中的每一个是否展示要集成到集成客户机应用程序300的数据和/或功能。
一旦不需要访问更多的基于浏览器的页面/应用程序来寻找展示的数据/功能,则方法400可前进到阶段430,在此计算设备500可以接收执行所展示的功能的请求。例如,用户可以选择集成UI元素310(A)来生成报告。
方法400随后可前进到阶段435,在此计算设备500可确定是否定义了任何预执行功能。例如,集成客户机应用程序300可以定义执行与集成UI元素310(A)相关联的所展示的功能之前的功能,诸如验证所有待决转账已在财务应用程序内完成。
如果定义了预执行功能,则方法400可前进到阶段440,在此计算设备500可以执行该预执行功能。例如,集成客户机应用程序300可以调用上述验证功能。根据本发明的各实施方式,如果预执行功能失败,则方法400可在阶段470处结束并向用户显示诸如出错和/或失败通知等消息。
在阶段400执行了预执行功能后,或如果在阶段435确定没有定义预执行功能,则方法400可前进至阶段445,在此计算设备500可以请求基于浏览器的应用程序执行所展示的功能。例如,集成客户机应用程序300可以向基于浏览器的应用程序200发送调用所展示的功能的请求。根据本发明的各实施方式,作为接收执行所展示的功能的请求的补充和/或替换,集成客户机应用程序300可用于接收对基于浏览器的应用程序所展示的数据的改变。因此,在阶段445,集成客户机应用程序300可以将对数据的改变通知给基于浏览器的应用程序200,并且基于浏览器的应用程序200可以将经改变的数据保存到与基于浏览器的应用程序200相关联的数据存储中。
从阶段445,方法400可前进到阶段450,在此计算设备500可以接收与对所展示的功能的调用相关联的结果。例如,基于浏览器的应用程序200可以向集成客户机应用程序300发送成功/失败消息和/或与执行该功能相关联的附加数据。
从阶段450,方法400可前进到阶段455,在此计算设备500可以向用户显示与对所展示的功能的调用相关联的通知。例如,集成客户机应用程序300可以显示指示所展示的功能的执行已经完成的图标、文本显示、对话框、和/或其他用户界面元素,并可以指示在通知中提供的动作的成功或失败。
方法400随后可前进到阶段460,在此计算设备500可确定是否定义了任何后执行功能。例如,集成客户机应用程序300可以定义执行了与集成UI元素310(A)相关联的所展示的功能后的功能,诸如创建日志条目。
如果定义了后执行功能,则方法400可前进到阶段465,在此计算设备500可以执行该后执行功能。例如,集成客户机应用程序300可以调用上述日志记录功能。在阶段465执行了后执行功能后,或如果在阶段460确定没有定义后执行功能,则方法400在阶段470结束。
根据本发明的一实施方式可包括一种用于提供应用程序集成的系统。该系统可包括存储器存储和耦合到该存储器存储的处理单元。该处理单元可用于执行第一应用程序,从第一应用程序连接到第二应用程序,标识与该第二应用程序相关联的至少一个功能,以及在第一应用程序内显示与该至少一个功能相关联的用户界面元素。该处理单元还可用于标识与该至少一个功能相关联的动作类别,并向用户界面元素分配与该动作类别相关联的视觉外观。例如,如果所展示的数据包括帮助主题,则处理单元可在帮助菜单内向该帮助主题分配一个位置和/或向可用于访问该帮助主题的UI元素分配问号图标。
根据本发明的另一实施方式可包括一种用于提供应用程序集成的系统。该系统可包括存储器存储和耦合到该存储器存储的处理单元。该处理单元可用于初始化第一应用程序并确定至少一个第二应用程序是否包括展示的元素。如果是,则处理单元可用于在第一应用程序的用户界面内显示该至少一个第二应用程序的所展示的元素可供该第一应用程序的用户使用的指示。
根据本发明的又一实施方式可包括一种用于提供应用程序集成的系统。该系统可包括存储器存储和耦合到该存储器存储的处理单元。该处理单元可用于从基于客户机的应用程序连接到至少一个基于浏览器的应用程序,标识与该至少一个基于浏览器的应用程序相关联的至少一个所展示的功能,在基于客户机的应用程序内显示与该至少一个所展示的功能相关联的用户界面元素,接收执行该至少一个所展示的功能的请求,以及确定基于客户机的应用程序是否包括与该至少一个所展示的功能相关联的预执行功能。如果基于客户机的应用程序包括预执行功能,则处理单元可用于执行该预执行功能。处理单元随后可向该至少一个基于浏览器的应用程序发送执行该至少一个所展示的功能的请求,从该至少一个基于浏览器的应用程序接收与由该至少一个基于浏览器的应用程序执行该至少一个所展示的功能的请求相关联的结果,向基于客户机的应用程序的用户显示与接收到的结果相关联的通知,以及确定该基于客户机的应用程序是否包括与该至少一个所展示的功能相关联的后执行功能。如果是,则处理单元可用于执行该后执行功能。
图5是包括计算设备500的系统的框图。根据本发明的一个实施方式,上述存储器存储和处理单元可以在诸如图5的计算设备500等计算设备中实现。可以使用硬件、软件或固件的任何合适的组合来实现该存储器存储和处理单元。例如,存储器存储和处理单元可以用计算设备500或结合计算设备500的其他计算设备518中的任意一个来实现。根据本发明的各实施方式,上述系统、设备和处理器是示例,而其他系统、设备和处理器可以包括上述存储器存储和处理单元。
参考图5,根据本发明的一实施方式的系统可包括计算设备,诸如计算设备500。在一基本配置中,计算设备500可以包括至少一个处理单元502和系统存储器504。取决于计算设备的配置和类型,系统存储器504可以包括,但不限于,易失性存储器(例如,随机存取存储器(RAM))、非易失性存储器(例如,只读存储器(ROM))、闪存或任何组合。系统存储器504可以包括操作系统505、一个或多个编程模块506,且可以包括客户机应用程序507。例如,操作系统505可适用于控制计算设备500的操作。在一个实施方式中,编程模块506可包括web浏览器应用程序520。此外,本发明的各实施方式可以结合图形库、其他操作系统、或任何其他应用程序来实践,且不限于任何特定应用程序或系统。该基本配置在图5中由虚线508内的组件示出。
计算设备500还可具有附加特征或功能。例如,计算设备500还可包括附加数据存储设备(可移动和/或不可移动),诸如,例如磁盘、光盘或磁带。这些附加存储在图5中由可移动存储509和不可移动存储510示出。计算机存储介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。系统存储器504、可移动存储509和不可移动存储510都是计算机存储介质(即,存储器存储)的示例。计算机存储介质可以包括,但不限于,RAM、ROM、电可擦除只读存储器(EEPROM)、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光存储、磁带盒、磁带、磁盘存储或其他磁性存储设备、或可用于存储信息且可以由计算设备500访问的任何其他介质。任何这样的存储介质都可以是设备500的一部分并可包括非临时性存储介质。计算设备500还可以具有输入设备512,如键盘、鼠标、笔、声音输入设备、触摸输入设备等。还可包括诸如显示器、扬声器、打印机等输出设备514。上述设备是示例且可以使用其他设备。
计算设备500还可包含可允许设备500诸如通过例如内联网或因特网等分布式计算环境中的网络来与其他计算设备518进行通信的通信连接516。通信连接516是通信介质的一个示例。通信介质通常由诸如载波或其他传输机制等已调制数据信号中的计算机可读指令、数据结构、程序模块或其他数据来体现,并包括任何信息传递介质。术语“已调制数据信号”可以描述以对该信号中的信息进行编码的方式设定或者改变其一个或多个特征的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接等有线介质,以及诸如声学、射频(RF)、红外线和其他无线介质等无线介质。如此处所使用的术语“计算机可读介质“可以包括存储介质和通信介质两者。
如上所述,可以在系统存储器504中存储包括操作系统505在内的多个程序模块和数据文件。当在处理单元502上执行时,编程模块506(例如,web浏览器应用程序520)可执行各个进程,包括例如,如上所述的方法400的各阶段中的一个或多个。前述进程是示例,且处理单元502可执行其他进程。根据本发明的各实施方式可以使用的其他编程模块可以包括电子邮件和联系人应用程序、文字处理应用程序、电子表格应用程序、数据库应用程序、幻灯片演示应用程序、绘图或计算机辅助应用程序等。
一般而言,根据本发明的各实施方式,程序模块可以包括可以执行特定任务或可以实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。此外,本发明的各实施方式可用其他计算机系统配置来实践,包括手持式设备、多处理器系统、基于微处理器的系统或可编程消费电子产品、小型机、大型计算机等。本发明的各实施方式也可以在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实现。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备中。
此外,本发明的各实施方式可在包括分立电子元件的电路、包含逻辑门的封装或集成电子芯片、利用微处理器的电路、或在包含电子元件或微处理器的单个芯片上实现。本发明的各实施方式还可以使用能够执行诸如,例如,AND(与)、OR(或)和NOT(非)等逻辑运算的其他技术来实践,包括但不限于,机械、光学、流体和量子技术。另外,本发明的各实施方式可以在通用计算机或任何其他电路或系统中实现。
例如,本发明的各实施方式可被实现为计算机进程(方法)、计算系统或诸如计算机程序产品或计算机可读介质等制品。计算机程序产品可以是计算机系统可读并编码了用于执行计算机进程的指令的计算机程序的计算机存储介质。计算机程序产品还可以是计算系统可读并编码了用于执行计算机进程的指令的计算机程序的载波上的传播信号。因此,本发明能以硬件和/或软件(包括固件、常驻软件、微码等)来具体化。换言之,本发明的各实施方式可以采用其上包含有供指令执行系统使用或结合其使用的计算机可使用或计算机可读程序代码的计算机可使用或计算机可读存储介质上的计算机程序产品的形式。计算机可使用或计算机可读介质可以是可包含、存储、通信、传播、或传输程序以供指令执行系统、装置或设备使用或结合其使用的任何介质。
计算机可使用或计算机可读介质可以是,例如,但不限于,电、磁、光、电磁、红外、或半导体系统、装置、设备或传播介质。更具体的计算机可读介质示例(非穷尽列表),计算机可读介质可以包括以下:具有一条或多条导线的电连接、便携式计算机盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、光纤、和便携式压缩盘只读存储器(CD-ROM)。注意,计算机可使用或计算机可读介质甚至可以是其上打印有程序的纸张或另一合适的介质,因为程序可以经由例如对纸张或其他介质的光学扫描而电子地捕获,随后如有必要被编译、解释,或以其他合适的方式处理,并随后存储在计算机存储器中。
以上参考例如根据本发明的各实施方式的方法、系统和计算机程序产品的框图和/或操作图示描述了本发明的各实施方式。框中所注明的各功能/动作可以按不同于任何流程图所示的次序出现。例如,取决于所涉及的功能/动作,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以按相反的次序来执行。
尽管已经描述了本发明的某些实施方式,但也可能存在其他实施方式。此外,虽然本发明的各实施方式被描述为与存储在存储器和其他存储介质中的数据相关联,但数据还可以被存储在或读取自其他类型的计算机可读介质,如辅助存储设备,像硬盘、软盘、或CD-ROM;来自因特网的载波;或其他形式的RAM或ROM。此外,所公开的各方法的各阶段可以按任何方式来修改,包括通过对各阶段重新排序和/或插入或删除阶段,而不背离本发明。
包括此处所包括的代码中的版权在内的所有权利都归属于申请人并且是本申请人的财产。申请人保持并保留此处所包括的代码中的所有权利,并授予仅关于所授权的专利的再现且未出于其他目的再现该材料的许可。
虽然本说明书包括各示例,但本发明的范围由所附权利要求书来指示。此外,尽管用对结构特征和/或方法动作专用的语言描述了本说明书,但权利要求书并不限于上述特征或动作。相反,上述具体特征和动作是作为本发明的各实施方式的示例来公开的。

Claims (15)

1.一种用于提供应用程序集成的方法,所述方法包括:
执行第一应用程序;
从所述第一应用程序连接到第二应用程序;
标识与所述第二应用程序相关联的至少一个功能;以及
在所述第一应用程序内显示与所述至少一个功能相关联的用户界面元素。
2.如权利要求1所述的方法,其特征在于,还包括:
接收所述第一应用程序的用户对所显示的用户界面元素的选择;以及
调用与所述第二应用程序相关联的所述至少一个功能。
3.如权利要求3所述的方法,其特征在于,还包括:
确定至少一个第二功能是否由所述第一应用程序提供并与调用所述至少一个功能相关联;以及
响应于确定至少一个第二功能由所述第一应用程序提供并与调用所述至少一个功能相关联,所述第一应用程序调用所述至少一个第二功能。
4.如权利要求3所述的方法,其特征在于,还包括:
所述第一应用程序从所述第二应用程序接收结果通知;以及
向所述第一应用程序的用户显示结果通知。
5.如权利要求1所述的方法,其特征在于,在所述第一应用程序内显示与所述至少一个功能相关联的用户界面元素包括:
标识与所述至少一个功能相关联的动作类别;以及
向所述用户界面元素分配与所述动作类别相关联的视觉外观。
6.一种存储一组指令的计算机可读介质,所述一组指令在被执行时执行一种用于提供应用程序集成的方法,由所述一组指令执行的方法包括:
初始化第一应用程序;
确定至少一个第二应用程序是否包括所展示的元素;以及
响应于确定所述至少一个第二应用程序包括所展示的元素,在所述第一应用程序的用户界面内显示所述至少一个第二应用程序的所展示的元素可供所述第一应用程序的用户使用的指示。
7.如权利要求6所述的计算机可读介质,其特征在于,还包括:
接收所述第一应用程序的用户所请求的动作;
确定所述第一应用程序的用户所请求的动作是否包括对所展示的元素的改变,其中所展示的元素包括数据元素;以及
响应于确定所述第一应用程序的用户所请求的动作包括对所述数据元素的改变,将对所述数据元素的改变通知给所述至少一个第二应用程序。
8.如权利要求6所述的计算机可读介质,其特征在于,所展示的元素包括帮助主题。
9.如权利要求8所述的计算机可读介质,其特征在于,在所述第一应用程序的用户界面内显示所述至少一个第二应用程序的所展示的元素可供所述第一应用程序的用户使用的指示包括将所述帮助主题添加到与所述第一应用程序相关联的帮助菜单。
10.如权利要求6所述的计算机可读介质,其特征在于,所展示的元素包括功能。
11.如权利要求10所述的计算机可读介质,其特征在于,在所述第一应用程序的用户界面内显示所述至少一个第二应用程序的所展示的元素可供所述第一应用程序的用户使用的指示包括将至少一个动作元素添加到与所述第一应用程序相关联的用户界面。
12.如权利要求11所述的计算机可读介质,其特征在于,还包括:
接收所述第一应用程序的用户对所述至少一个动作元素的选择;以及
调用所述至少一个第二应用程序上的功能。
13.如权利要求12所述的计算机可读介质,其特征在于,还包括:
响应于调用所述功能,从所述至少一个第二应用程序接收结果通知;以及
向所述第一应用程序的用户显示与从所述至少一个第二应用程序接收到的结果通知相关联的消息。
14.如权利要求6所述的计算机可读介质,其特征在于,还包括:
标识多个所展示的元素,其中所述多个所展示的元素中的每一个与多个基于浏览器的应用程序中的至少一个相关联;以及
在所述第一应用程序的用户界面内创建与所述多个所展示的元素中的每一个相关联的元素。
15.一种用于提供应用程序集成的系统,所述系统包括:
存储器存储;以及
耦合到所述存储器存储的处理单元,其中所述处理单元用于:
从基于客户机的应用程序连接到至少一个基于浏览器的应用程序,
标识与所述至少一个基于浏览器的应用程序相关联的至少一个所展示的功能,
在所述基于客户机的应用程序内显示用户界面元素,其中所述用户界面元素与所述至少一个所展示的功能相关联,
经由所述用户界面元素从所述基于客户机的应用程序的用户接收对执行所述至少一个所展示的功能的请求,
确定所述基于客户机的应用程序是否包括与所述至少一个所展示的功能相关联的预执行功能,
响应于确定所述基于客户机的应用程序包括与所述至少一个所展示的功能相关联的预执行功能,执行所述预执行功能,
向所述至少一个基于浏览器的应用程序发送执行所述至少一个所展示的功能的请求,
从所述至少一个基于浏览器的应用程序接收与由所述至少一个基于浏览器的应用程序执行所述至少一个所展示的功能的请求相关联的结果,
向所述基于客户机的应用程序的用户显示与所接收到的结果相关联的通知,
确定所述基于客户机的应用程序是否包括与所述至少一个所展示的功能相关联的后执行功能,以及
响应于确定所述基于客户机的应用程序包括与所述至少一个所展示的功能相关联的后执行功能,执行所述后执行功能。
CN2011800208485A 2010-04-28 2011-04-11 客户机应用程序和网页集成 Pending CN102884507A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510390794.1A CN105138313A (zh) 2010-04-28 2011-04-11 客户机应用程序和网页集成

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/768,957 2010-04-28
US12/768,957 US20110271184A1 (en) 2010-04-28 2010-04-28 Client application and web page integration
PCT/US2011/031994 WO2011139490A2 (en) 2010-04-28 2011-04-11 Client application and web page integration

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201510390794.1A Division CN105138313A (zh) 2010-04-28 2011-04-11 客户机应用程序和网页集成

Publications (1)

Publication Number Publication Date
CN102884507A true CN102884507A (zh) 2013-01-16

Family

ID=44859295

Family Applications (2)

Application Number Title Priority Date Filing Date
CN2011800208485A Pending CN102884507A (zh) 2010-04-28 2011-04-11 客户机应用程序和网页集成
CN201510390794.1A Pending CN105138313A (zh) 2010-04-28 2011-04-11 客户机应用程序和网页集成

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201510390794.1A Pending CN105138313A (zh) 2010-04-28 2011-04-11 客户机应用程序和网页集成

Country Status (17)

Country Link
US (1) US20110271184A1 (zh)
EP (1) EP2564314A4 (zh)
JP (1) JP2013528859A (zh)
KR (1) KR20130105287A (zh)
CN (2) CN102884507A (zh)
AR (1) AR081287A1 (zh)
AU (1) AU2011248878B2 (zh)
BR (1) BR112012027253A2 (zh)
CA (1) CA2795201A1 (zh)
CL (1) CL2012002955A1 (zh)
CO (1) CO6660442A2 (zh)
IL (1) IL222258A0 (zh)
MX (1) MX2012012419A (zh)
RU (1) RU2586850C2 (zh)
SG (1) SG184805A1 (zh)
TW (1) TWI536240B (zh)
WO (1) WO2011139490A2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106170789A (zh) * 2014-02-19 2016-11-30 谷歌公司 用于向创意的着陆页提供功能扩展的方法和系统
CN108139951A (zh) * 2015-11-04 2018-06-08 谷歌有限责任公司 针对在通知数据之间的亲和度的通知捆集

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8819155B2 (en) * 2011-12-16 2014-08-26 Business Objects Software Limited System and method for performing centralized common tasks for a set of functions
JP6276526B2 (ja) * 2013-07-04 2018-02-07 株式会社ブロードリーフ 送受信装置、送受信システム、送受信方法及びプログラム
US20150095849A1 (en) * 2013-09-30 2015-04-02 Microsoft Corporation Dialogs positioned with action visualization
TW201610845A (zh) * 2014-09-03 2016-03-16 Stone & Resource Industry R&D Ct 子母應用程式整合方法及其系統
EP3029565A1 (en) * 2014-12-01 2016-06-08 Google, Inc. A method to fetch functionality across applications
US10078740B2 (en) 2014-12-01 2018-09-18 Google Llc Method to fetch functionality across applications
US20170322704A1 (en) * 2016-05-03 2017-11-09 Google Inc. Composition of a user interface through data binding
JP6831759B2 (ja) * 2017-06-29 2021-02-17 株式会社オービックビジネスコンサルタント 給与明細送信装置、給与明細送信方法、及びプログラム
US10621262B2 (en) * 2017-10-30 2020-04-14 RevContent, LLC Configurable feed for display with a web page
US11036358B2 (en) 2017-10-30 2021-06-15 Eternal Strategies, LLC Configurable feed for display with a web page

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1333500A (zh) * 2000-07-13 2002-01-30 国际商业机器公司 在嵌入式环境中直观地集成应用程序的系统和方法
US20070016557A1 (en) * 2005-07-13 2007-01-18 Moore Dennis B Methods for enterprise-level data and process access and presentation
CN1971511A (zh) * 2006-12-20 2007-05-30 北京中星微电子有限公司 一种软件集成的方法及装置
CN101539854A (zh) * 2008-01-24 2009-09-23 西安电子科技大学 一种异构软件界面集成的实现方法

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6434598B1 (en) * 1996-07-01 2002-08-13 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server graphical user interface (#9) framework in an interprise computing framework system
US6460058B2 (en) * 1996-12-06 2002-10-01 Microsoft Corporation Object-oriented framework for hyperlink navigation
US6061695A (en) * 1996-12-06 2000-05-09 Microsoft Corporation Operating system shell having a windowing graphical user interface with a desktop displayed as a hypertext multimedia document
US6266681B1 (en) * 1997-04-08 2001-07-24 Network Commerce Inc. Method and system for inserting code to conditionally incorporate a user interface component in an HTML document
US5964836A (en) * 1997-09-11 1999-10-12 International Business Machines Corporation Apparatus, methods and computer program products for managing web-page-embedded sessions with a host-based application
US6574661B1 (en) * 1997-09-26 2003-06-03 Mci Communications Corporation Integrated proxy interface for web based telecommunication toll-free network management using a network manager for downloading a call routing tree to client
US6182277B1 (en) * 1998-04-15 2001-01-30 Oracle Corporation Methods and apparatus for declarative programming techniques in an object oriented environment
US6675371B1 (en) * 1999-04-30 2004-01-06 Hewlett-Packard Development Company, L.P. Java and native application window integration
US20010027439A1 (en) * 1999-07-16 2001-10-04 Holtzman Henry N. Method and system for computerized form completion
US6865593B1 (en) * 2000-04-12 2005-03-08 Webcollege, Inc. Dynamic integration of web sites
US20020078255A1 (en) * 2000-10-17 2002-06-20 Shankar Narayan Pluggable instantiable distributed objects
US7263663B2 (en) * 2001-03-02 2007-08-28 Oracle International Corporation Customization of user interface presentation in an internet application user interface
US20030050969A1 (en) * 2001-03-20 2003-03-13 Sant Philip Anthony Information integration system
US7406664B1 (en) * 2001-06-15 2008-07-29 Microsoft Corporation System for integrating HTML Web site views into application file dialogs
US7581231B2 (en) * 2001-07-10 2009-08-25 Microsoft Corporation Computing system and method for allowing plurality of applications written in different programming languages to communicate and request resources or services via a common language runtime layer
US20030093471A1 (en) * 2001-10-18 2003-05-15 Mitch Upton System and method using asynchronous messaging for application integration
US7114148B2 (en) * 2002-09-30 2006-09-26 Microsoft Corporation Runtime services for network software platform
US20040225960A1 (en) * 2003-05-09 2004-11-11 Microsoft Corporation System for hosting graphical layout/presentation objects
US20040260806A1 (en) * 2003-06-20 2004-12-23 Eric Martin System supporting communication between a web enabled application and another application
US7493592B2 (en) * 2003-10-24 2009-02-17 Microsoft Corporation Programming interface for a computer platform
CA2563294A1 (en) * 2004-04-09 2005-10-27 Siemens Medical Solutions Health Services Corporation A system for managing operating sessions of an executable application
BRPI0418835A (pt) * 2004-04-29 2007-11-13 Nokia Corp interface gráfica do usuário para exibir as transações eletrÈnicas potenciais futuras, dispositivo eletrÈnico para gerar uma interface gráfica do usuário, estrutura de dados, programa de aplicação do navegador para navegar nas páginas de rede armazenadas em um servidor de rede remoto, dispositivo para operar o programa de aplicação do navegador, dispositivo eletrÈnico para manter a primeira estrutura de dados para uso nas transações eletrÈnicas, e, servidor de rede para facilitar a manutenção da primeira estrutura de dados, método para manter na memória a primeira estrutura de dados, interface gráfica do usuário para uma aplicação do navegador de rede, e, método para facilitar a compra de presentes
US20060129931A1 (en) * 2004-12-10 2006-06-15 Microsoft Corporation Integrated client help viewer for internet-based and local help content
US7802230B1 (en) * 2005-09-19 2010-09-21 Sap Ag Heterogeneous software integration systems and methods
WO2008002274A1 (en) * 2006-06-27 2008-01-03 Inventys Pte Ltd Method and system for client-side user interface enhancement to enable application integration and portalisation
US20080134077A1 (en) * 2006-12-05 2008-06-05 Sap Ag Chameleon graphic user interface
JP2009134684A (ja) * 2007-10-31 2009-06-18 Askul Corp コンピュータ実行可能なネットワーク購買プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1333500A (zh) * 2000-07-13 2002-01-30 国际商业机器公司 在嵌入式环境中直观地集成应用程序的系统和方法
US20070016557A1 (en) * 2005-07-13 2007-01-18 Moore Dennis B Methods for enterprise-level data and process access and presentation
CN1971511A (zh) * 2006-12-20 2007-05-30 北京中星微电子有限公司 一种软件集成的方法及装置
CN101539854A (zh) * 2008-01-24 2009-09-23 西安电子科技大学 一种异构软件界面集成的实现方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106170789A (zh) * 2014-02-19 2016-11-30 谷歌公司 用于向创意的着陆页提供功能扩展的方法和系统
CN108139951A (zh) * 2015-11-04 2018-06-08 谷歌有限责任公司 针对在通知数据之间的亲和度的通知捆集

Also Published As

Publication number Publication date
CN105138313A (zh) 2015-12-09
AU2011248878B2 (en) 2014-05-01
WO2011139490A2 (en) 2011-11-10
CL2012002955A1 (es) 2013-02-22
JP2013528859A (ja) 2013-07-11
EP2564314A4 (en) 2014-02-19
AU2011248878A1 (en) 2012-09-27
AR081287A1 (es) 2012-08-01
MX2012012419A (es) 2012-11-29
US20110271184A1 (en) 2011-11-03
TW201203082A (en) 2012-01-16
SG184805A1 (en) 2012-11-29
EP2564314A2 (en) 2013-03-06
BR112012027253A2 (pt) 2016-07-26
CA2795201A1 (en) 2011-11-10
RU2586850C2 (ru) 2016-06-10
RU2012145856A (ru) 2014-05-10
CO6660442A2 (es) 2013-04-30
IL222258A0 (en) 2012-12-31
WO2011139490A3 (en) 2012-01-19
TWI536240B (zh) 2016-06-01
KR20130105287A (ko) 2013-09-25

Similar Documents

Publication Publication Date Title
CN102884507A (zh) 客户机应用程序和网页集成
US9779107B2 (en) Dynamically synching elements in file
US8572564B2 (en) Configuring and constructing applications in a mainframe-based computing environment
US20090100321A1 (en) Universal contextual actions menu across windows applications
US20180217921A1 (en) System and method for generating and executing automated test cases
US20120197718A1 (en) Systems, methods, and media for web content management
MXPA05002276A (es) Sistema y metodo para construir aplicaciones inalambricas con asignacion inteligente entre interfaz de usuario y componentes de datos.
CN106227553B (zh) 用于描述并执行图形用户界面中的管理任务的数据驱动模式
CN102509211A (zh) 持久时间信息的动态基准重置
US20140298185A1 (en) Dynamically enhancing user interface
CN102436606A (zh) 面向企业资源规划的知晓上下文的环境
CN103530338A (zh) 在计算设备上进行页面渲染的框架及生成页面的方法
CN111770128A (zh) 一种消息管理方法和装置
CN107391118A (zh) 一种Web应用用户体验平台系统
CN114201718A (zh) 可动态配置的表单实例生成方法及装置
CN111612501B (zh) 一种基于策略复用的信息生成方法、装置和电子设备
CN111061522B (zh) 基于后端生成前端卡片组件的方法、装置、设备及存储介质
CN112445473A (zh) 客户端布局方法与装置、存储介质、电子设备
CN110807056A (zh) 基于Excel的报表处理方法、装置、介质及电子设备
CN114201157A (zh) 一种低代码定制目标业务模块的方法以及系统
CN111736833A (zh) 弹窗组件的生成方法、系统、电子设备和存储介质
US8473834B1 (en) Dynamic portal menu and message system and method
JP2009205353A (ja) ユーザインタフェース提供方法、その装置及びプログラム
JP7444935B1 (ja) プログラム、情報処理装置、及び方法
CN112965944B (zh) 可视化的页面还原方法及系统、电子设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150727

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150727

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20130116