CN117435092A - 点击操作信息的处理方法、电子设备及可读存储介质 - Google Patents
点击操作信息的处理方法、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN117435092A CN117435092A CN202311766046.XA CN202311766046A CN117435092A CN 117435092 A CN117435092 A CN 117435092A CN 202311766046 A CN202311766046 A CN 202311766046A CN 117435092 A CN117435092 A CN 117435092A
- Authority
- CN
- China
- Prior art keywords
- terminal
- object information
- information
- application
- 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
Links
- 238000003860 storage Methods 0.000 title claims abstract description 14
- 238000003672 processing method Methods 0.000 title claims abstract description 12
- 230000010365 information processing Effects 0.000 title claims abstract description 11
- 238000000034 method Methods 0.000 claims abstract description 95
- 238000012545 processing Methods 0.000 claims abstract description 86
- 230000008569 process Effects 0.000 claims description 40
- 230000006870 function Effects 0.000 claims description 29
- 230000007935 neutral effect Effects 0.000 claims description 9
- 239000010410 layer Substances 0.000 description 198
- 238000007726 management method Methods 0.000 description 28
- 230000008859 change Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 16
- 238000004891 communication Methods 0.000 description 14
- 230000001960 triggered effect Effects 0.000 description 7
- 230000001413 cellular effect Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 5
- 238000010295 mobile communication Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 230000003111 delayed effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 230000001934 delay Effects 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 230000007474 system interaction Effects 0.000 description 2
- 230000026676 system process Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000002269 spontaneous effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
- G06F8/315—Object-oriented languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Abstract
本申请公开了一种点击操作信息的处理方法、电子设备及可读存储介质。所述方法包括:接收用户对终端显示的弹框进行点击所产生的点击操作的信息;根据点击操作的信息,生成向所述终端的系统的目标模块上报的对象信息;所述目标模块为对象信息上报至所述终端的应用层的应用程序之前,用于传输所述对象信息的多个模块中的至少一个;向目标模块上报所述对象信息;在所述目标模块的状态被设置为已接收所述对象信息的情况下,丢弃所述对象信息;其中,所述目标模块的状态,在所述弹框生成后,所述目标模块首次将所述点击操作的信息发送至目标层的情况下,被设置为已接收对象信息。本申请实施例能够改善因为重复点击而导致重复处理点击操作信息的情况。
Description
技术领域
本申请涉及终端技术领域,特别涉及一种点击操作信息的处理方法、电子设备及可读存储介质。
背景技术
用户在使用手机、电脑等终端时,如果使用的终端系统或者终端应用产生提示信息,会在终端界面上以弹出弹框的方式展示提示信息,以通知用户当前可以对终端系统或者终端应用执行的操作。比如,终端系统存在更新的版本时,弹出弹框提示用户当前系统存在新的版本,并且呈现选择框提示用户对系统进行更新或者暂不更新。同时,在终端软件存在更新版本时,也会生成类似的弹框。
当前的终端产品在使用过程中,向用户呈现弹出的弹框,且用户点击弹框按钮之后,由于信息发送过程出现延迟或者其它问题,而不能够及时清除弹框的显示,使得用户误以为自己未有效操作弹框而多次点击,进而使得终端系统将用户的多次点击识别为多次指令,后续执行多次的重复操作。
发明内容
本申请提供了一种点击操作信息的处理方法、电子设备及可读存储介质。技术方案如下:
第一方面,提供了一种点击操作信息的处理方法,包括:当终端的显示界面上显示弹框后,用户对弹框进行点击,终端接收用户对弹框进行点击所产生的点击操作的信息,每次点击产生一个点击操作的信息,多次点击对应会产生多个信息;终端系统的内核层根据点击操作的信息,生成向终端的系统的目标模块上报的对象信息;目标模块为对象信息上报至终端的应用层的应用程序之前,用于传输(或处理并传输)对象信息的多个模块中的至少一个;内核层向目标模块上报对象信息;在目标模块的状态被设置为已接收对象信息的情况下,说明目标模块已经接收过对象信息,则丢弃当前到达的对象信息,使得应用层对已经被发送给应用层处理的对象信息不再进行重复处理;其中,所述目标模块的状态,在所述弹框生成后,所述目标模块首次将所述点击操作的信息发送至目标层的情况下,被设置为已接收对象信息。
目标模块可以是内核层、硬件抽象层(Hardware Abstraction Layer,HAL)、系统层或应用程序框架层中的一个模块。
在终端显示弹框之后,尚未产生用户对弹框进行点击操作的信息时,也尚未产生对应的对象信息,终端系统的目标模块的状态被设置为未接收对象信息。在用户对弹框进行第一次操作时,终端的内核层产生对用户对弹框进行操作的信息,进而根据用户对弹框进行操作的信息产生对象信息,然后在对象信息第一次到达目标模块时,目标模块将自己的状态设置为“已接收对象信息”。
如果对象信息的产生、传输和处理过程没有延迟或异常,那么终端的应用层会对对象信息进行处理,产生业务处理结果。根据业务处理结果,应用程序框架层中的界面类会清除终端显示的弹框,从而用户能够根据弹框消失的事件得知点击操作执行成功。然而,如果对象信息的产生、传输或处理过程中出现延迟,或者终端的应用层对对象信息的处理出现异常或延迟,将会导致业务处理结果不能够及时生成,终端的弹框仍然在用户的第一次点击操作之后保持显示状态。从而,用户可能因为弹框保持显示而认为未能够对弹框产生有效点击,这种情况下,用户往往对弹框执行多次重复点击。
如果对用户每次点击弹框的操作信息进行转换、传输和处理,那么应用层也会错误地执行多次重复操作。因此,本申请实施例中,在弹框出现后,目标模块首次将所述点击操作的信息发送至目标层的情况下,被设置为已接收对象信息。那么,在终端显示的弹框没有被及时消除、清除或取消的情况下,用户在第一次点击弹框之后,多次重复点击弹框,产生多个对象信息被传输至目标模块时,后续的多个对象信息将会因为目标模块的状态被设置为“已接收对象信息”而丢弃,使得多余的对象信息将不会再引起应用层的重复处理,减少用户重复点击弹框造成应用错误地多次执行对应的重复响应点击操作的情况。
在一种实施方式中,目标模块包括安卓系统的界面类;界面类包括按钮控件;向目标模块上报对象信息之后,点击操作信息的处理方法还包括:目标模块收到对象信息时,对目标模块的状态进行判断。如果目标模块为界面类,在界面类被配置为未接收对象信息的情况下,将界面类的按钮控件设置为不可点击,以表示界面类的状态被设置为已接收对象信息。
按钮控件可以是界面类(View)中View类的子类。按钮控件包括标记,标记可以被配置为未接收对象信息或者已接收对象信息。界面类为根据对象信息对弹窗进行消除操作的执行主体,本申请实施例根据同样的对象信息有无被界面类处理,或者同样的对象信息是否已经被界面类发送至应用层接收,判断是否丢弃对象信息,保证对象信息能够被处理的情况下,将多余的对象信息进行丢弃。
在一种实施方式中,将按钮控件设置为不可点击,包括:确定对象信息对应的按钮类型,按钮类型包括选择、取消和中立中的一种,在弹框中设置有按钮的情况下,每个按钮对应一种按钮类型,每个按钮类型在界面类中对应一个按钮控件,每个按钮类型对应于用户对弹框提示内容的一种操作;确定对象信息对应的按钮类型,能够确定用户对弹框提示内容做出的选择的类型。在确定按钮类型后,获取按钮类型所对应的按钮控件;将按钮控件设置为不可点击。每个按钮控件在未被更改设置的状态下,默认设置为可点击。如果弹框对应有三种按钮类型,那么对应在界面类具有三种按钮控件,在应用层首次处理了一次点击操作产生的对象信息后,可以由应用层将对应的按钮控件(的标记)设置为不可点击,或者由界面类将自己对应的按钮控件(的标记)设置为不可点击。在按钮控件的标记被设置为不可点击的情况下,说明目标模块已接收对象信息,目前接收到的对象信息均为重复、可丢弃的对象信息。在空间俺就的标记被设置为可点击的情况下,说明目标模块尚未接收对象信息,目前需要接收对象信息,使得应用层的应用根据对象信息获得业务处理结果。
本申请实施例中,弹框中可能包括多个按钮类型的按钮,多个按钮对应用户对弹框的不同操作选择,比如,用户选择立即更新软件或系统,了解软件或系统更新详情,或者,选择稍后更新软件或系统。通过对按钮类型对应的按钮控件(的标记)设置可点击或不可点击,针对同一个按钮类型在弹框上对应的按钮,用户可以在弹框在显示界面上清除之前进行至少一次有效操作,保证用户对弹框的操作意图准确识别和传达到应用层。
在一种实施方式中,点击操作信息的处理方法还包括:终端的系统的应用层通过回调函数,获取界面类所有按钮类型的按钮控件(的标记);根据各个按钮类型对应的按钮控件(的标记),确定界面类的状态;或者,终端的系统的应用框架层,根据界面类中所有按钮类型的按钮各自对应的按钮控件(的标记),确定界面类的状态。
应用层通过回调函数,可以对所有按钮类型对应的按钮控件(的标记)进行获取,同时获取到按钮类型对应的按钮控件(的标记)。这种情况下,获取目标模块状态的功能或者更改目标模块状态的功能,可以通过应用实现,各应用提供方可以修改应用,实现本申请实施例的方法。或者,还可以由终端的目标模块自己对按钮的按钮类型(的标记)进行判断,并根据判断结果确定目标模块的状态,这种情况下,终端提供方可以对终端进行修改,对安装于终端的所有应用默认进行统一的多余事件信息丢弃处理,以实现本申请实施例的方法。
在一种实施方式中,点击操作信息的处理方法还包括:检测到终端的系统存在更新的情况下,在终端显示用于提示系统更新的弹框;或,检测到终端的应用程序存在更新的情况下,在终端显示用于提示应用程序更新的弹框。
在终端的系统或者终端的应用程序出现更新的情况下,在终端显示相关的弹框,用户对弹框进行点击操作可能会涉及到较大量的数据传输,比如用户确认更新系统或应用程序,下载更新数据包需要消耗较多网络数据流量。在这种情况下,更有可能出现用户对弹框的点击操作信息的处理延迟,从而用户更有可能进行较多次的点击操作。本申请实施例,在系统或应用程序更新的情况下,能够避免重复的点击操作被重复处理,以更为显著地减少用户因为系统延迟导致的一系列异常而产生的不良体验。
在一种实施方式中,接收用户对终端显示的弹框进行点击所产生的点击操作的信息,包括:检测到用户对终端的硬件层进行点击操作的原始事件;这一原始事件可能是用户点击触控屏,导致触控传感器电路的电流变化,或者是用户采用其它方式进行点击时造成的硬件层的电流变化。终端的输入子系统能够检测到原始事件,然后根据原始事件,产生用户对终端显示的弹框进行点击所产生的点击操作的信息;而本实施例中,点击操作的信息可以是将电流变化的信息进行处理后,生成的能够向终端软件模块发送的信号。可以由内核层产生点击操作的信息,在内核层产生点击操作的信息后,将点击操作的信号传递到终端内核层的用户空间的设备节点。
本实施例中,终端能够根据用户的点击操作,产生事件对象,将事件对象挂在用户空间与硬件层对应的设备节点,从而使得终端内核层的上层结构在轮询获得事件对象后,能够将事件对象继续上报,最终使得事件对象对应的点击操作的信息得到处理。
在一种实施方式中,根据用户对终端显示的弹框进行点击所产生的点击操作的信息,生成向终端的系统的目标模块上报的对象信息,包括:终端的输入管理服务从设备节点的文件中,读取到根据用户对终端显示的弹框进行点击所产生的点击操作的信息;终端的输入管理服务将根据读取到的点击操作的信息,转化为对象信息;终端的输入管理服务将对象信息作为向终端的系统的目标模块上报的对象信息。
通过输入管理服务将每一次点击操作对应的信息转换为对象信息进行上报,从而实现本申请实施例的处理方法,不需要改变终端的底层结构,降低了方法实现的难度。
在一种实施方式中,点击操作信息的处理方法还包括:在目标模块的状态被设置为未接收对象信息的情况下,将对象信息上报至终端的应用层。
在目标模块的状态被设置为“未接收对象信息”的情况下,将对象信息上报至终端的应用层,从而保证应用层能够有效点击操作对应的对对象信息进行处理,实现用户期望的操作结果。
在一种实施方式中,将对象信息上报至终端的应用层之后,点击操作信息的处理方法还包括:在检测到应用层处理对象信息生成的业务处理结果之后,取消显示终端显示的弹框,以使得弹框在终端显示界面消除,以便用户得知点击操作对应的指令被执行;可以针对界面层产生取消显示的弹框的提示信息;从而界面层根据提示信息,将目标模块的状态设置为未接收对象信息。
在对用户点击弹框的操作产生有效响应之后,及时消除弹框的显示,使得用户能够及时得知点击操作成功,从而不再执行重复的操作。
第二方面,提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当存储介质中存储的指令在计算机上运行时,能够使得计算机执行上述第一方面的方法。
第三方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面的方法。
上述第二方面和第三方面所获得的技术效果与上述第一方面中对应的技术手段获得的技术效果近似,在这里不再赘述。
附图说明
图1是本申请实施例的一种应用场景示意图;
图2是本申请实施例的另一种应用场景示意图;
图3为本申请实施例的又一种应用场景示意图;
图4为本申请实施例所涉及的电子设备的软件结构示意图;
图5为本申请实施例提供的一种点击操作信息的处理方法流程示意图;
图6为本申请一种示例中的不同类型的按钮示意图;
图7为本申请一种示例中的按钮转变示意图;
图8为本申请一种示例中终端操作流程示意图;
图9为本申请一种示例中系统交互时序示意图;
图10为本申请一种示例中的时延产生示意图;
图11为本申请一种示例中对弹框的点击操作信息的处理方法示意图;
图12为本申请另一种示例中对弹框的点击操作信息的处理方法示意图;
图13是根据一示例性实施例的点击操作信息的处理方法流程图;
图14是根据本申请一实施例的点击操作信息的处理装置示意图;
图15是根据本申请实施例示出的一种电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请的实施方式作进一步地详细描述。
应当理解的是,本申请提及的“多个”是指两个或两个以上。在本申请的描述中,除非另有说明,“/”表示或的意思,比如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,比如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,为了便于清楚描述本申请的技术方案,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
随着计算机技术和终端技术的发展,不仅终端产品不断得到广泛的普及,且终端的信息显示方法也更加多样化,弹框显示就是终端的多种显示方式之一。在本申请一种实施例提供的点击操作信息的处理方法,用于处理针对终端的弹框进行点击的操作信息。
弹框,也可以成为弹窗、对话框,通常是指在用户进行某种操作(如点击按钮或链接)或者因为其它情景触发时,弹出的一个信息承载框,可对用户进行信息提示,或和/或与用户产生交互行。弹框的应用非常广泛,如提示用户进行确认、显示错误消息、提示信息、输入表单等。使用弹框可以向用户提供直观、简洁的交互体验,同时也能提高应用程序的用户友好性。
弹框可以包括标题、内容和按钮中的至少一种。其中,标题通常显示在弹框的顶部,用于显示对话框的简要关键内容。内容通常为与标题相关的文本或元素,可以是文本、图片、表单等。按钮通常用于触发相应的操作和/或用于关闭对话框。
在本申请实施例中所涉及的弹框,可以包括模态弹框类型下的对话框。对话框一般用在比较重要的系统状态变化或者重要且不可逆的操作时,需要用户知晓操作会产生的后果;对一些重要的操作进行继续或者放弃,第一方向或者第二方向选择的询问;重要信息录入提交或者验证等。
本申请实施例的弹框,可以通过对话框(AlertDialog或者Dialog)弹窗方式进行展示,也可以通过终端底部(或者顶部)动作栏进行展示,或者还可以通过显示界面上的悬浮层进行展示。
如图1中的a所示,当存在终端101的系统出现版本的更新时,在终端界面上显示提示软件更新的提示弹框,这一弹框即弹框102。终端通过显示弹框102,使得用户能够根据弹框的内容得知当前系统存在版本的更新,即“软件更新:1.23.45678(300 MB)”。同时,弹框102还设置有用户可操作的按钮,如图1中的a所示的“稍后”按钮、以及“下载”按钮。用户通过点击“稍后”按钮,能够暂缓对系统的更新操作。在弹框102中,还展示了更新的系统版本的详细信息,即“本次更新包含了下列新增功能与效能改善:-提升系统性能”。用户通过点击“下载”按钮,能够立即对系统更新进行授权,并开始进行系统更新安装包的下载和安装。
若图1中的a所示的终端处于移动网络环境中,且用户点击了“下载”按钮,那么更新系统时,需要输入用户解锁系统的密码,从而,在终端的显示界面上弹出弹框103。弹框103显示“输入密码 本次更新需要您输入密码”,同时在弹框103中显示密码输入框,用户可以在密码输入框中输入终端的解锁密码,以开始更新终端的系统。或者,选择弹框103中的“取消”按钮,取消升级系统。
图2为一种应用程序的弹框示例,弹框可以由用户行为触发,也可以由应用程序运行过程中产生的异常或者其它类型的自发事件触发。如图2中的a所示,当用户使用购物应用A时,如果用户首次在终端上打开购物应用的界面202时,在界面202上会呈现应用程序的弹框201,在应用程序的弹框201中包括标题、内容和按钮。其中,标题显示应用程序的弹框201的关键信息:“允许A使用无线数据?”,以提示用户对是否允许购物应用A使用无线数据进行确认和操作。
应用程序的弹框201的内容显示关于标题的信息:“关闭无线数据时,部分功能可能无法使用”,从而提示用于关于与应用程序的弹框201的标题相关内容的进一步提示。应用程序的弹框201的按钮包括:“无线局域网与蜂窝网络”按钮、“仅限无线局域网”按钮和“不允许”按钮。其中,“无线局域网与蜂窝网络”按钮对应允许购物应用A访问无线局域网和蜂窝网络的指令,用户点击此按钮之后,购物应用A将获得使用无线局域网和蜂窝网络,向服务器请求网络数据的权限。“仅限无线局域网”按钮对应允许购物应用A仅访问无线局域网的指令,用户点击此按钮之后,购物应用A将获得仅使用无线局域网,向服务器请求网络数据的权限。“不允许”按钮对应不允许购物应用A使用无线局域网或蜂窝网络的指令,用户点击此按钮之后,购物应用A将无法通过无线局域网或蜂窝网络,向服务器请求网络数据。
当用户对图2中的a所示的应用程序的弹框201进行操作之后,购物应用A的界面202可能会进一步呈现应用程序内部的弹框,即图2中的b所示的应用程序的弹框203。应用程序内部的弹框203包括标题、内容和按钮。标题显示为“温馨提示”,内容显示使用购物应用A的相关协议说明,按钮包括“同意”按钮和“不同意”按钮,分别用于用户执行确认同意购物应用A的相关协议的操作,或执行不同意购物应用A的相关协议的操作。在图2所示的情形中,图2中的a中的弹框201可以是由终端系统生成的,而图2中的b所示的应用程序内部的弹框203可以是由购物应用A生成的。
图1、图2中所示的弹框,可能由于系统或程序运行过程中,非用户操作事件触发的,比如,系统更新和应用程序更新为根据服务器端的通知触发弹出的,权限请求为根据系统设置或者应用程序的配置在一定情况下自动弹出的。而在另一种情况下,弹框可能被用户的行为触发。
如图3中的a所示,用户在已经登录应用程序的情况下,点开应用程序的设置界面301,然后再通过点击“退出”按钮,下发退出登录应用程序的指令。根据用户点击“退出”按钮下发的退出指令,应用程序弹出图3中的b所示的应用程序内的弹框302。应用程序内的弹框302包括标题、内容和按钮。标题显示应用程序内的弹框302的关键内容:“提示”。内容显示与标题相关的信息:“确定退出吗?”。按钮包括“确定”按钮和“取消”按钮。用户可以通过点击“确定”按钮或“取消”按钮,确认退出登录应用程序的指令,或者撤销退出应用程序的指令。
本申请实施例中,用户可以使用作为用户终端的电子设备对弹框进行操作,产生对弹框的点击操作。在对本申请实施例提供的点击操作信息的处理方法流程进行详细介绍之前,先对本申请实施例涉及的电子设备的软件架构进行简单介绍,图4是根据一示例性实施例示出的一种电子设备的软件架构示意图,图4所示的电子设备运行有安卓(Android)系统。
图4是本申请实施例提供的方法所应用的一种电子设备的软件系统的框图。参见图4,分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统包括多层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统层,以及内核层。在重启事件发生时,重启事件的关闭操作和启动操作逐层执行。
应用程序层可以包括一系列应用程序包。如图4所示,应用程序包可以包括桌面应用,相机,图库,通话,地图,导航,蓝牙,音乐,视频等应用程序。这些应用程序均可以设置在程序运行的过程中,根据应用程序接收到的网络数据或者根据用户的指令,弹出应用程序弹框。电子设备的系统可以配置为,根据应用程序的运行信息和/或接收到的网络数据,弹出系统弹框或者应用程序弹框。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。如图4所示,应用程序框架层可以包括窗口管理器,内容提供器,界面类,电话管理器,资源管理器,通知管理器等。当用户通过电子设备的触摸屏幕或者按键对弹框进行操作时,用户操作的信息可以通过应用程序框架层向应用程序层传输。
系统层包括安卓运行时(Android Runtime)。Android Runtime包括核心库和虚拟机。Android Runtime负责安卓系统的调度和管理。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。当用户对电子设备的触摸屏或者按键进行操作时,内核层可以根据用户对触摸屏或者按键进行操作的信息,生成相应的事件对象。
在上述四层架构之下,接收设备还设置有硬件层,硬件层可包括前述提出的电子设备硬件部件,比如显示屏、按键等,同时包括接收点击操作所需要的触控传感器等部件。
在图4所示实施例的基础上,接下来对本申请实施例提供的点击操作信息的处理方法的具体实现进行介绍。图5所提供的方法也可以应用于具有其它不同层结构的电子设备。图5是根据一示例性实施例示出的一种点击操作信息的处理方法的流程示意图,该方法可以由上述电子设备通过如图4所示的多个模块交互实现。该方法可以包括如下步骤S51-步骤S54相关的至少一部分或者全部内容。
步骤S51:接收用户对终端显示的弹框进行点击所产生的点击操作的信息。
本申请实施例中,终端可以是手机、笔记本电脑、台式电脑、平板电脑、掌上电脑、智能可穿戴设备、智能柜机、智能家电、路由器、交换机、电子书、播放器等,具有显示屏、操作系统,且能够显示弹框的设备都可以成为本申请实施例中的终端。
终端显示的弹框,可能是系统生成的弹框或应用程序内部生成的弹框。终端显示的弹框可能悬浮于终端的显示界面。在用户未对弹框进行操作时,或者在弹框未因接收到用户的操作指令而从显示界面消除时,用户可能能够对显示界面进行其它操作,在用户对显示界面进行其它操作的过程中,弹框可能被弹框下的显示界面遮盖,弹框也可能仍然悬浮于显示界面。
在另一种可能的实现方式中,在用户未对弹框进行操作时,或者在弹框未因接收到用户的操作指令而消除时,用户可能不能够对显示界面进行其它操作。用户对终端显示的弹框进行操作、且弹框从显示界面消除之后,用户能够对显示界面执行正常操作。
本实施例中,终端显示的弹框,可能是因为用户对终端的操作而弹出的,也可能是因为终端的系统或者应用接收到特定的网络数据而弹出的。
在一种可能的实现方式中,终端显示的弹框可能包括主题、内容、按钮、链接中的至少一种。在弹框中不包括按钮、链接等用户能够直接对弹框进行点击操作的元素的情况下,弹框可以指示用户对终端的按键进行点击操作,以实现对弹框的操作。比如,在弹框中显示内容“重启以激活系统更新”,用户此时可以通过长按终端开机/关机按键,实现对弹框的点击操作。再如,在弹框中显示“双击开机/关机键以确认安装应用”,用户可以通过双击开机/关机按键,实现对弹框的点击操作。从而,在本申请实施例中,对弹框的点击操作,可以是通过点击终端的触摸屏而实现的,或者可以是通过按键实现的,或者可以是通过鼠标、游戏手柄、键盘等外接设备实现的。
用户对终端显示的弹框进行点击所产生的点击操作的信息,可以是用户通过点击弹框的可视化按钮、链接等可点击元素,对弹框进行操作的信息,或者,可以是用户通过操作终端的按键,对弹框进行操作的信息,或者,可以是用户通过鼠标等外接设备,对弹框进行操作的信息。
用户对终端显示的弹框进行点击所产生的点击操作的信息,可以是由用户对弹框进行点击操作的原始事件相关的信息,可能由终端的硬件层进行检测获得。比如,通过终端的传感器,对用户触控终端的触摸屏的操作进行检测,得到用户对终端显示的弹框进行点击操作的原始事件,作为本实施例中用户对终端显示的弹框进行点击所产生的点击操作的信息。在弹框为对话(Dialog)类型的弹框的情况下,弹框对应配置有布局文件,根据布局文件的内容,可以确定用户点击操作在弹框布局中的位置与点击操作的原始事件的关系,从而,可以根据用户对弹框进行操作的位置或者用户操作的具体按钮(或链接),确定用户对弹框进行点击操作的原始事件。
同时,用户对终端显示的弹框进行点击所产生的点击操作的信息,可以包括用户点击操作所指向的元素。比如,在弹框上同时存在多个按钮的情况下,用户对终端显示的弹框进行点击所产生的点击操作的信息包括点击的具体按钮元素的名称或者编号等信息。
在终端部署有安卓系统的情况下,由于内核层是位于硬件和软件之间的层,步骤S51可以由安卓系统的内核层执行。用户在对弹框进行一次有效点击操作时,产生一个用户对终端显示的弹框进行点击所产生的点击操作的信息,当用户对弹框进行反复多次点击时,产生多个用户对终端显示的弹框进行点击所产生的点击操作的信息。
本申请实施例中,点击操作的信息,可以是用户在终端硬件层上实施点击操作时,引起硬件层的电流变化的信息。
步骤S52:根据点击操作的信息,生成向终端的系统的目标模块上报的对象信息;目标模块为对象信息上报至终端的应用层的应用程序之前,用于传输对象信息的多个模块中的至少一个。
在一种实现方式中,对象信息可以是事件(Event)对象。Event对象可以是JavaScript中用于表示事件的对象。当用户与弹框进行交互(如点击、键盘输入等)时,终端会创建一个Event对象来表示这个事件,并将它传递给处理事件对象的程序(即回调函数)。
在本申请实施例提供的方法应用于安卓系统的触摸屏终端时,Event对象可以是活动事件(MotionEvent)对象。MotionEvent对象表示触摸事件,可以包括手指触摸屏幕、手指在屏幕上移动、手指离开屏幕等。MotionEvent对象可以包括事件类型、事件时间戳、触摸点的坐标、触摸点的压力。其中,事件类型可以表示手指触摸屏幕,或者手指在屏幕上移动,或者手指离开屏幕。事件时间戳可以用于指示事件发生的时间。触摸点的坐标可以包括弹框坐标系中的X坐标和Y坐标,表示触摸点在屏幕上的位置。触摸点的压力可以表示触摸点的压力大小,可以用于实现压力感应功能。
在本申请实施例提供的方法应用于安卓系统的触摸屏终端时,Event对象可能由应用程序框架层(Framework)的输入管理服务生成。用户每次对终端实施了正确的点击操作后,终端硬件层会产生一次电流变化信号,对应在内核层产生一个原始事件。每个原始事件在输入管理服务中被转换为一个事件对象。从而,在安卓系统的触摸屏终端中,对象信息也可以是用户对弹框进行点击操作的原始事件。原始事件可能由终端的内核层产生,且需要向终端系统的目标模块上报原始事件,从而原始事件通过内核层、系统层,到达终端的应用程序框架层,在应用程序框架层的输入管理服务子层,将原始事件转换为Event对象,并继续将Event对象向上层上报。
在用户对终端的触摸屏、键盘、外接设备、按键等硬件进行操作后,用户的操作行为被终端检测,得到用户对弹框进行点击操作的信息,用户对弹框进行点击操作的信息可能会从终端系统的内核层,传输到硬件抽象层,经过系统层、应用程序框架层的传输,最终传输到终端的应用层,被应用程序接收。终端的系统的目标模块,也可以是终端系统中从内核层接收到用户操作弹框的原始事件(或者用户对终端显示的弹框进行点击操作的其它类型的信息)到传递到应用层的过程中,用于传输原始事件对应的信息的模块。
在另一种可能的实现方式中,目标模块属于应用框架层,是应用框架层中的一个模块或者子层,根据用户对终端显示的弹框进行点击所产生的点击操作的信息,生成向终端的系统的目标模块上报的对象信息,可以是将用户对弹框进行点击操作的原始事件,作为向终端系统的目标模块上报的对象信息,由内核层、系统层逐层向应用框架层中的目标模块上报。
在另一种可能的实现方式中,目标模块还可以是内核层、硬件抽象层(HardwareAbstraction Layer,HAL)、或系统层中的一个模块。
在本申请实施例中,每一次用户对弹框进行了一次有效的点击操作,均会产生用户对终端显示的弹框进行点击操作的一个信息,而用户对终端显示的弹框进行点击操作的每个信息,对应产生一个对象信息。如果用户对弹框进行了多次有效的点击操作,则分别产生用户对终端显示的弹框进行点击操作的多个信息。
步骤S53:向目标模块上报对象信息。
本实施例中,向目标模块上报对象信息,可以包括:从终端的内核层或者产生对象信息的模块,逐层向目标模块上报对象信息。进而,在目标模块为应用程序框架层的模块的情况下,向目标模块上报对象信息,具体可以包括:内核层将对象信息上报至硬件抽象层;硬件抽象层将对象信息上报至系统层,系统层将对象信息上报至应用程序框架层,进而应用程序框架层中的目标模块接收对象信息。
在另一种可能的实现方式中,目标模块可能为终端的内核层中的模块。那么,向目标模块上报对象信息,可以包括:内核层中的模块根据原始事件获得对象信息。
在另一种可能的实现方式中,目标模块可能为终端的硬件抽象层中的模块。那么,向目标模块上报对象信息,可以包括:内核层将对象信息上报至硬件抽象层中的模块。
在另一种可能的实现方式中,目标模块可能为终端的系统层中的模块。那么,向目标模块上报对象信息,可以包括:终端的系统的内核层将对象信息上报至硬件抽象层,硬件抽象层将对象信息上报至系统层中的模块。
步骤S54:在目标模块的状态被设置为已接收对象信息的情况下,丢弃对象信息;其中,界面类目标模块的状态,在界面类弹框生成后,界面类目标模块首次将界面类点击操作的信息发送至目标层的情况下,被设置为已接收对象信息。
本申请实施例中,目标模块可以设置一个用于指示状态的信息,可以将目标模块的已有对象设置为表示“已接收对象信息”。或者,可以在目标模块设置可以通过在目标模块添加新的状态对象,将新添加的状态对象设置为表示“已接收对象信息”。
目标模块属于应用程序框架层的情况下,目标模块可以为应用程序框架层中,属于应用侧的模块,或者可以为应用程序框架层中,属于终端侧的模块。
本申请实施例中,丢弃对象信息,可以指忽略对象信息、或者阻拦对象信息的进一步传输(上报或传递),或者将对象信息进行更改,使得对象信息不再对应用层产生作用。
在终端显示弹框之后,尚未产生用户对弹框进行点击操作的信息时,也尚未产生对应的对象信息,终端系统的目标模块的状态被设置为未接收对象信息。在用户对弹框进行第一次操作时,终端的内核层产生对用户对弹框进行操作的信息,进而根据用户对弹框进行操作的信息产生对象信息,然后在对象信息第一次到达目标模块时,目标模块将自己的状态设置为“已接收对象信息”。
如果对象信息的产生、传输和处理过程没有延迟或异常,那么终端的应用层会对对象信息进行处理,产生业务处理结果。根据业务处理结果,清除终端显示的弹框,从而用户能够根据弹框消失的事件得知点击操作执行成功。然而,如果对象信息的产生、传输或处理过程中出现延迟,或者终端的应用层对对象信息的处理出现异常或延迟,将会导致业务处理结果不能够及时生成,终端的弹框仍然在用户的第一次点击操作之后保持显示状态。从而,用户可能因为弹框保持显示而认为未能够对弹框产生有效点击,这种情况下,用户往往对弹框执行多次重复点击。如果对用户每次点击弹框的操作信息进行转换、传输和处理,那么应用层也会错误地执行多次重复操作。因此,本申请实施例中,在弹框出现后,根据用户第一次点击弹框产生的点击操作的信息,对应生成对象信息并传输至目标模块之后,将目标模块的状态设置为“已接收对象信息”。那么,如果终端显示的弹框没有被及时消除、清除或取消的情况下,用户在第一次点击弹框之后,多次重复点击弹框,产生多个对象信息被传输至目标模块时,后续的多个对象信息将会因为目标模块的状态被设置为“已接收对象信息”而丢弃,使得多余的对象信息将不会再引起应用层的重复处理,减少用户重复点击弹框造成应用错误地多次执行对应的重复处理操作的情况。
在一种实施方式中,目标模块包括安卓系统的界面类(View);界面类包括按钮控件;向目标模块上报对象信息之后,点击操作信息的处理方法还包括:在界面类的按钮控件设置为未接收对象信息的情况下,将按钮控件设置为不可点击,以表示界面类的状态被设置为已接收对象信息。
本申请实施例中,界面类为安卓系统应用程序框架层的应用侧的模块,属于应用程序框架层中的类。View类是Android中所有界面元素的基类,包括按钮、文本框、列表、网格等。在View类的基础上,Android还提供了多个且可扩展的视图(Views),这些视图可以用来构建应用程序的界面。界面类是Android系统中非常重要的一部分,它提供了各种界面元素和回调函数,使得开发者能够更加方便地实现用户与界面之间的交互,提高了应用程序的可用性和用户体验。
在具体实现方式中,按钮控件不同于弹框中的按钮。View类中的按钮控件可以是在Android应用程序中通过编程方式创建的按钮,View类提供了用于设置按钮属性(如宽度、高度、文本等)的方法,以及用于处理按钮点击事件的方法。因此,可以通过View中的Button类或其子类ToggleButton(开关按钮),实现在第一次接收对象信息后,将按钮状态设置为不可点击。或者,应用层也可以通过回调函数获取View的按钮控件,将按钮控件设置为“已接收对象信息”。
在目标模块为界面类的情况下,点击操作的信息可以为,在用户实施点击操作之后,终端系统的内核层产生的原始事件。
在本申请其它实施例中,也可以在弹框弹出后,累计接收到两次或两次以上设定次数的事件对象后,再将目标模块的状态设置为“已接收对象信息”。
在一种实施方式中,将按钮控件设置为不可点击,包括:确定对象信息对应的按钮类型,按钮类型包括选择、取消和中立中的一种;获取按钮类型所对应的按钮控件;将按钮控件设置为不可点击。
本申请实施例中,上述将按钮控件设置为不可点击的具体过程,可以由应用层执行,或者由目标模块自己执行设置。
本申请实施例中,对象信息对应的按钮类型,可以是通过按钮向用户提供的操作选择的类型。比如,用户针对弹框提示的操作,可以选择确认(对应选择的按钮类型),或者否认(对应取消的按钮类型),或者选择中立(比如查看详细信息等)。如图6所示,弹框61由用户在终端实施的删除行为触发,当用户在终端桌面长按应用程序A的图标时,弹出选项菜单65,点击选项菜单65中的“移除APP”的选项,用户点击“移除APP”的选项后,终端呈现出弹框61。弹框61包括:标题62、内容63和按钮64。其中,标题62显示“移除“A”?”,表示弹框的关键信息。内容63显示““从主屏幕移除”会将APP保留在APP资源库中”。按钮64包括选择、取消和中立三种按钮类型。其中,按钮类型为选择的按钮64,显示文字为“删除APP”,这一类型的按钮对应用户对当前弹框提示的信息表示接受的选项,即对主题或内容中的询问内容表示确认。按钮类型为取消的按钮64,显示的文字为“取消”,这一类型的按钮表示用户对当前弹框提示的内容的操作选择否定,针对弹框61而言,即取消删除APP的行为。按钮类型为中立的按钮64,显示的文字为“从主屏幕移除”,这一类型的按钮对应用户对当前弹框提示的信息表示中立的选项,即既不做出肯定的选择,也不做出否定的选择。
在本申请实施例中,如果弹窗中可能包括对多种被选目标中的任意项进行选择,选择的按钮类型对应于对所有被选目标进行选择的操作,否定的按钮类型对应于对所有被选目标均不选择的操作,中立的按钮类型对应于对多种被选目标中的至少一项进行选择的操作。
采用按钮类型表示用户对弹框提示的信息的操作对应的类型。在一种可能的实现方式中,用户可能对同一弹框执行两种以上不同的操作,在这种情况下,产生两种以上按钮类型的对象信息,如果后续接收到的对象信息对应的按钮类型,与前序接收到的对象信息对应的按钮类型不同,那么,后续接收到的对象信息也可以被传输至应用层。
本申请实施例中,针对同一个按钮类型在弹框上对应的按钮,用户可以在弹框在显示界面上清除之前进行至少一次有效操作,保证用户对弹框的操作意图准确识别和传达到应用层。
在一种可能的实现方式中,目标模块可以包括安卓系统的窗口管理服务;向目标模块上报对象信息之后,点击操作信息的处理方法还包括:在窗口管理服务的弹框控件被设置为未接收对象信息的情况下,将界面类对应的按钮控件设置为不可点击,以表示窗口管理服务的状态被设置为已接收对象信息。
窗口管理服务(Window Manager Service,WMS)是Android操作系统中的一个核心服务,主要负责管理系统中所有的窗口,包括应用程序窗口、系统窗口(如状态栏、导航栏等)以及其他相关组件。窗口管理服务提供了一系列的应用程序编程接口(ApplicationProgramming Interface,API)和功能,窗口管理服务用于创建、更新、销毁窗口,以及处理窗口之间的交互和通信。窗口管理服务属于应用程序框架层终端侧的模块,本申请实施例通过窗口管理服务,对界面类对应的按钮控件进行状态更改,从而可以通过对终端的配置,实现对多余的对象信息的滤除。
在目标模块为窗口管理服务的情况下,点击操作的信息可以为根据用户的点击操作产生的原始事件。在目标模块为内核层的情况下,点击操作的信息可以为硬件电路中根据用户的点击操作产生的电流变化信息。
在一种实施方式中,点击操作信息的处理方法还包括:终端的系统的应用层通过回调函数,获取界面类所有按钮类型的按钮控件(的标记);根据按钮控件(的标记),确定界面类的状态;或者,终端的系统的应用框架层,根据界面类中所有按钮类型的按钮控件(的标记),确定界面类的状态。
本申请实施例中,应用层通过回调函数,可以对所有按钮类型对应的按钮控件进行获取,同时获取到按钮类型对应的按钮控件。这种情况下,获取目标模块状态的功能或者更改目标模块状态的功能,可以通过应用实现。或者,还可以由终端的界面类自己对按钮空间的标记进行判断,并根据判断结果确定目标模块的状态。
在一种实现方式中,点击操作信息的处理方法还包括:检测到终端的系统存在更新的情况下,在终端显示用于提示系统更新的弹框;或,检测到终端的应用程序存在更新的情况下,在终端显示用于提示应用程序更新的弹框。
本申请实施例中,终端系统存在更新,可以包括系统存在新的版本,或者系统产生了新的需要处理的通知。同理,终端的应用程序存在更新,可以包括终端的应用程序出现新的版本,或者终端的应用程序产生了新的需要处理的通知。系统存在更新的情况,或者应用程序存在更新的情况,可以由用户操作触发,也可以由网络数据触发。
在终端的系统或者终端的应用程序出现更新的情况下,在终端显示相关的弹框,从而能够对系统或应用程序需要执行的操作进行提示,以便用户对终端的系统和应用程序进行快捷操作。
在一种实施方式中,接收用户对终端显示的弹框进行点击所产生的点击操作的信息,包括:检测到用户对终端的硬件层进行点击操作的原始事件;终端输入子系统根据原始事件,产生点击操作的信息;将点击操作的信息传递到终端的用户空间的设备节点。
本实施例中,终端的硬件层包括终端的各个硬件组成部分,是终端运行的物理基础。硬件层包括CPU、存储、网络通信模块等。在本申请实施例中,硬件层包括能够被用户点击以产生点击操作的信息的终端组成部分。比如,硬件层可以包括触摸屏、鼠标、键盘、按键等。在安卓系统的终端的输入设备(如触摸屏、鼠标、游戏手柄、键盘等)可用时,内核层会在内核层的用户空间创建与输入设备名称对应的设备节点。当输入设备不可用时,内核层会将对应的设备节点删除。
针对包括触摸屏的终端而言,终端设置有用于检测触控操作的传感器,当用户对触摸屏进行触控操作时,传感器产生相应的电信号,比如,可以为电流变化信号,在用户对触摸屏进行点击操作的情况下,传感器产生的电流变化信号,电流变化的信号,或者根据电流变化的信号生成的原始事件,可以作为本申请实施例中的点击操作对应的信息。
在终端内核层,设置有内核空间和用户空间,终端设备在用户空间中存在至少一个设备节点,用户空间的设备节点,可以为与输入设备(键盘、鼠标、触摸屏等)对应的代码信息。当用户的硬件层检测到用户对触摸屏进行了触控操作之后,获得电流变化信号。内核层根据电流变化信号,将电流变化信号加工,生成点击操作的原始事件,内核层会将点击操作的原始事件写入用户空间的设备节点。安卓系统监控用户空间的所有设备节点,安卓系统内核层的上层模块通过对设备节点进行轮询,能够获得原始事件。在输入设备为按键的情况下,点击操作原始事件可能是原始按键事件(Key Event),原始按键事件属于本申请实施例中的对象信息的一种。
本实施例中,终端能够根据用户的点击操作,产生事件对象,将事件对象挂在用户空间与硬件层对应的设备节点,从而使得终端内核层的上层结构在轮询获得事件对象后,能够将事件对象继续上报,最终使得事件对象对应的点击操作的信息得到处理。
在一种实施方式中,根据点击操作的信息,生成向终端的系统的目标模块上报的对象信息,包括:终端的输入管理服务从设备节点的文件中,读取到根据用户对终端显示的弹框进行点击所产生的点击操作的信息;终端的输入管理服务将根据用户对终端显示的弹框进行点击所产生的点击操作的信息,转化为对象信息;将对象信息作为向终端的系统的目标模块上报的对象信息。
本实施例中,输入管理服务(Input Management Service,IMS),在具有安卓系统的终端中,负责管理系统的输入部分,键盘、鼠标、按键、触摸屏等输入设备输入的信息,均经过输入管理服务进行传输或转发。
在输入管理服务对内核层的用户空间的设备节点进行轮询时,能够获得在设备节点写入的原始事件,将原始事件转换为事件对象,然后将事件对象进行分发。
本申请实施例中,通过输入管理服务将每一次点击操作对应的信息转换为事件对象进行上报,从而实现本申请实施例的处理方法,不需要改变终端的底层结构,降低了方法实现的难度。
在一种实施方式中,点击操作信息的处理方法还包括:在目标模块的状态被设置为未接收对象信息的情况下,将对象信息上报至终端的应用层。
在弹框生成后,如果目标模块尚未接收到或处理对象信息,那么目标模块的状态为默认状态,即为未接收对象信息的状态。因此,在应用层的下层模块确定目标模块的状态仍处于默认状态的情况下,可以判断相同的对象信息还没有被应用层接收到,因此可以将对象信息进行上报。
本实施例中,在目标模块的状态被设置为“未接收对象信息”的情况下,将对象信息上报至终端的应用层,从而保证应用层的应用能够有效地将点击操作对应的对对象信息进行处理,实现用户期望的操作结果。
在本申请实施例中,目标模块的状态,可以包括多个按钮类型对应的状态。比如,按钮类型包括多个类型的情况下,目标模块的状态可以包括多个按钮类型对应的状态。如果一个弹框显示如图7所示的“取消”按钮73、“下载”按钮72和“详情”按钮74,分别对应取消、选择、中立三种按钮类型。三种按钮表示对标题“软件更新”和内容“系统有重要更新,建议尽快更新”,可以执行的三种不同操作。在用户第一次点击“取消”按钮73时,目标模块接收到了点击操作对应的事件对象后,将与取消的按钮类型对应的状态设置为“已接收对象信息”。当用户后续再次点击“取消”按钮73后,后续点击操作对应的事件对象将被丢弃,使得点击“取消”按钮73对应的事件对象只能够被应用层处理一次。而用户若在点击“取消”按钮73之后,首次点击“下载”按钮72,那么此时目标模块与选择的按钮类型对应的状态信息仍然为“为接收对象信息”,用户点击“下载”按钮72的操作对应的事件对象仍然上报至用户层,从而用户点击“下载”按钮72的操作仍然能够被应用层响应。
在另一种可能的实现方式中,只要目标模块将一个对象信息向应用层上报了,那么不管对象信息对应的控件类型为何种类型,均将目标模块的状态设置为已经接收对象信息。
在本申请可能的实现方式中,如当用户点击终端时,如果存在用户对弹框多次点击的操作,那么目标模块可以在第一次接收到对象信息时,将状态设置为“已接收对象信息”。这种情况下,目标模块第一次接收到的对象信息,可能并非用户第一次对弹框点击时产生的,可能由于时延等原因,是用户首次点击弹框之后,多次点击弹框时对应产生的多个对象信息中,最先传输到目标模块的那个对象信息。
在一种实施方式中,将对象信息上报至终端的应用层之后,点击操作信息的处理方法还包括:在检测到应用层处理对象信息生成的业务处理结果之后,取消显示终端显示的弹框;产生取消显示的弹框的提示信息;根据提示信息,将目标模块的状态设置为未接收对象信息。
本实施例中,在对用户点击弹框的操作产生有效响应之后,及时消除弹框的显示,使得用户能够及时得知点击操作对应的指令被系统成功执行,从而不再执行重复的点击操作。
业务处理结果可能包括:下载应用程序更新包、更新系统、拒绝下载、查看信息等。在业务处理结果产生且取消了当前正在显示的弹框之后,可能会根据用户对弹框的操作,在终端生成其它弹框。比如,在应用程序安装之后,当用户选择应用程序请求的第一种配置时,应用程序会自动弹出另一弹框,请求用户对应用程序的第二种配置进行选择。或者,业务处理结果为支付相关的结果时,可能会在产生业务处理结果的同时,在终端对应的账户中产生钱款信息变更。在本申请实施例将重复的对象信息丢弃后,应用层的应用将不再对对象信息进行处理,不会产生重复且错误的业务处理结果。
在弹框被取消后,弹框不再显示在终端界面,等待下一次触发弹框的事件发生时,弹框才会重新弹出。在本申请其它实现方式中,可以在每次弹框出现之后,再将目标模块对应的状态设置为“未接收对象信息”,使得用户能够对本次出现的弹框进行正常操作。在这种情况下,本申请实施例提供的点击操作信息的处理方法,还包括:检测到终端弹出弹框;在应用层的应用首次接收到用户对弹框点击产生的对象信息之前,将终端系统的目标模块的状态设置为未接收对象信息。
在终端的系统,或者终端的应用程序存在新的版本的情况下,用户终端显示图7所示的弹框之后,如果用户点击了“下载”的按钮72,那么,终端应用层根据点击操作对应的对象信息,进入下载新版本数据包并安装的流程。
仍然参照图7所示,在下载新版本数据包并安装的流程中,在终端呈现弹框71,以提醒用户终端的系统或者应用程序存在新的版本之后,如果用户点击“下载”的按钮72,那么终端会判断当前所处的网络环境是否为移动网络。如果终端所处的网络环境为移动网络,或者其它类型的付费网络,那么在终端会进一步弹出弹框75,通过弹框75提示用户是否采用移动网络下载更新版本数据包。
如图7所示,弹框75包括标题、内容和按钮。其中,弹框75的标题部分对应显示的文字为“软件更新”,表示弹框75的关键信息。弹框75的内容部分对应显示的文字为“当前为移动数据网络,本次下载将消耗xxMB流量,是否继续下载?”,表示弹框75关于软件更新所具体请求的内容。其中,xxMB表示下载所消耗的流量为xx兆字节(Mebibyte)。弹框75的按钮包括“取消”按钮和“继续下载”按钮。其中,“取消”按钮的按钮类型为取消,“继续下载”按钮的按钮类型为选择。
针对弹框71和弹框75,终端为安卓系统的情况下,如果在弹框上发生的点击事件被处理,那么弹框71和弹框75分别会进行销毁,从而无法再对弹框71和弹框75进行操作。
图7所示的示例的终端操作流程如图8所示。在终端系统检测到系统或应用的更新时,执行图8中的步骤S81-S812。
步骤S81:针对更新,弹出新版本的弹框。新版本的弹框用于提醒用户系统或应用程序存在新版本。
步骤S82:接收用户对“下载并安装”按钮进行点击操作的信息。
步骤S83:处理用户对“下载并安装”按钮进行点击操作的信息,生成点击事件的事件对象。
在用户对“下载并安装”按钮进行点击操作的信息为电流变化信号的情况下,步骤S82、步骤S83可以由终端的内核层执行。
在用户对“下载并安装”按钮进行点击操作的信息为原始事件的情况下,步骤S82、步骤S83可以由终端的内核层之上、应用层之下的模块(不包括内核层的模块或应用层的模块)执行。
步骤S84:处理点击事件的事件对象。
可以利用应用程序框架层的AlertDialog模块,对事件对象进行分发、上报处理。AlertDialog是Android中提供的一个用于显示对话框的组件,可以在应用程序中弹出一个模态对话框,这个对话框是置顶于终端的显示界面中所有元素之上的,能够屏蔽掉显示界面中的其它控件的交互能力,以向用户显示重要信息或请求用户进行决策。
步骤S85:终端的应用接收到事件对象的处理任务。
步骤S86:判断网络是否可用,若是,进入步骤S87;若否,进入步骤S812。
步骤S86可以由应用执行,也可以由应用调用终端模块执行。
步骤S87:判断可用网络是否为Wi-Fi网络,若是,进入步骤S88,若否,进入步骤S89。
其中Wi-Fi网络为无线保真(Wireless Fidelity)网络。
步骤S88:触发下载线程,对更新数据包进行下载和安装。
步骤S89:判断应用是否预先配置提醒弹框,若是,进入步骤S810,若否,进入步骤S811。
步骤S810:创建并显示消耗流量提示弹框。
消耗流量提示弹框不同于步骤S81中的新版本的弹框,用于提示是否继续执行消耗流量的操作,如图7所示的弹框75。
步骤S811:取消产生消耗流量提示弹框的流程。
步骤S812:提醒网络不可用。
图9为图8所示的流程在安卓系统的终端中的系统交互时序图。
其中,终端包括输入系统,输入系统进一步包括输入子系统。输入子系统进一步包括按键、触摸屏(也称为触摸屏幕)、终端的外接设备(也称为外设设备),以及按键、触摸屏和外接设备对应的传感器,用户在输入子系统执行了点击操作之后,输入子系统将点击操作对应的原始事件传递给终端内核层用户空间的设备节点。IMS监听并读取设备节点,将设备节点中的原始事件,转换为事件对象,将事件对象传递给WMS。WMS包括对应于多种不同弹窗的处理组件,具体包括活动(Activity)组件、对话框(Dialog)组件、弹出窗(PopupWindow)组件、吐司弹出窗(Toast)组件。WMS中的对话框组件将事件对象传递到界面类(View),在界面类内,事件对象按照委托机制分发给View内的组件进行处理,处理后传递到应用程序层。应用程序层根据应用程序自身设置的点击事件处理方式,处理事件对象并生成业务处理结果。
图10为本申请实施例的点击操作的信息时延产生示意图。根据输入日志进行分析,在一次点击操作之后,当输入系统处理设备节点中写入的原始事件时,原始事件在输入系统中的派发过程存在第一时长的时延,在WMS、View进行转发处理后,原始事件对应的事件对象到达应用层时,应用程序收到事件对象的时延第二时长将比第一时长更长,可能超过1秒。从而,用户在点击弹框之后,有可能弹框不能及时从显示界面清除。
如果用户点击“下载”的按钮72后,终端系统延迟处理了点击操作对应的对象信息,终端并没有及时清除弹框71,那么用户在终端没有有效反应的情况下,可能会误以为对“下载”的按钮72的点击操作失败,进而会重复点击。用户多次重复点击“下载”的按钮72会产生多个对象信息,这多个对象信息如果在目标模块没有进行过滤,那么系统处理用户点击“下载”的按钮72对应的对象信息后,后续会弹出多个弹框75。这多个弹框75可能都需要用户逐一点击选择的按钮类型的按钮,或取消的按钮类型的按钮。如果用户对弹框75执行点击操作时,再次出现系统延迟或者其它故障,导致弹框75也未能够及时从终端的显示界面清除,那么用户仍然可能对弹框75执行多次点击操作,并在终端产生多次对弹框75执行点击操作对应的业务处理结果,从而会对用户使用终端造成极为不好的体验。
图7所示的弹框75、弹框71,在终端的系统为安卓系统的情况下,均可以为AlertDialog的对话框。
在终端系统延迟处理用户对弹框61或者弹框71点击操作的信息的情况下,用户可能会认为未能有效点击弹框,而对弹框61或者弹框71进行多次点击。从而,AlertDialog的对话框中的按钮多次点击,导致终端系统对点击操作的信息进行多次处理,而影响后续业务的正常处理。实际上,AlertDialog中的按钮只支持一次点击,而出现该问题是因为系统消息发送延迟了引发的一系列问题,或者系统存在其它的异常。
而通过本申请实施例提供的点击操作信息的处理方法,能够在目标模块在弹框弹出后,首次收到点击操作对应的对象信息的情况下,将目标模块的状态设置为“已接收对象信息”,根据目标模块“已接收对象信息”的状态,能够对多余的对象信息进行丢弃或者忽略。在用户对弹框75或者弹框71的点击操作的信息处理过程延迟的情况下,用户即使对弹框75或者弹框71进行了多次重复的点击,系统也能够将多余的对象信息进行过滤,避免多余的对象信息在AlertDialog的弹框存在处理延时场景下,出现多次点击而导致对应应用的业务被重复处理的问题。
本申请一种示例的实现方式如图11所示,在终端的显示界面显示AlertDialog弹框之后,用户对弹框的点击操作信息在终端系统的处理过程存在延迟时,用户进一步对弹框进行了多次的点击操作。那么,在终端系统中,执行下述步骤S1101至步骤S1112。
步骤S1101:IMS派发对象信息。
本申请示例中,对象信息可以是事件对象。事件对象可以是终端IMS根据用户对弹框进行点击操作的原始事件生成的。每次有效的点击操作均对应产生一个原始事件,一个原始事件在IMS处被转换为一个事件对象。
步骤S1102:WMS将对象信息传递给AlertDialog窗口,由AlertDialog窗口向上层传递。
步骤S1103:View接收对象信息,将对象信息在View内按照委托机制分发。
本申请实施例中,按照委托机制,对象信息在View内的控件之间传递,直到传递到能够处理对象信息的View内部控件(按钮控件)。
步骤S1104:View中的分发触控事件分发组件(dispatchTouchEvent)分发对象信息。
步骤S1105:View中的按钮控件(button)判断是否需要处理接收到触控事件分发组件分发的对象信息,若是,进入步骤S1106,若否,进入步骤S1112。
步骤S1106:View处理对象信息。
步骤S1107:View处理了对象信息后,消除弹框使得弹框在终端显示界面消失,并将对象信息继续上传到应用层。
步骤S1108:应用层根据View的按钮类型的标记,判断是否表示界面类的状态为“已接收对象信息”,若是,进入步骤S1109,否则,进入步骤S1111。
本步骤实现时,可以作为单独的应用处理,即相当于在应用层增加应用,获取按钮类型对应的按钮控件,监听三种按钮类型对应的按钮控件,分别为:选择类型的标记(AlertDialog.Builder.setPositiveButton())、中立类型的标记( AlertDialog.Builder.setNeutralButton())、取消类型的标记(AlertDialog.Builder.setNegativeButton())。
上述三种按钮类型对应的按钮控件,在View收到点击事件后将标记更新为“已接收对象信息”,表示按钮不可点击。应用层通过按钮回调函数(alertDialog.getButton(DialogInterface.BUTTON_POSITIVE))获取到对应的按钮,在第一次接收到时间信息后设置按钮不可用;下次再次接收到时间信息回调回来,如果根据标记判定按钮不可用(标记为“已接收对象信息”),则丢弃本次接收到的对象信息。
步骤S1109:应用层获取当前点击操作对应的按钮控件,将按钮控件的标记设置为不可点击。
步骤S1110:应用层对对象信息进行处理,得到业务处理结果。
步骤S1111:终止对象信息的传递。
步骤S1112:继续传递对象信息。
图12为本申请另一种实现方式示意图。在终端的显示界面显示AlertDialog弹框之后,用户对弹框的点击操作信息在终端系统的处理过程存在延迟时,用户进一步对弹框进行了多次的点击操作。之后,在终端系统中,执行下述步骤S1201-S1212。
步骤S1201:IMS派发对象信息。
步骤S1202:WMS将对象信息传递给AlertDialog窗口,由AlertDialog窗口向上层传递。
步骤S1203:View接收对象信息,将对象信息在View内按照委托机制分发。
步骤S1204:View中的分发触控事件分发组件分发对象信息。
步骤S1205:View中的按钮控件判断是否需要处理接收到触控事件分发组件分发的对象信息,若是,进入步骤S1206,若否,进入步骤S1212。
步骤S1206:View处理对象信息。
步骤S1207:View判断按钮控件的标记是否为不可点击,若否,进入步骤S1208,若是,进入步骤S1211。其中,按钮控件属于View的子类控件。
步骤S1208:设置按钮控件的标记为不可点击。
其中,设置按钮控件的标记为不可点击时,获取点击操作对应的按钮类型的按钮控件,将按钮控件的标记设置为不可点击。
终端的提供方可以从终端的应用程序框架层对AlertDialog弹框进行优化,在应用框架层面进行优化可以使所有应用全部自动适配无需应用单独处理。AlertDialog弹框在对对象信息进行分发前,预先将对象信息拦截,对View的状态是否表示“已接收对象信息”进行判断,如果当前点击操作对应的弹框按钮已经被点击过,那么不再对象信息继续传输,也不会重复下发对象信息。从而,使得AlertDialog弹框中的按钮只允许触发一次。
步骤S1209:View将对象信息传递到应用层。
步骤S1210:应用层的应用对对象信息进行处理,得到业务处理结果。
步骤S1211:终止对象信息的传递。
步骤S1212:继续传递对象信息。
图13为本申请一种实施例的点击操作信息的处理方法流程图,包括步骤S1301至步骤S1310。
步骤S1301:终端的输入子系统检测用户通过按键、触摸屏、外接设备等硬件模块,对弹框实施的点击操作,得到用户对弹框进行点击操作的信息。
步骤S1302:终端的输入子系统,根据用户对弹框进行点击操作的信息生成点击操作的原始事件。
步骤S1303:输入子系统将原始事件写入内核层的用户空间的设备节点中。
步骤S1304:输入管理服务将设备节点中的原始事件读取。
步骤S1305:输入管理服务将原始事件转换为事件对象。
步骤S1306:输入管理服务将事件对象通过AlertDialog控件发送给界面类(View)。
步骤S1307:View将事件对象在View子类中按照委托机制分发处理。
步骤S1308:在View子类中的按钮控件未设置为不可点击的情况下,将事件对象发送到应用层。
在View子类中的按钮控件设置为不可点击的情况下,View层将事件对象忽略。
步骤S1309:View清除终点显示界面中的弹框。
步骤S1310:应用层的应用程序处理事件对象。
图14是本申请实施例提供的一种点击操作信息的处理装置,包括:信息接收模块1401、上报信息生成模块1402、上报模块1403和丢弃模块1404。
其中,信息接收模块1401,用于接收用户对终端显示的弹框进行点击所产生的点击操作的信息。
上报信息生成模块1402,用于根据用户对终端显示的弹框进行点击所产生的点击操作的信息,生成向终端的系统的目标模块上报的对象信息;目标模块为对象信息上报至终端的应用层的应用程序之前,用于传输对象信息的多个模块中的至少一个。
上报模块1403:向目标模块上报对象信息。
丢弃模块1404:在目标模块的状态被设置为已接收对象信息的情况下,丢弃对象信息;其中,目标模块的状态,在弹框生成后,目标模块首次将点击操作的信息发送至目标层的情况下,被设置为已接收对象信息。
需要说明的是:上述实施例提供的点击操作信息的处理装置在记录信息时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
同时,本申请实施例的点击操作信息的处理装置,还可以包括其它的功能模块,实现本申请任意实施例提供的点击操作信息的处理方法中的任意步骤和功能。
上述实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请实施例的保护范围。
上述实施例提供的确定位置信息的装置与确定位置信息的方法实施例属于同一构思,上述实施例中单元、模块的具体工作过程及带来的技术效果,可参见方法实施例部分,此处不再赘述。
作为本申请的一个示例,上述电子设备能够接入基站,同时也具有接入无线局域网的能力,譬如该电子设备是手机、平板、智能手表、便携式笔记本等。请参考图15,图15是本申请实施例提供的一种电子设备的结构示意图。电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriberidentification module,SIM)卡接口195等。其中,传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,比如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据,比如循环执行对目标信息的记录操作。
在一些实施例中,处理器110可以包括一个或多个接口,如可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,通用输入输出(general-purpose input/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serialbus,USB)接口等。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
其中,无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wireless local area networks,WLAN)(WiFi网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信,在应用处理事件对象时,可能需要利用天线1和通信模块150获取事件对象对应的网络数据,进而得到业务处理结果。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的整数。在重启事件中,N个显示屏中有至少一个显示屏显示重启提示信息。
外部存储器接口120可以用于连接外部存储卡,比如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。比如将经过转存的第一目标信息进行持久存储。
内部存储器121可以用于存储计算机可执行程序代码,计算机可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,来执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100在使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,比如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。内部存储器也可以用于存储目标信息。
触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触摸屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器180K可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。触控传感器180K接收到用户在触摸屏上的触控信号后,根据触控信号的压力、位置,产生电流变化信号,电流变化信号可以确认用户在弹框上点击的按钮,进而使得应用执行按钮对应的指令。
按键190包括开机键,音量键等。按键190可以是机械按键,也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。用户通过按键190,也可以生成点击操作的信息。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或N个SIM卡接口,N为大于1的整数。SIM卡接口195也可以兼容外部存储卡。电子设备100也可以通过SIM卡,实现移动通信功能,进而通过移动通信功能,可以获得用于处理事件对象所需要的通信数据。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意结合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络或其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,比如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(比如:同轴电缆、光纤、数据用户线(Digital SubscriberLine,DSL))或无线(比如:红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质,或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(比如:软盘、硬盘、磁带)、光介质(比如:数字通用光盘(Digital Versatile Disc,DVD))或半导体介质(比如:固态硬盘(Solid State Disk,SSD))等。
以上所述为本申请提供的可选实施例,并不用以限制本申请,凡在本申请的揭露的技术范围之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种点击操作信息的处理方法,其特征在于,包括:
接收用户对终端显示的弹框进行点击所产生的点击操作的信息;
根据所述点击操作的信息,生成向所述终端的系统的目标模块上报的对象信息;所述目标模块为所述对象信息上报至所述终端的应用层的应用程序之前,用于传输所述对象信息的多个模块中的至少一个;
向所述目标模块上报所述对象信息;
在所述目标模块的状态被设置为已接收对象信息的情况下,丢弃所述对象信息;其中,所述目标模块的状态,在所述弹框生成后,所述目标模块首次将所述点击操作的信息发送至目标层的情况下,被设置为已接收对象信息。
2.根据权利要求1所述的方法,其特征在于,所述目标模块包括安卓系统的界面类;所述界面类包括按钮控件;所述向所述目标模块上报所述对象信息之后,所述方法还包括:
在所述界面类被设置为未接收所述对象信息的情况下,将所述按钮控件设置为不可点击,以表示所述界面类的状态被设置为已接收所述对象信息。
3.根据权利要求2所述的方法,其特征在于,所述将所述按钮控件设置为不可点击,包括:
确定所述对象信息对应的按钮类型,所述按钮类型包括选择、取消和中立中的一种;
获取所述按钮类型所对应的按钮控件;
将所述按钮控件设置为不可点击。
4.根据权利要求2或3所述的方法,其特征在于,所述方法还包括:
所述终端的系统的应用层的应用通过回调函数,获取所述界面类所有按钮类型各自对应的按钮控件;根据所述按钮控件,确定所述界面类的状态;
或者,所述终端的系统的应用框架层,根据所述界面类中所有按钮类型的按钮各自对应的按钮控件,确定所述界面类的状态。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
检测到所述终端的系统存在更新的情况下,在所述终端显示用于提示系统更新的弹框;
或,检测到所述终端的应用程序存在更新的情况下,在所述终端显示用于提示所述应用程序更新的弹框。
6.根据权利要求1所述的方法,其特征在于,所述根据所述点击操作的信息,生成向所述终端的系统的目标模块上报的对象信息,包括:
所述终端的输入管理服务读取到所述点击操作的信息;
所述终端的输入管理服务将所述点击操作的信息,转化为所述对象信息;
所述终端的输入管理服务将所述对象信息作为向所述终端的系统的目标模块上报的对象信息。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述目标模块的状态被设置为未接收所述对象信息的情况下,处理所述对象信息;
将所述对象信息上报至所述终端的应用层。
8.根据权利要求7所述的方法,其特征在于,所述将所述对象信息上报至所述终端的应用层之后,还包括:
在所述目标模块处理所述对象信息之后,取消显示所述终端显示的弹框;
产生取消显示的弹框的提示信息;
根据所述提示信息,将所述目标模块的状态设置为未接收所述对象信息。
9.一种电子设备,其特征在于,所述电子设备包括:处理器和存储器;
所述存储器用于存储所述电子设备执行如权利要求1-8中任意一项所述的方法的程序,以及存储用于实现如权利要求1-8中任意一项所述的方法所涉及的数据;
所述处理器被配置为用于执行所述存储器中存储的程序。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行如权利要求1-8中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311766046.XA CN117435092A (zh) | 2023-12-21 | 2023-12-21 | 点击操作信息的处理方法、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311766046.XA CN117435092A (zh) | 2023-12-21 | 2023-12-21 | 点击操作信息的处理方法、电子设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117435092A true CN117435092A (zh) | 2024-01-23 |
Family
ID=89558698
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311766046.XA Pending CN117435092A (zh) | 2023-12-21 | 2023-12-21 | 点击操作信息的处理方法、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117435092A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104239130A (zh) * | 2014-08-15 | 2014-12-24 | 北京配天技术有限公司 | 人机交互界面对操作指令响应的控制方法及终端 |
CN109284046A (zh) * | 2018-09-18 | 2019-01-29 | 广州虎牙信息科技有限公司 | 一种控制控件的方法、装置、终端及存储介质 |
CN110704127A (zh) * | 2019-09-26 | 2020-01-17 | 北京金山安全软件有限公司 | 按钮控制方法、装置、电子设备和存储介质 |
CN111737300A (zh) * | 2020-06-23 | 2020-10-02 | 北京同邦卓益科技有限公司 | 业务处理方法、装置、设备及计算机可读存储介质 |
CN113709258A (zh) * | 2021-10-27 | 2021-11-26 | 湖南新云网科技有限公司 | 一种点赞防重方法、设备及存储介质 |
-
2023
- 2023-12-21 CN CN202311766046.XA patent/CN117435092A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104239130A (zh) * | 2014-08-15 | 2014-12-24 | 北京配天技术有限公司 | 人机交互界面对操作指令响应的控制方法及终端 |
CN109284046A (zh) * | 2018-09-18 | 2019-01-29 | 广州虎牙信息科技有限公司 | 一种控制控件的方法、装置、终端及存储介质 |
CN110704127A (zh) * | 2019-09-26 | 2020-01-17 | 北京金山安全软件有限公司 | 按钮控制方法、装置、电子设备和存储介质 |
CN111737300A (zh) * | 2020-06-23 | 2020-10-02 | 北京同邦卓益科技有限公司 | 业务处理方法、装置、设备及计算机可读存储介质 |
CN113709258A (zh) * | 2021-10-27 | 2021-11-26 | 湖南新云网科技有限公司 | 一种点赞防重方法、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11803451B2 (en) | Application exception recovery | |
US10936296B2 (en) | Automated application updates during operating system upgrades | |
EP3493059B1 (en) | Application data migration method and device | |
US11934848B2 (en) | Control display method and electronic device | |
US9760413B2 (en) | Power efficient brokered communication supporting notification blocking | |
US20150127755A1 (en) | Method and apparatus for checking status of messages in electronic device | |
CN107038358B (zh) | 一种自启动处理方法和装置及移动终端 | |
CN110865837A (zh) | 一种进行系统升级的方法和终端 | |
CN110084035B (zh) | 用于在发生拒绝时建议响应指南的电子设备和方法 | |
CN105847446B (zh) | 一种网络数据的获取方法、装置和系统 | |
CN107908492B (zh) | 黑屏检测方法、移动终端及计算机可读存储介质 | |
CN108780400B (zh) | 数据处理方法及电子设备 | |
CN110574006B (zh) | 用于自动同步设备上响应与条件的系统和方法 | |
CN107818036B (zh) | 黑屏检测方法、移动终端及计算机可读存储介质 | |
CN111158735B (zh) | 一种热补丁文件处理方法及通信终端 | |
US20150046846A1 (en) | Apparatus and method for sharing information in terminal | |
US20230216732A1 (en) | Network Configuration Method and Device | |
CN117435092A (zh) | 点击操作信息的处理方法、电子设备及可读存储介质 | |
CN114138293A (zh) | 一种终端及外接存储卡便携系统升级方法 | |
CN111787157A (zh) | 移动终端及其操作响应方法 | |
CN114138343A (zh) | 一种终端及终端启动方法 | |
WO2021087814A1 (zh) | 进程优先级控制方法、装置、电子设备及存储介质 | |
CN107766210B (zh) | 黑屏检测方法、移动终端及计算机可读存储介质 | |
CN111159734A (zh) | 通信终端及多应用数据互访处理方法 | |
CN111273849A (zh) | 通信终端以及屏幕解锁方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |