应用工作流框架的制作方法

文档序号:12287677阅读:171来源:国知局
应用工作流框架的制作方法与工艺

一般而言,计算设备可以被用来在诸如互联网的通信网络上访问内容和服务。传统上,用户可以经由诸如桌面计算设备的计算设备访问内容和服务,该计算设备可能与较大的屏幕显示器相关联。



背景技术:

无线通信网络和便携式计算设备(诸如移动电话)的持续发展已经促进了与内容提供商及服务提供商的额外的用户交互。具体而言,由于移动计算设备已经变得更加流行,给用户提供了对内容和服务的额外的或替代的访问。例如,存在若干移动设备,其支持采用定制的软件应用,该定制的软件应用常常被称为针对特定目的被特别配置的“应用”或者“APP”。例如,移动设备提供商或移动设备操作系统提供商可以提供定制应用的库,所述定制应用诸如银行应用、商品订购应用等等。通常,经由定制软件应用对应用或服务的呈现可以通过工作流来表征。例如,便于购物或订购的应用可以由包括选择商品、敲定订购条款、输入个人数据或财务数据以及确认购买的工作流来表征。

因为一些便携式设备(诸如移动电话)可能具有有限的显示区域,所以在任何特定时刻可以被显示的数据或数据元素的数量可能是有限的。对这种有限显示移动设备,工作流的实现将通常要求呈现一系列的页面,该一系列的页面是实现各种工作流步骤或阶段所需要的。例如,财务应用可能要求呈现分离的内容页面,以便于财务条款的选择、标识符和证书的输入等。在一些例子中,因为消费者可能被各个页面上的信息的呈现迷惑或者分心,所以工作流可能被中断。在用户需要改变或验证先前的数据输入或选择的情况下,通过各个页面导航回去以做出该必要的改变可能是困难的。此外,在已经完成改变之后,软件应用可能要求用户重新输入在工作流处理中的后续步骤中已经提供过的信息。这可能造成对该实现的不满或者工作流的中断,导致消费者过早地终止该工作流。

附图说明

通过结合附图参考以下的详细描述,前述的各方面和随之而来的许多优势变得更好理解,从而其将变得更容易领会,在附图中:

图1示出了描绘计算环境的说明性实施例的框图。

图2示出了客户端计算设备的实施例的部件。

图3A-图3C示出了被配置为实现应用工作流框架的客户端计算设备的实施例。

图4A和图4B示出了被配置为实现应用工作流框架的客户端计算设备的另一个实施例。

图5A-图5C提供了实现工作流应用框架的支付处理应用的说明性实施例。

图6A-图6G提供了实现工作流应用框架的支付处理应用的另一个说明性实施例。

图7是描绘示意性工作流应用框架处理例程的流程图的实施例。

图8是描绘示意性工作流处理例程的流程图的实施例。

具体实施方式

一般而言,本公开涉及采用应用工作流框架来管理在计算设备上执行的应用中的工作流的实现。说明性地,计算设备对应用的执行的各方面可以被表征为工作流例程,该工作流例程可以包括为了完成工作流例程而需要被执行的多个任务。相应地,应用可以具有与特定工作流例程匹配的工作流定义,该特定工作流例程可由工作流框架实现。更具体地,在说明性实施例中,工作流例程内定义的具体任务可以与应用内的若干界面元素相关联。示意性地,界面元素中的至少一些可以具有若干执行状态,所述执行状态通过工作流定义来定义并且涉及工作流的进展。在一个实施例中,执行状态可以是活动前状态、活动状态和活动后状态。

工作流框架提供界面显示区域或者以其他方式与其相关联,该界面显示区域可以通过计算设备显示器以某种方式显示全部的界面元素。当用户与应用进行交互并通过应用工作流前进时,界面显示区域内的界面元素依据当前通过工作流的进展来进行显示。例如,用于尚未完成的工作流步骤的界面元素依据活动前状态来表示,用于当前工作流步骤的界面元素依据活动状态来表示,而用于已经完成的工作流步骤的界面元素依据活动后状态来表示。

说明性地,处于活动状态中的界面元素可以被配置为提供一个或多个输入控件,该一个或多个输入控件允许用户向应用提供信息以完成与该界面元素相关联的任务。在用户已经提供了所请求的信息之后,或者如果用户已经沿着工作流前进超过了定义该任务之处,界面元素就可以从活动状态转换至活动后状态。处于活动后状态中的界面元素可以指示与该界面元素相关联的任务已经完成。在活动后状态中,界面元素可以显示与该界面元素相关联的任务已经完成的指示。在一个实施例中,处于活动后状态的界面元素可以在该界面元素上显示至少部分地基于由用户提供的输入的信息。

说明性地,用户可以通过与同一个界面显示区域内的不同界面元素进行交互来前进通过不同的执行状态。在用户前进通过为应用所定义的工作流时,界面元素可以在显示区域内改变,以显示与每一个执行状态相关联的信息。更具体地,在一个说明性实施例中,对应于活动状态的界面元素可以被定位在显示区域的焦点中。将界面定位在焦点中可以帮助将用户注意力聚焦在需要完成的活动任务上。相反地,对应于活动前状态和活动后状态二者之一的界面元素可以被定位在显示区域的非焦点中。相应地,用户可以在不离开界面显示区域的情况下前进通过每一个界面元素的执行状态,包括非顺序地移动到不同的任务或选择不同的任务。在一些实施例中,用户可以通过重新选择界面元素来修改先前完成的任务。

以这种方式呈现任务可以帮助用户在不必在多个页面之间转换的情况下导航通过与工作流例程相关联的每一个任务。通过提供允许用户完成工作流例程而不会被笨重的工作流界面分心或迷惑的简化界面,此框架可以帮助减少消费者的挫折。

尽管将就说明性工作流框架对本公开的各方面进行描述,相关领域的技术人员应当理解的是,所公开的实施例本质上是说明性的,并且不应当被当作是限制性的。此外,尽管将就本公开讨论若干说明性示例,这些示例也不应当必然被认为是限制性的。

图1示出了描绘计算环境100的说明性实施例的框图,计算环境100用于在客户端计算设备104上实现采用了工作流框架108的应用。客户端计算设备104被配置为经由网络102与应用服务器112和服务提供商114通信。应用106可以被安装及操作于客户端计算设备104上。工作流框架108可以被用来在应用104内实现工作流例程。每一个工作流例程可以与特定的工作流定义110相关联并且在客户端计算设备104上执行。

在执行工作流例程的特定方面期间,客户端计算设备104可以与应用服务器112及服务提供商114进行交互。客户端计算设备104可以从应用服务器112接收应用。在一些实施例中,应用服务器112可以在工作流例程的执行期间启用客户端计算设备104和服务提供商114之间的通信。应用服务器112可以用多个计算设备或服务器来实现。

服务提供商114被配置为通过网络102与客户端计算设备104和应用服务器112通信。在说明性实施例中,服务提供商114可以包括由在网络102上提供内容或服务的网络服务提供商或第三方所提供的服务。服务提供商的示例可能包括零售商、数字内容提供商、银行以及其他服务提供商。

本领域技术人员应当理解的是,通信网络102可以是任何有线网络、无线网络或它们的组合。此外,通信网络102可以是个域网、局域网、广域网、有线网、卫星网、蜂窝电话网或它们的组合。对计算机通信领域的技术人员而言,用于经由互联网或任何其他前述类型的通信网络进行通信的协议和部件是公知的,因而不必在此更详细地描述。

客户端计算设备104可以对应于各种各样的能够在通信网络102上发起、接收或便于通信的设备和部件,包括但不限于:个人计算设备;电子书阅读器(例如e-book阅读器);手持式计算设备;纳入计算设备中的集成部件;家用电子设备;电器;汽车;机械装置;座机;基于网络的电话(例如IP语言(VoIP));无绳电话;蜂窝电话;智能电话;调制解调器;个人数字助手;笔记本电脑;游戏设备;媒体设备等。在说明性实施例中,客户端计算设备104包括各种各样的、用于在一个或多个通信网络上建立通信的软件和硬件部件,该一个或多个通信网络包括无线通信网络、有线通信网络、基于IP的电信网络。参考图2将更详细地描述客户端计算设备104的说明性部件。

图2示出了客户端计算设备104(诸如移动电话)的实施例的部件。客户端计算设备104可以包括一个或多个处理单元202,诸如一个或多个CPU。客户端计算设备104也可以包括系统存储器204,系统存储器204可以对应于易失性和/或非易失性计算机可读存储介质的任意组合。系统存储器204可以存储信息,系统存储器204提供操作系统模块206、各种程序模块208、程序数据210以及其他模块。在一个实施例中,说明性工作流框架功能可以被实现为操作系统模块206的一部分。在这样的实施例中,操作系统模块206将包括可执行代码,该可执行代码将接收下面所述的应用工作流例程的定义或配置,并且使与应用工作流例程相关联的界面元素依据工作流定义110被显示。在另一个实施例中,说明性工作流框架功能可以被实现为独立于要在计算设备上执行的应用的、在计算设备104上执行的应用106或者模块的一部分。在这样的实施例中,应用106将包括可执行代码,该可执行代码将接收应用工作流例程的定义或配置,并且使与应用工作流例程相关联的界面元素依据工作流定义110被显示。在进一步的实施例中,说明性工作流功能可以被实现为应用106的一部分,以被执行及存储于程序数据210中。在此实施例中,应用106将包括可执行代码,该可执行代码将接收应用工作流108的定义或配置,并且使与应用相关联的界面元素依据工作流定义110被显示。

以上列举的部件清单是代表性的,而不是由客户端计算设备104所执行的功能或所实现的部件的类型的穷举。相关领域技术人员应当理解的是,额外的或者替代的部件也可以被包括在客户端计算设备104中,以实施其他意图的功能,诸如移动电话功能。

客户端计算设备104通过使用(一个或多个)处理单元202以执行被存储在系统存储器204中的模块来执行功能。客户端计算设备104也可以包括一个或多个输入设备212(键盘、鼠标设备、专用选择键等)以及一个或多个输出设备214(显示器、打印机、音频输出机构等)。相关领域技术人员应当理解的是,额外的或替代的软件模块和/或硬件部件也可以被包括在客户端计算设备104中以实施其他意图的功能,诸如移动电话功能。

继续参考图2,客户端计算设备104也可以包括电池222、一个或多个类型的可移除储存装置216以及一个或多个类型的不可移除储存装置218。在一些实施例中,设备可以被连接到外部电源,诸如AC电力插座。此外,客户端计算设备104可以包括通信部件220(诸如蜂窝收发机和无线收发机)以便于经由有线通信网络和无线通信网络的通信。这些收发机便于使用各种通信协议的这些通信,所述通信协议包括但不限于:蓝牙、IEEE 802.11技术标准族(WiFi)、IEEE 802.16标准(WiMax)、短消息服务(SMS)、语音IP(VoIP)以及各代蜂窝空中接口协议(包括但不限于:基于码分多址(CDMA)、时分多址(TDMA)、全球移动通信系统(GSM)、宽带码分多址(WCDMA)、第三代码分多址(CDMA1040)、时分同步码分多址(TD-SCDMA)、波分与时分多址(WTDMA)、长期演进(LTE)、正交频分多址(OFDMA)以及类似的技术的空中接口协议)。

图3A-图3C示出了被配置为采用应用工作流框架108实现应用106的客户端计算设备104的实施例。如先前所述,说明性地,工作流框架108可以管理为应用106定义的工作流例程,该应用106正在计算设备(诸如移动计算设备)上执行。工作流例程可以包括为了完成工作流例程而需要被完成的多个任务。工作流框架108可以具有与每一个工作流例程相关联的工作流定义110。在工作流例程中定义的每一个特定任务可以由应用106内的若干界面元素表示。工作流定义110可以定义应用106内的界面元素中的至少一些的执行状态。

参考图3A,客户端计算设备104具有带有界面显示区域320的用户界面210。用户界面310的尺寸可由计算设备104的特性定义。界面显示区域320表示用户界面310内的、可以被用来显示应用106的内容的区域。在一些实施例中,应用106可以具有依据工作流框架108配置的多个界面显示区域320。界面显示区域320可以被配置为显示多个界面元素340A-340E。在一些实施例中,界面显示区域320可以大于客户端计算设备104的用户界面310。在这些情况下,界面显示区域320可以被配置为在用户界面310内垂直地、水平地或对角线地移动以查看整个界面显示区域320。

工作流定义110可以定义界面元素340的执行状态。在一个实施例中,界面元素340可以具有第一状态(也被称为活动前状态)、第二状态(也被称为活动状态)和第三状态(也被称为活动后状态)。活动前状态和活动后状态也被称为非活动状态。每一个界面元素340的状态独立于其他界面元素340的状态。例如,在图3A中,界面元素340A-340E处于活动前状态中。在图3B中,界面元素340B显示于活动状态中。在图3C中,界面元素340B显示于活动后状态中而界面元素340A和340C-340E显示于活动前状态中。在一些实施例中,只有单个界面元素可以处于活动状态中。在一些实施例中,多于一个界面元素可以同时处于活动状态中。此外,在进一步的实施例中,客户端计算设备104可以在存储器中具有与多于一个状态相关联的界面元素,以便于以最小的影响在状态之间切换。

说明性地,工作流框架108可以定义用户界面310内的焦点330。在一些实施例中,焦点330的位置可以基于客户端计算设备104的特性,诸如屏幕的尺寸、分辨率以及其他设备特性。在一些实施例中,工作流框架108可以具有多于一个焦点330。图3B中的焦点330被定位在基本处于界面显示区域320的中间。在不同的情况下,焦点330可以被定位在界面显示区域320中的其他位置(诸如显示器的较高部分或较低部分)处。活动界面元素340可以至少部分地基于焦点330的位置来定位。活动元素的聚焦位置也可以被称为优先位置。当没有元素处于活动状态中时,界面元素转换回到先前的显示状态,其中在界面显示区域320中没有一个界面元素具有优先位置。焦点330的使用可以帮助用户聚焦在活动的界面元素上。

工作流定义110定义了与每一个界面元素340相关联的一个或多个显示特性。该显示特性可以定义应用显示区域320内界面元素340的外观。该显示特性可以包括例如尺寸、形状、颜色、显示信息(诸如文本、图标、图形或其他显示信息)。在此实施例中,界面元素340A-340E基本是矩形的。在一些实施例中,界面元素可以是各种形状中的一种,所述形状包括但不限于正方形、圆形或其他形状。

说明性地,界面元素340可以具有依赖于该界面元素的当前状态的一个或多个不同的显示特性。当界面元素从活动前状态转换到活动状态时,界面元素显示特性可以基于工作流定义110改变。例如,与活动前状态相比,处于活动状态中的界面元素的尺寸可以增加。在图3A和图3B中通过界面元素340B说明了这一点。在图3B中,界面元素340C的尺寸扩大并且显示了输入控件350和描述符360。当界面元素340B转换到活动状态时,应用106不会转换到新的页面,而是其他界面元素340A和340C-340E被重新定位以适应活动界面元素340C。一些界面元素仍然可见(例如340A、340C),而其他的界面元素(例如340D-340E)被定位到可见显示之外,但仍在界面显示区域320内。界面显示区域320可以被移动(例如滚动),以查看在界面元素340B活动时不可见的界面元素340D-340E。这可以在完成与界面元素340B相关联的任务时帮助向用户提供上下文。

在活动状态中,界面元素340可以包括一个或多个输入控件350。输入控件350被配置为向用户提供向应用提供输入数据的接口。例如,输入控件350可以包括被配置为允许用户向应用提供输入的下拉框、文本域、滚动条、旋转输入、滚动输入、水平条输入、数字输入、字母数字输入和/或其他类型的输入控件。界面元素可以具有任意数量的输入控件。界面元素可以具有一个或多个与输入控件相关联的功能,该功能在应用106已经接收到来自用户的输入数据之后被实现。

在一些实施例中,工作流定义110可以定义与界面元素340相关联的一个或多个活动状态层。对每一个层,工作流定义110可以定义与界面元素340相关联的显示特性。该显示特性可以不同于与其他状态或其他活动状态层相关联的显示特性。在一些实施例中,基层定义该层的形式因子(即尺寸与形状),而后续层定义在由基层定义的形式因子内所显示的信息。

当界面元素340从活动状态转换到活动后状态时,界面元素显示特性可以基于工作流定义110改变。对活动后状态,工作流定义110可以定义与该界面元素相关联的一个或多个显示特性。该一个或多个显示特性可以不同于与活动状态或活动前状态相关联的显示特性。例如,参考图3B和图3C,与活动状态相比,处于活动后状态的界面元素340B的尺寸减小。处于活动后状态的界面元素340B可以被配置为与在活动前状态期间的尺寸同样的尺寸,如图3A和图3C所示。在一些实施例中,与处于活动前状态相比,处于活动后状态的界面元素可以具有不同的形式因子。显示特性也可以被配置为在界面元素上显示信息370,该信息370不同于活动前状态中所显示的信息。在一些实施例中,所显示的信息可以至少部分地基于在活动状态期间由用户提供的输入。在一些实施例中,界面元素可以显示核对标志或者“X”或者其他标记,从而表明界面元素340已经完成且不要求来自用户的进一步输入。如先前所述,客户端计算设备102可以在存储器中维护活动状态和被动状态的显示元素以便于转换。

图4A和图4B示出了在具有不同显示区域的客户端计算设备400的另一个实施例(诸如平板计算设备)上操作的工作流应用。客户端计算设备400具有用户界面410以及带有多个界面元素440A-440F的界面显示区域420。虚线圆代表用户界面410内的焦点430。焦点430可以由工作流框架108定义。在图4A中,界面元素440A-440F处于非活动状态,其中界面元素中没有一个被相对于焦点430定位。界面元素440A-440B处于活动后状态而界面元素440C-440F处于活动前状态。由于后状态标记(即核对标志)460A-460B,容易识别出界面元素440A-440B处于活动后状态。由于没有任何后状态标记,也容易识别出界面元素440C-440F处于活动前状态。

在图4B中,界面元素440C已经从活动前状态转换到活动状态。界面元素440C从界面显示区域420内的先前位置移动为与焦点430大体对齐。在活动状态中,界面元素440C改变了尺寸以显示由工作流定义110所定义的多个输入控件450A-450C。在此实施例中,其他界面元素440A-440B和440D-440F被重新定位,以适应界面元素440C的新的位置和形状。在一些实施例中,工作流定义110可以定义在界面元素转换到焦点时界面元素是如何被重新定位的。例如,在此实施例中,四个界面元素显示于用户界面的左侧,而第五个界面元素显示于活动的界面元素440C的下方。

图5A-图5C提供了实现应用工作流框架的支付处理应用的说明性实施例。在此实施例中,有用户界面510、界面显示区域520、焦点524以及多个界面元素,多个界面元素包括卡余额526、给卡充值528、支付类型530、自动充值532以及取消输入534。每一个界面元素都依据工作流定义110被定义。在此实施例中,焦点524被大体定位于用户界面510的中间。如下面将要描述的,图5A显示了处于活动前状态的每一个界面元素。图5B显示了在给卡充值界面元素528已经从活动前状态转换为活动状态之后的给卡充值界面元素528。图5C显示了在给卡充值界面元素528已经从活动状态转换为活动后状态之后的给卡充值界面元素528。其他元素(包括卡余额526、支付类型530、自动充值532和取消534)保持处于活动前状态中。

现在参考图5A,在工作流例程的开始,界面元素每一个都显示于活动前状态中。在活动前状态中,工作流定义110确定界面元素的文本、尺寸、形状、颜色以及其他显示特性。用户可以选择界面元素中的一个从而将该界面元素从活动前状态转换到活动状态。可以通过触摸触摸屏设备上的用户界面、经由诸如鼠标或键盘的外围设备或通过向应用提供输入的另一种方法来接收用户输入。当接收到输入时,所选择的界面元素528从活动前状态转换到活动状态。所选择的界面元素528可以被重新定位,使得它与焦点524大体对齐。未被选择的界面元素可以基于活动的界面元素528的新位置而被重新定位。如果没有元素处于活动状态中,则可以将界面元素放置在焦点中。

图5B显示了在给卡充值界面元素528已经从活动前状态转换到活动状态之后的给卡充值界面元素528。给卡充值界面元素528现在被大体定位于焦点524处。其他界面元素在界面显示区域内被移动以适应活动的界面元素528。卡余额元素526和支付类型元素530在界面显示区域520内仍然是可见的。界面元素528转换到界面显示区域520内的焦点524,而不转换到该应用内的不同屏幕。当然,界面显示区域520可以具有能够被操纵(例如滚动)来查看不在可见显示区域内的元素的控件。如所示的,处于活动状态中的给卡充值元素528的显示特性不同于活动前状态的显示特性。具体而言,在活动状态中,给卡充值元素528尺寸扩大以显示描述符536、输入控件538和取消输入540。输入控件538允许用户选择用于充值数额的货币值。例如,用户可以选择$10.00、$15.00、$20.00或“其他”。如果用户选择“其他”,则工作流定义110可以定义额外的输入控件。例如,可以显示允许用户输入具体货币数额的文本输入控件。依据工作流定义110,取消输入控件540可以使该元素从活动状态转换回到活动前状态。依据工作流定义110,基于用户输入,界面元素可以转换到活动状态内的额外的层(例如选择“其他”)、转换回活动前状态(例如选择取消输入)或者转换到活动后状态(例如选择货币值)。

图5C显示了处于活动后状态的给卡充值元素528。在活动状态期间,用户选择了$20。在用户提供了输入之后,给卡充值元素528从活动状态转换为活动后状态。如所示的,处于活动后状态的给卡充值元素528的显示特性不同于活动状态期间的显示特性。在活动后状态中,给卡充值元素528可以显示至少部分地基于在活动状态期间所接收的用户输入的信息542。例如,在此情况下,给卡充值界面元素528已经从活动前状态中的“给卡充值”改变为活动后状态中的“充值数额:$20”,从而示出用户选择了的具体货币值。这是有益的,因为用户可以在不重新选择界面元素的情况下确定先前的选择。此外,当给卡充值元素528从活动状态转换到活动后状态时,给卡充值元素528从焦点524移动到了非焦点。

图6A-图6G示出了在支付处理应用内具有多个活动状态层的应用工作流框架的另一个说明性执行示例。在图6A中,该支付类型界面元素530处于活动前状态中。

在图6B中,支付类型元素530从活动前状态转换到活动状态。在活动状态中,支付类型元素530被大体定位于界面显示区域520内的焦点处。其他界面元素相对于支付类型元素530的位置和尺寸进行移动。在此情况下,在支付类型界面元素530是活动的时,只有卡余额界面元素526是可见的。其他元素可以通过操纵界面显示区域520(例如滚动)来查看。在一些实施例中,工作流定义110可以定义能够在界面显示区域520内保持固定的特定元素或信息,使得无论活动的界面元素是什么,该特定元素或信息都可以显示。这可以帮助提供关于活动的界面元素的上下文信息。在一些实施例中,可以链接界面元素,使得指定的非活动的界面元素与特定的活动的元素同时显示。例如,在一个实施例中,可以显示充值数额元素528而不是卡余额元素526,因为充值数额可以帮助或影响用户对具体支付类型的选择。

支付类型元素530的活动状态包含多个活动状态层。图6B显示了基层或第一层544。第一层544的显示特性包括描述符546,描述符546可以提供关于支付类型输入控件548的描述性信息。支付类型输入控件548包含用于支付的不同选项,包括第三方支付选项(例如)、信用卡及其他支付方法。第一层也包括取消输入550。

在图6C中,在信用卡输入已经在第一层544上被应用接收之后,活动状态从第一层转换到信用卡支付层或者第二层552。第二层544的显示特性包括多个信用卡控件输入554,其被配置为接收与用户的信用卡相关联的信息(例如卡号、有效期、持卡人姓名)。如所示的,活动状态可以包含一个或多个层,每一个层提供不同的显示特性和输入控件。应用可以在不转换离开当前的界面显示屏幕的情况下在层之间转换。

在用户已经完成信息之后,用户可以选择确认552或取消550。如果选择了取消输入550,则依据工作流定义110,应用可以从第二页面552转换回到第一页面544。在一些情况下,取消输入550可以将用户转换回到图6A中所显示的状态。如果接收到确认输入,则依据工作流定义110,支付类型元素530从活动状态转换到活动后状态。在提供了用户输入之后且在转换到活动后状态之前,依据工作流定义110,应用可以执行一个或多个与用户输入相关联的功能,诸如资金的验证或其他功能。

图6D显示了处于活动后状态中的支付类型元素530。如所示的,处于活动后状态中的支付类型元素530的显示特性不同于在活动状态期间的显示特性。在活动后状态中,支付类型元素530可以显示至少部分地基于在活动状态期间所接收的用户输入的信息556。例如,在此情况下,支付类型元素530已经从活动前状态中的“支付类型”改变为活动后状态中的“VISA…1584”。在活动后状态中所显示的用户信息是依据工作流定义110而定义的。在此实施例中,用户提供了关于信用卡的信息,从而显示信息556显示信用卡的类型以及信用卡号码的最后四位数字。在其他实施例中,工作流定义110可以定义要显示的其他信息。

图6E示出了当应用106接收到要再次选择支付类型元素530的输入时的情况,该输入将使支付类型元素530从活动后状态转换到活动状态。在活动状态中,第一层544再次被显示,从而示出至少部分地基于来自用户的先前输入的信息。如所示的,向用户显示先前提供的信息,而不是重置或擦除与该元素相关联的信息。例如,关于先前支付信息的信息与显示标记558一起被显示在控件548内的第一位置中,从而示出其是当前选择的选项。输入控件544也显示先前显示了的其他可用支付选项。

图6F示出了在接收到选择第三方支付的输入之后的应用。活动状态的第三方支付选项层或第三层560被显示。第三层560的显示特性包括多个第三方支付控件输入562,其被配置为接收与第三方支付账户相关联的信息(例如电子邮箱和密码)。在提供了用户输入之后,依据工作流定义110,应用106可以执行与用户输入相关联的一个或多个功能,诸如登录到用户的账户、资金的验证或其他功能。工作流定义110也可以执行在活动状态内的一个或多个功能。例如,当提供了电子邮箱地址和密码并且选择了登录动作时,工作流定义110可以执行将用户登录进账户和验证资金的可用性的功能。在一些例子中,在结束界面元素的活动状态的执行之前,应用106可以提供一个或多个额外的层。

图6G示出了支付类型元素530从活动状态向活动后状态的转换。处于活动后状态中的显示信息556已经更新以适应(account for)用户输入中的改变。显示信息556现在显示用户正使用第三方支付提供商而不是信用卡进行支付。

图7示出了应用框架工作流处理例程的框图。工作流框架108具有与特定工作流例程匹配的工作流定义110。应用104可以具有用于应用内每一个工作流例程的特定的工作流定义110。工作流框架108可以被实现为操作系统模块206的一部分、被实现为在计算设备104上执行的应用或模块的一部分、或者集成到应用106内以在计算设备上执行。

在框702处,获得用于应用工作流例程的工作流定义110,该工作流定义110定义了应用106内多个界面元素的执行状态。对界面元素的至少一个子集而言,工作流定义110定义了活动前状态、活动状态和活动后状态。在一些实施例中,与应用106相关联的工作流定义110也可以定义与应用显示区域相关联的焦点。在一些实施例中,焦点可以由工作流框架108来定义,而工作流定义110可以定义界面元素相对于已定义的焦点的位置。在一些实施例中,工作流框架108可以基于历史信息、用户偏好或默认值来增加或修改工作流定义110。例如,如果丢失了工作流定义110内的一个或多个状态定义,则工作流框架108可以定义丢失的状态定义。

在框704处,工作流定义110定义了界面元素的活动前状态。对活动前状态,工作流定义110定义与界面元素相关联的一个或多个显示特性。该显示特性可以定义应用显示区域内的界面元素的外观。该显示特性可以包括例如尺寸、形状、颜色、显示信息(诸如文本、图标、图形和/或其他显示信息)。

在框706处,工作流定义110定义界面元素的活动状态。对活动状态,工作流定义110可以定义与界面元素相关联的一个或多个活动状态层。对每一个层,工作流定义110可以定义与界面元素相关联的一个或多个显示特性。该一个或多个显示特性可以不同于与活动前状态相关联的显示特性。该显示特性可以定义应用显示区域内的界面元素的外观。例如,与活动前状态相比,处于活动状态中的界面元素的尺寸可以增加。每一个层可以具有不同的显示特性。在一些实施例中,基层定义层的形式因子(即尺寸和形状),而后续层定义已定义的形式因子内的显示特性。在一些实施例中,工作流定义110可以修改非活动界面元素的显示特性以突出活动元素或将用户的注意力聚焦到活动元素上。例如,非活动元素的强度可以被减弱、变灰或作出其他改变。

工作流定义110也可以定义处于活动状态中的每一个层的一个或多个输入控件。输入控件为用户提供了向应用提供输入的接口。例如,输入控件可以包括允许用户向应用提供输入的下拉框、文本域、滚动条、旋转输入、滚动输入、水平条、数字输入、字母数字输入和/或任何其他类型的输入。工作流定义110也可以定义基于在活动状态中由用户提供的输入被执行的一个或多个功能或子例程。

在框708处,工作流定义110定义了界面元素的活动后状态。对活动后状态,工作流定义110定义了与界面元素相关联的一个或多个显示特性。该一个或多个显示特性可以不同于与活动状态相关联的显示特性。例如,与活动状态相比,处于活动状态中的界面元素的尺寸可以减小。处于活动后状态中的界面元素可以被配置为与在活动前状态期间的尺寸同样的尺寸。在一些实施例中,活动后状态可以具有不同于活动前状态的形式因子。显示特性也可以被配置为在界面元素上显示至少部分地基于在活动状态期间由用户提供的输入的信息。在一些实施例中,界面元素可以显示核对标志、“X”或者其他标记,从而示出该界面元素已经完成且不需要进一步输入。在框710处,应用框架工作流处理例程结束。

图8示出工作流处理例程800的示意性框图。工作流处理例程800可以在应用106内执行。工作流例程可以包括为了完成工作流例程需要被执行的多个任务。应用工作流框架108可以管理应用106内的工作流例程。工作流框架108具有与特定工作流例程匹配的工作流定义110。

在框802处,应用106获得用于特定工作流例程的工作流定义110。如先前所述,工作流定义110定义了多个界面元素的至少活动前状态、活动状态和活动后状态。结合图7描述了说明性工作流定义例程。

在框804处,应用使界面元素显示于界面显示区域中。依据界面元素的当前状态(例如活动前状态或活动后状态),界面元素被显示于非活动状态中。依据工作流定义110,应用106使界面元素的显示改变为活动状态显示。

在框806处,应用106接收到来自用户的选择多个界面元素中的一个的输入。在框808处,应用106使所选择的界面元素转换到活动状态。依据工作流定义110,在活动状态中,界面元素在界面显示区域内相对于焦点被定位,并且界面元素的显示特性被改变。活动的界面元素可以提供被配置为接收来自用户的输入数据的一个或多个用户控件。

在框810处,应用在由界面元素提供的一个或多个输入控件处接收到来自用户的输入数据。在框812处,应用可以基于所接收的输入数据执行功能,诸如财务信息的授权。在一些实施例中,应用106可以与诸如银行的服务提供商通信来执行该功能,以接收资金足够的验证。在完成该功能之后,界面元素可以从活动状态转换为活动后状态。

在框814处,应用106可以使界面元素从活动状态转换到活动后状态。界面元素也从焦点转换到非焦点。依据工作流定义110,应用106使界面元素的显示改变为活动后状态显示。活动后界面可以被配置为显示至少部分地基于在活动状态期间所接收的用户数据的信息。

在框816处,应用110确定工作流例程是否完成。如果工作流例程完成,则工作流处理在框818处结束。当工作流例程结束时,用户可以在应用106内被重定向。例如,用户可以被重定向至应用的另一部分,其中要实现不同的工作流例程。在一些例子中,应用106可以在处理例程终止时终止。如果工作流例程未完成,则处理返回至框804以继续实现工作流例程。

本文所述的全部处理可以用软件代码模块来实现或经由软件代码模块来完全自动操作,该软件代码模块由一个或多个通用计算机或通用处理器执行,该软件代码模块也可以在一个或多个物理计算单元上的虚拟机中运行。该代码模块可以被存储在任意类型的计算机可读介质或其他计算机存储设备中。一些或全部的方法可以替代地实现在专用计算机硬件中。此外,本文所提及的部件可以用硬件、软件、固件或它们的组合中来实现。因此,本公开中对由模块或部件执行的动作的引用涉及(一个或多个)处理设备对可执行指令的执行,以使得所引用的动作被执行。

除非特别地另外声明,否则诸如“能”、“可”、“可能”或“可以”等的条件性语言在上下文内被理解为一般被用来传达某些实施例包括而其他实施例不包括某些特征、元素和/或步骤。因此,这样的条件性语言一般不旨在暗示该特征、元素和/或步骤以任何方式是一个或多个实施例所需求的、或者该一个或多个实施例必需包括用于判定这些特征、元素和/或步骤是否被包括在任何特定实施例中或要在任何特定实施例中被执行的逻辑,无论有或没有用户输入或提示。

除非特别地另外声明,否则诸如短语“X、Y与Z中的至少一者”的连接性语言在上下文中要被理解为一般用来传达一个项目、术语等可以是X、Y或Z。因此,这种连接性语言一般不旨在暗示特定实施例要求X中的至少一者、Y中的至少一者和Z中的至少一者中的每一个都存在。

本文所述的和/或附图中所描绘的流程图中的任何处理描述、元素或框应当被理解为潜在地代表模块、片段、或包括用于在处理中实现特定逻辑功能或元素的一个或多个可执行指令的代码的部分。替代的实现被包括在本文所描述的实施例的范围内,其中,取决于所涉及的功能,如本领域技术人员所理解的那样,元素或功能可以被删除、不以所示或所讨论的顺序执行,包括基本同时地执行或以颠倒的顺序执行。

应当强调的是,可以对以上所述的实施例进行许多变形和修改,其实施例的元素应当被理解为在其他可接受的示例之中。在此,所有这样的修改和变形旨在被包括在本公开的范围内并被以下的权利要求所保护。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1