CN107368298B - 一种文本控件模拟触控方法、终端及计算机可读存储介质 - Google Patents
一种文本控件模拟触控方法、终端及计算机可读存储介质 Download PDFInfo
- Publication number
- CN107368298B CN107368298B CN201710481749.6A CN201710481749A CN107368298B CN 107368298 B CN107368298 B CN 107368298B CN 201710481749 A CN201710481749 A CN 201710481749A CN 107368298 B CN107368298 B CN 107368298B
- Authority
- CN
- China
- Prior art keywords
- target
- user interface
- control
- interface process
- 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.)
- Active
Links
Images
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
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种文本控件模拟触控方法、终端及计算机可读存储介质,通过系统用户界面进程监测目标应用,能够在目标应用中出现需要由目标活动窗口呈现的关键页面时,控制系统用户界面进程直接调用系统事件对目标活动窗口中的目标文本控件进行模拟触控,从而代替用户完成触控,为用户获取触控动作对应的服务。另外,本发明还提供一种终端及计算机可读存储介质,在该终端中,监测目标应用是否存在关键页面以及调用系统事件对目标活动窗口中的目标文本控件进行模拟触控都是由系统用户界面进程完成的,所以,整个过程不需要跨进程,能够节省跨进程所带来的时间开销,以更快的速度完成模拟触控,提升用户体验。
Description
技术领域
本发明涉及终端技术领域,更具体地说,涉及一种文本控件模拟触控方法、终端及计算机可读存储介质。
背景技术
终端智能化概念的出现,让用户手机的功能不再止于基础通信与基础娱乐,在用户工作与生活的各个方面,智能终端几乎都可以提供相应的服务:例如用户可以通过智能手机实现远程工作安排、预定出行工具、预约医生、购买生活用品等,这些服务给用户的带了极大的便利,从根本上改变了用户的生活方式,提升了用户的生活品质。
正是由于智能终端已经涌入了用户日常的各个角落,所以,如何根据用户的实际需求向用户提供更全面、更贴心的服务早已经成了各大终端生产者设计制造终端时不断思考的问题。因为智能终端的功能实现基本依赖于用户的触控操作,所以就以智能终端最基本的触控功能来说,不仅要求终端触控板拥有良好的触控识别能力,而且,要求让用户在面积较小的触控板(例如手机的触控屏)上获得与大面积触控板上同样的触控体验。目前,精准且符合人类使用习惯的触控技术让用户在使用智能终端的时候,拥有不错的用户体验。
但是,在终端的使用过程中,有相当多的场景用户无法进行触控操作,例如,现在比较常见的“抢红包”活动,用户通过加入群组,然后与该群组的朋友一起抢红包。但是当用户处于睡眠状态或者终端不在用户的触及范围内时,用户就无法完成抢红包的触控动作,从而导致用户体验不高。
所以,针对这种用户无法实现触控操作的应用场景,现在亟需提出一种解决方案,用以在用户不方便时,帮助用户完成触控操作,从而提升用户的使用体验。
发明内容
本发明要解决的技术问题在于:解决现有技术中用户因不方便对终端进行触控,从而导致用户无法获得触控动作所带来的服务,针对该技术问题,提供一种文本控件模拟触控方法、终端及计算机可读存储介质。
为解决上述技术问题,本发明提供一种文本控件模拟触控方法,所述文本控件模拟触控方法包括:
控制系统用户界面进程System UI对目标应用进行监测以确定所述目标应用当前存在需要通过目标活动窗口Activity呈现的关键页面,所述目标活动窗口中包含目标文本控件Text view;
控制所述系统用户界面进程调用系统事件对所述目标活动窗口中的目标文本控件进行模拟触控。
可选地,所述控制系统用户界面进程System UI对目标应用进行监测之前,还包括:
根据用户的启动指令确定当前需要控制所述系统用户界面进程对所述目标应用进行监测;
或,
根据当前时间和/或用户同终端的距离确定当前需要控制所述系统用户界面进程对所述目标应用进行监测。
可选地,所述控制系统用户界面进程System UI对目标应用进行监测以确定所述目标应用当前存在需要通过目标活动窗口Activity呈现的关键页面包括:
所述控制系统用户界面进程查询控件树管理者接口View Root Impl当前正在处理的所述目标应用的活动窗口;
所述控制系统用户界面进程判断所述活动窗口中是否包含有所述目标文本控件;
若是,所述控制系统用户界面进程确定所述目标应用当前存在需要通过目标活动窗口呈现的关键页面。
可选地,所述控制所述系统用户界面进程调用系统事件对所述目标活动窗口中的目标文本控件进行模拟触控包括:
控制所述系统用户界面进程启动所述目标的活动窗口;
控制所述系统用户界面进程调用系统短按事件对所述目标活动窗口中的目标文本控件进行模拟点击。
可选地,所述控制系统用户界面进程对目标应用进行监测之前,还包括:确定需要由所述系统用户界面进程进行监测的目标应用以及与所述目标应用对应的目标文本控件的内容。
可选地,所述确定需要由所述系统用户界面进程进行监测的目标应用以及与所述目标应用对应的目标文本控件的内容包括:
根据用户的设置指令确定与各所述目标应用对应的目标文本控件的内容;
所述确定需要由所述系统用户界面进程进行监测的目标应用以及与所述目标应用对应的目标文本控件的内容之后,还包括:
将各所述目标文本控件的内容与各所述目标应用的名称进行关存储,以供后续监测使用。
进一步地,本发明提供了一种终端,所述文本控件模拟点击设备包括处理器、存储器及通信总线;
控制系统用户界面进程对目标应用进行监测以确定所述目标应用当前存在需要通过目标活动窗口呈现的关键页面,所述目标活动窗口中包含目标文本控件;
控制所述系统用户界面进程调用系统事件对所述目标活动窗口中的目标文本控件进行模拟触控。
可选地,所述处理器通过控制所述系统用户界面进程启动所述目标的活动窗口,并控制所述系统用户界面进程调用系统短按事件对所述目标活动窗口中的目标文本控件进行模拟点击。
可选地,所述控制系统用户界面进程对目标应用进行监测之前,所述处理器还用于执行所述文本控件模拟触控程序,以实现以下步骤:
确定需要由所述系统用户界面进程进行监测的目标应用以及与所述目标应用对应的目标文本控件的内容。
进一步地,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现以下步骤:
控制系统用户界面进程对目标应用进行监测以确定所述目标应用当前存在需要通过目标活动窗口呈现的关键页面,所述目标活动窗口中包含目标文本控件;
控制所述系统用户界面进程调用系统事件对所述目标活动窗口中的目标文本控件进行模拟触控。
有益效果
本发明提供一种文本控件模拟触控方法、终端及计算机可读存储介质,通过控制系统用户界面进程System UI对目标应用进行监测,从而确定目标应用当前是否存在需要通过包含有目标文本控件Text view的目标活动窗口Activity进行呈现的关键页面,如果有,则控制系统用户界面进程调用系统事件对目标活动窗口中的目标文本控件进行模拟触控。通过系统用户界面进程对目标应用的监测,能够在目标应用中出现需要由目标活动窗口呈现的关键页面时,控制系统用户界面进程直接调用系统事件对目标活动窗口中的目标文本控件进行模拟触控,从而代替用户完成触控,为用户获取触控动作对应的服务。另外,本发明提供的终端中,监测目标应用是否存在关键页面以及调用系统事件对关键页面对应目标活动窗口中的目标文本控件进行模拟触控都是由系统用户界面进程完成的,所以,整个过程不需要跨进程,能够节省跨进程所带来的时间开销,以更快的速度完成模拟触控,为用户带来更好的用户体验。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1为本发明第一实施例提供的文本控件模拟触控方法的一种流程图;
图2为本发明第一实施例中示出的一种用户界面示意图;
图3为用户对终端进行触控操作的一种示意图;
图4为用户对终端进行触控操作的一种示意图;
图5为本发明第二实施例提供的文本控件模拟触控方法的一种流程图;
图6为本发明第三实施例提供的终端的一种硬件结构示意图;
图7为本发明第四实施例提供的终端的一种硬件结构示意图;
图8为本发明第五实施例提供的移动终端的一种硬件结构示意图;
图9为本发明第五实施例中移动终端显示提示信息的一种界面示意图。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
第一实施例:
虽然通过对终端体积、重量进行压缩之后使得终端具有不错的便携性,能够让用户将其随时携带在自己身边,从而避免漏接电话、错失亲朋好友的消息等事件的发生。但是在终端中还是存在很多事件要求用户以极快的速度进行处理,除了前面所说的在应用程序中“抢红包”以外,还有应用程序根据用户的预订向终端推送某件热门商品的抢购消息等。抢红包以及抢购热门商品等都是实时性极强的服务,一旦用户处理速度稍微慢一点,都极有可能失去机会,更何况用户在很多情况下根本不方便对自己的终端进行触控操作。例如,当红包消息到达时用户正在睡觉或者正在淋浴,或者热门商品抢购推送消息到达的时候,用户可能没有携带手机外出了,这些情况都会导致用户失去获得服务的机会。
所以,针对上述用户容易措施应用程序所提供服务的问题,本实施例提供一种文本控件模拟触控方法,该方法能够在用户不方便或不能对终端进行操作时,替代用实现触控,获取服务,下面请参见图1:
S102、控制系统用户界面进程对目标应用进行监测以确定目标应用当前存在需要通过目标活动窗口呈现的关键页面。
本实施例中所述的关键页面是指需要进行模拟触控的页面,通常是要求用户以极快处理速度进行处理的页面,例如微信或QQ群中包含有群红包的页面,如图2所示,在图2中示出了用户所加入的群组“九个小伙伴”的群聊天界面,在该群组中,朋友A发出了一个群红包,该群红包上携带有以下文本信息:“恭喜发财,大吉大利”的红包留言,以及“领取红包”的提示信息。“恭喜发财,大吉大利”这一类的红包留言是由发送红包的用户填写,且内容可以随意更改。而“领取红包”的字样则表示用户可以通过点击该消息实现抢红包,所以可以作为本实施例中的目标文本控件,即Text view,而包含有红包信息的页面即可作为关键页面。View(控件)代表了用户界面组件的一块可绘制的空间块。每一个View在屏幕上占据一个长方形区域。在这个区域内,这个View对象负责图形绘制和事件处理。
终端的显示页面通常是通过Activity进行呈现的,我们可以将一个显示页面视为一个Activity,但布局相同的两个页面基本都是通过同一个Activity进行呈现的。在本实施例中,用于呈现红包信息页面的Activity即为目标Activity。正常情况下,如果用户自己触控实现抢红包操作,则用户开启微信,且终端接收到红包消息之后,由View Root Impl(控件树管理接口)对目标Activity进行测量measure,布局layout,绘制draw,最后将处理完成的目标Activity进行展示。展示目标Activity的过程,实际也就是显示红包消息页面的过程。对于用户而言,只有将红包消息页面显示在其眼前之后,其才能知晓终端接收到了红包,可以进行相应的抢红包操作。
但是,根据本实施例提供的文本控件模拟触控方法,终端并不需要等到View RootImpl将包含红包消息的关键页面处理显示出来,也即,不需要View Root Impl将目标Activity处理完成,而是在View Root Impl对目标Activity进行处理的过程中,就可以通过System UI进程在View Root Impl中检测到红包消息来临。
在本实施例的一个示例当中,终端控制System UI进程,在View Root Impl中对目标应用的各活动窗口进行遍历查找,确定是否存在包含有目标Text view的活动窗口,如果存在,则判断该活动窗口为目标活动窗口,也即当前目标应用存在需要通过目标活动窗口来呈现的关键页面。以微信抢红包为例:当终端控制System UI进程监测到微信里面出现了需要通过目标活动窗口呈现的关键页面时,就说明当前有红包消息到达,可以执行抢红包的触控操作。应当理解的是,此时红包消息页面尚未呈现出来,因为呈现红包消息的关键活动窗口还在接受View Root Impl进行处理。站在用户角度来说,因为用户是依靠视觉判定是否接收到红包消息的,所以其当前尚不知道接收到红包消息。
S104、控制系统用户界面进程调用系统事件对目标活动窗口中的目标文本控件进行模拟触控。
终端中包括有“事件”,例如长按事件、短按事件、移动事件等。用户对终端进行触控,实际上是希望通过自己的触控使得终端完成自己期望的某种处理。例如,在图3当中,用户期望通过长按桌面图标31从而控制终端显示对该图标关联应用程序的卸载选项。但不同的用户通常有不同的使用习惯,因此,尽管是为了实现同样的触控目的,可是不同用户的长按时间、长按力度可能都不相同,例如,有的用户可能会使用F1的按压力度长按3s,而有的用户习惯使用F2的按压力度长按3.5s。但是无论是哪一种触控,终端最终都可以识别出用户可能希望卸载图标31所对应的应用程序,因此,当前需要根据用户长按动作触发对应用程序的卸载流程。
那为什么不同的长按方式都能够触发相同的终端处理流程呢?这主要是由于终端并不是直接根据用户的触控操作来触发新的处理流程,而是先对用户的触控操作进行识别,确定用户的触控操是否满足长按操作的条件,如果满足条件,则将用户的触控动作识别长按动作,然后调用系统的长按事件来触发卸载流程。也就是说,无论用户以何种方式进行长按,但最终触发卸载流程的其实都是系统的长按事件。
因此,在本实施例中,终端可以在关键页面尚未显示出来之前,就通过控制系统用户界面进程确定当前需要对目标活动窗口中的目标Text view进行触控操作,然后通过控制用户界面进程直接调用系统事件对目标Text view进行“触控操作”。这种“触控操作”和用户真实的触控操作相比,缺少了接收用户操作以及识别用户触控操作的过程,我们可以将这种控制系统用户界面进程直接调用系统事件所实现的触控操作称为“模拟触控”。
下面对终端控制用户界面进程直接调用系统事件对目标Text view进行触控操作的过程进行介绍:
在终端中用户只能对当前正在处于前台显示的页面进行操作,而在后台运行的页面并不会将用户当前的操作识别为针对自己的。例如,用户当前正通过手机与自己的微信好友A聊天,但同时在手机后台也还在运行着用户向好友B发送电子邮件的邮件编辑页面。用户通过输入法输入信息的时候,手机只会将用户的输入信息认定为针对微信好友A的,而不会误认为用户当前输入的信息是为了编辑电子邮件。这主要是由于只有处于激活状态的活动窗口才能与用户进行交互,才能接受用户操作。用户界面进程直接调用系统事件进行触控操作也是一样,只有包含有目标Text view的目标活动窗口当前是处于激活状态时,系统事件才能完成对目标Text view的触控。所以,在调用系统事件之前,终端应当先控制系统用户界面进程启动目标活动窗口。
本实施例所指的触控操作但不限于包括长按、短按、滑动等。虽然在本实施例中仅说明了通过短按点击实现抢红包的场景,但是,本领域技术人员应当明白,如果有需要,调用系统长按或者移动等其他事件来对用户另外一些触控操作进行模拟,也是可行的。
本实施例提供的文本控件模拟触控方法,可以从View Root Impl中查找到目标应用的目标活动窗口,并调用系统事件对目标活动窗口中的目标Text view进行模拟触控,代替用户完成触控操作,避免用户因为不方便对终端进行操作而错失相应服务的问题。同时,由于终端通过用户界面进程确定存在关键页面时,关键页面尚未显示出来,所以,本实施例提供的文本控件模拟触控方法能够比用户的触控操作更早完成,为用户争取更多获取服务的几率。
更进一步的,由于本实施例提供的文本控件模拟触控方法中,对目标Text view的触控操作可以全部通过用户界面进程完成,不需要跨进程,所以能够减少跨进程所占用的时间,提升终端实现模拟触控的效率,为用户提供更好的使用体验。
第二实施例:
本实施例在第一实施例的基础上继续对前述文本控件模拟触控方法进行介绍,并着重阐述本发明文本控件模拟触控方案在实现的时候,全部进程均由用户界面进程实现的原因与优势:
首先,我们提供一种需要跨进程实现的文本控件模拟触控方案:
为了帮助视力、听力或触控操作能力有障碍人群使用终端,体验到终端带来的便利与乐趣,现有终端在系统中基本都新增设计了辅助功能Accessibility。通过System UI进程和辅助功能的共同合作,也可以实现对文本控件的模拟触控,但由于辅助功能是一种服务service,属于系统框架进程Frame work,所以在通过System UI进程监测到目标应用当前存在需要通过目标活动窗口呈现的关键页面时,System UI进程需要与Frame work进程建立连接,通过跨进程的方式调用Frame work进程中的辅助功能,并且通过函数onAccessibility Event将系统事件(长按、短按等)包装成辅助功能可以识别的类型,然后完成对目标活动窗口中目标Text view的模拟触控。下面以安卓智能手机借助辅助功能实现自动抢红包为例:
在智能手机开机的时候,系统会进行开机广播android.intent.action.BOOT_COMPLETED,智能手机根据开机广播打开辅助服务中的抢红包开关,让辅助服务支持被调用。当微信、QQ、支付宝、陌陌等目标应用接收到红包消息后,System UI进程可以通过对View Root Impl中正在接受处理的各目标应用的活动窗口进行查询,判断即将进行展示的各活动窗口中是否包含有目标Text view,如果存在有活动窗口中包括目标Text view,则判定该活动窗口为目标活动窗口;如果不存在包括目标Text view的活动窗口,则说明目标应用没有接收到红包消息。
假定经System UI进程查询,确定目标应用A当前存在有包含目标活动窗口。为了跨进程调用服务服务,System UI进程需要先与Frame work进程建立连接,然后才能触发辅助功能的使用on Accessibility Event函数将系统短按事件进行包装,然后对目标应用A的目标活动窗口中的目标Text view的模拟点击,模拟用户点击图4中文本控件“抢红包”的触控动作。
下面对不需要跨进程实现的文本控件模拟触控方案进行介绍,具体的请结合图5所示的流程图:
S502、终端确定当前需要控制系统用户界面进程对目标应用进行监测。
终端确定需要控制系统用户界面进行对目标应用进行监测说明用户需要终端在目标应用中存在关键页面的时候,代替自己完成对目标Text view的模拟触控。在本实施例的一种示例当中,如果用户确定自己在最近一段时间不方便对目标应用进行触控操作,例如,晚上10点的时候,用户知道自己要睡觉了,所以在后面一段时间内,自己不方便对终端进行操作,则其可以向终端下发启动指令,让终端根据自己下发的启动指令开启模拟触控功能。
在本实施例的另外一种示例当中,终端会自动判断是否需要开启模拟触控功能,终端可以根据当前的时间或当前与用户之间的距离,或者同时根据时间与距离确定是否需要帮助用户进行模拟触控。例如,根据用户的使用习惯,终端确定用户当前时刻可能已经进入了睡眠状态,则终端自动开启模拟触控功能,控制系统用户界面进程对目标应用进行监测。又例如,用户带着穿戴式设备(例如智能腕表)离开了终端附近,终端通过与智能腕表之间的交互确定用户当前远离自己,无法对自己的应用进行操作,所以终端可以根据评判结果自动开启模拟触控功能。
S504、终端确定需要被监测的目标应用以及各目标应用的目标Text view。
在控制系统用户界面进程在进行监测之前,应当知晓需要控制系统用户界面进程对哪些目标应用进行监测,同时要确定各目标应用所对应的目标Text view是什么。毫无疑义的是,不同目标应用可以拥有不同的目标Text view,例如,用户需要终端通过系统用户界面进程监测应用A,主要是为了让终端实现自动抢红包,而让终端对应用B进行监测主要是为了让终端帮助自己抢购最热门的推送商品,则对应于目标应用A的目标Text view可能是“抢红包”,而对应与目标应用B的目标Text view可能是“抢购最热商品”。另外,即使都是为了抢红包,目标应用C的目标Text view可能有是“立即抢”。在本市实施例的一种示例当中,终端中存储有监测表,在监测表中存储了需要被监测的各目标应用的唯一标识(例如,名称、应用ID等)以及各目标应用对应的目标Text view的内容,监测表可以参照表1:
表1
目标应用唯一标识 | Text view |
应用A | 抢红包 |
应用B | 抢购最热商品 |
应用C | 立即抢 |
监测表中的内容可以由用户通过设置指令向终端指定,若由用户指定,则终端在确定需要监测的目标应用以及各目标应用所对应的目标Text View之后,可以先将监测表存储到终端本地。另外,监测表也可以由程序人员设置完成,然后通过服务器同步给终端,并存储在终端本地。
S506、终端控制系统用户界面进程判断View Root Impl当前正在处理的活动窗口是否为目标活动窗口。
终端可以控制系统用户界面进程对正在View Root Impl中接受处理的目标活动窗口进行查询,从父布局进行遍历,遇到Text View就进行判断,是否为目标Text View,若是,则判定包含有该目标Text View的活动窗口为目标活动窗口,若否,则继续遍历,遇到View Group(控件群)就递归,直至寻找到对应的目标Text View或对View Root Impl中所有活动窗口遍历结束为止。
若终端控制系统用户界面进程确定View Root Impl当前正在处理的活动窗口不是目标活动窗口,但随着View Root Impl对该活动窗口的处理结束,其可能又要对另外的活动窗口进行处理,因此,系统用户界面进程可以继续对View Root Impl当前正在处理的活动窗口进行判断。若终端通过系统用户界面进程确定View Root Impl当前正在处理的活动窗口是目标活动窗口,则执行S508。
S508、终端控制系统用户界面进程调用系统事件对目标活动窗口中的目标文本控件进行模拟触控。
终端启动目标活动窗口,让目标活动窗口处于激活状态。具体的,终端可以将目标互动窗口移动到其所在Task(任务栈)的顶部,并将该Task移动到对所述Task进行管理的Stack(活动窗口堆栈)顶部,从而,让目标活动窗口处于Stack的顶部。然后控制系统用户界面进程调用系统事件对该目标活动窗口中的目标Text View进行处理。应当理解的是,当目标活动窗口处于激活状态时,终端可以对目标活动窗口对应的关键页面进行显示,也可以直接在黑屏状态下就完成模拟触控。
本实施例提供的不需要跨进程的文本控件模拟触控方案,相对于需要跨进程,借助系统辅助服务实现的模拟触控,能够节省跨进程调用所需时间,更快速地完成模拟触控。特别是针对抢红包、抢购热门商品等需要模拟触控来实现的事情来说,不跨进程即完成所有处理,能够为用户获得更多机会,极大地提升用户体验。
第三实施例:
本实施例提供一种终端,请参见图6,该终端6包括处理器61、存储器62以及通信总线63,通信总线63用于实现处理器61和存储器62之间的连接通信。存储器62可以存储有一个或多个计算机程序,本实施例中的存储器62存储有开屏页面管理程序,该程序可供处理器61读取、编译并执行,从而实现第一实施例或第二实施例中的文本控件模拟触控方法。下面结合具体示例对该终端6进行介绍:
处理器61可以控制系统用户界面进程对目标应用进行监测以确定目标应用当前存在需要通过目标活动窗口呈现的关键页面。这里所说的关键页面是指需要进行模拟触控的页面,通常是要求用户以极快处理速度进行处理的页面,例如微信或QQ群中包含有群红包的页面,如图2所示,在图2中示出了用户所加入的群组“九个小伙伴”的群聊天界面,在该群组中,朋友A发出了一个群红包,该群红包上携带有以下文本信息:“恭喜发财,大吉大利”的红包留言,以及“领取红包”的提示信息。“恭喜发财,大吉大利”这一类的红包留言是由发送红包的用户填写,且内容可以随意更改。而“领取红包”的字样则表示用户可以通过点击该消息实现抢红包,所以可以作为本实施例中的目标文本控件,即Text view,而包含有红包信息的页面即可作为关键页面。View代表了用户界面组件的一块可绘制的空间块。每一个View在屏幕上占据一个长方形区域。在这个区域内,这个View对象负责图形绘制和事件处理。
终端6的显示页面通常是通过Activity进行呈现的,我们可以将一个显示页面视为一个Activity,但布局相同的两个页面基本都是通过同一个Activity进行呈现的。在本实施例中,用于呈现红包信息页面的Activity即为目标Activity。正常情况下,如果用户自己触控实现抢红包操作,则用户开启微信,且终端6接收到红包消息之后,由处理器61控制View Root Impl对目标Activity进行测量,布局,绘制,最后将处理完成的目标Activity进行展示。展示目标Activity的过程,实际也就是显示红包消息页面的过程。对于用户而言,只有将红包消息页面显示在其眼前之后,其才能知晓终端6接收到了红包,可以进行相应的抢红包操作。
但是,本实施例提供的终端6并不需要等到View Root Impl将包含红包消息的关键页面处理显示出来,也即,处理器61不需要View Root Impl将目标Activity处理完成,而是在View Root Impl对目标Activity进行处理的过程中,就可以通过System UI进程在View Root Impl中检测到红包消息来临。
在本实施例的一个示例当中,处理器61控制System UI进程,在View Root Impl中对目标应用的各活动窗口进行遍历查找,确定是否存在包含有目标Text view的活动窗口,如果存在,则处理器61判断该活动窗口为目标活动窗口,也即当前目标应用存在需要通过目标活动窗口来呈现的关键页面。以微信抢红包为例:当处理器61控制System UI进程监测到微信里面出现了需要通过目标活动窗口呈现的关键页面时,就说明当前有红包消息到达,可以执行抢红包的触控操作。应当理解的是,此时红包消息页面尚未呈现出来,因为呈现红包消息的关键活动窗口还在接受View Root Impl进行处理。站在用户角度来说,因为用户是依靠视觉判定是否接收到红包消息的,所以其当前尚不知道接收到红包消息。
在控制系统用户界面进程对目标应用进行监测,并确定目标应用当前存在需要通过目标活动窗口呈现的关键页面后,处理器61可以控制系统用户界面进程调用系统事件对目标活动窗口中的目标文本控件进行模拟触控。
终端6中包括有“事件”,例如长按事件、短按事件、移动事件等。用户对终端6进行触控,实际上是希望通过自己的触控使得终端6的处理器61完成自己期望的某种处理。例如,在图3当中,用户期望通过长按桌面图标31从而控制终端6显示对该图标关联应用程序的卸载选项。但不同的用户通常有不同的使用习惯,因此,尽管是为了实现同样的触控目的,可是不同用户的长按时间、长按力度可能都不相同,例如,有的用户可能会使用F1的按压力度长按3s,而有的用户习惯使用F2的按压力度长按3.5s。但是无论是哪一种触控,处理器61最终都可以识别出用户可能希望卸载图标31所对应的应用程序,因此,当前需要根据用户长按动作触发对应用程序的卸载流程。
那为什么不同的长按方式都能够触发相同的处理器61处理流程呢?这主要是由于处理器61并不是直接根据用户的触控操作来触发新的处理流程,而是先对用户的触控操作进行识别,确定用户的触控操是否满足长按操作的条件,如果满足条件,则将用户的触控动作识别长按动作,然后调用系统的长按事件来触发卸载流程。也就是说,无论用户以何种方式进行长按,但最终触发卸载流程的其实都是系统的长按事件。
因此,在本实施例中,处理器61可以在关键页面尚未显示出来之前,就通过控制系统用户界面进程确定当前需要对目标活动窗口中的目标Text view进行触控操作,然后通过控制用户界面进程直接调用系统事件对目标Text view进行“触控操作”。这种“触控操作”和用户真实的触控操作相比,不需要接收用户操作以及识别用户触控操作的过程,我们可以将这种控制系统用户界面进程直接调用系统事件所实现的触控操作称为“模拟触控”。
下面对处理器61控制用户界面进程直接调用系统事件对目标Text view进行触控操作的过程进行介绍:
在终端6中,用户只能对当前正在处于前台显示的页面进行操作,而在后台运行的页面并不会将用户当前的操作识别为针对自己的。例如,用户当前正通过手机与自己的微信好友A聊天,但同时在手机后台也还在运行着用户向好友B发送电子邮件的邮件编辑页面。用户通过输入法输入信息的时候,手机只会将用户的输入信息认定为针对微信好友A的,而不会误认为用户当前输入的信息是为了编辑电子邮件。这主要是由于只有处于激活状态的活动窗口才能与用户进行交互,才能接受用户操作。用户界面进程直接调用系统事件进行触控操作也是一样,只有包含有目标Text view的目标活动窗口当前是处于激活状态时,系统事件才能完成对目标Text view的触控。所以,在调用系统事件之前,处理器61应当先控制系统用户界面进程启动目标活动窗口。
本实施例所指的触控操作但不限于包括长按、短按、滑动等。虽然在本实施例中仅说明了通过短按点击实现抢红包的场景,但是,本领域技术人员应当明白,如果有需要,调用系统长按或者移动等其他事件来对用户另外一些触控操作进行模拟,也是可行的。
本实施例提供的终端,可以从View Root Impl中查找到目标应用的目标活动窗口,并调用系统事件对目标活动窗口中的目标Text view进行模拟触控,代替用户完成触控操作,避免用户因为不方便对终端进行操作而错失相应服务的问题。同时,由于终端通过用户界面进程确定存在关键页面时,关键页面尚未显示出来,所以,本实施例提供的文本控件模拟触控方法能够比用户的触控操作更早完成,为用户争取更多获取服务的几率。
更进一步的,由于处理器对目标Text view的触控操作可以全部通过用户界面进程完成,不需要跨进程,所以能够减少跨进程所占用的时间,提升终端实现模拟触控的效率,为用户提供更好的使用体验。
第四实施例:
本实施例继续对本发明所提供的可以实现文本控件模拟触控方案的终端进行介绍,请参见图7:
终端7包括处理器71、存储器72以及用户输入单元73,存储器72与用户输入单元73均通过通信总线(图7中未示出)同处理器71实现通信,存储器72中存储有实现文本控件模拟触控的计算机程序,这些计算机程序可供处理器71读取并执行。首先,对终端7通过跨进程调用的方式实现文本控件模拟触控的方案进行简单介绍:
为了帮助视力、听力或触控操作能力有障碍人群使用终端,体验到终端带来的便利与乐趣,在终端7的系统中新增设计了辅助功能Accessibility。处理器71通过控制System UI进程和辅助功能的共同合作,也可以实现对文本控件的模拟触控,但由于辅助功能是一种服务service,属于系统框架进程Frame work,所以处理器71在通过System UI进程监测到目标应用当前存在需要通过目标活动窗口呈现的关键页面时,System UI进程需要与Frame work进程建立连接,通过跨进程的方式调用Frame work进程中的辅助功能,并且通过函数on Accessibility Event将系统事件(长按、短按等)包装成辅助功能可以识别的类型,然后完成对目标活动窗口中目标Text view的模拟触控。下面以安卓智能手机借助辅助功能实现自动抢红包为例:
在智能手机开机的时候,系统会进行开机广播,智能手机根据开机广播打开辅助服务中的抢红包开关,让辅助服务支持被调用。当微信、QQ、支付宝、陌陌等目标应用接收到红包消息后,System UI进程可以通过对View Root Impl中正在接受处理的各目标应用的活动窗口进行查询,判断即将进行展示的各活动窗口中是否包含有目标Text view,如果存在有活动窗口中包括目标Text view,则判定该活动窗口为目标活动窗口;如果不存在包括目标Text view的活动窗口,则说明目标应用没有接收到红包消息。
假定经System UI进程查询,确定目标应用A当前存在有包含目标活动窗口。为了跨进程调用服务服务,System UI进程需要先与Frame work进程建立连接,然后才能触发辅助功能的使用on Accessibility Event函数将系统短按事件进行包装,然后对目标应用A的目标活动窗口中的目标Text view的模拟点击,模拟用户点击图4中文本控件“抢红包”的触控动作。
下面对终端7不跨进程实现的文本控件模拟触控方案进行介绍:
首先,处理器71确定当前需要控制系统用户界面进程对目标应用进行监测。处理器71确定需要控制系统用户界面进行对目标应用进行监测说明用户需要终端7在目标应用中存在关键页面的时候,代替自己完成对目标Text view的模拟触控。在本实施例的一种示例当中,如果用户确定自己在最近一段时间不方便对目标应用进行触控操作,例如,晚上10点的时候,用户知道自己要睡觉了,所以在后面一段时间内,自己不方便对终端7进行操作,则其可以向终端7下发启动指令,让处理器71根据自己下发的启动指令开启模拟触控功能。
在本实施例的另外一种示例当中,处理器71会自动判断是否需要开启模拟触控功能,处理器71可以根据当前的时间或当前与用户之间的距离,或者同时根据时间与距离确定是否需要帮助用户进行模拟触控。例如,根据用户的使用习惯,处理器71确定用户当前时刻可能已经进入了睡眠状态,则自动开启模拟触控功能,控制系统用户界面进程对目标应用进行监测。又例如,用户带着穿戴式设备(例如智能腕表)离开了终端7附近,处理器71通过与智能腕表之间的交互确定用户当前远离自己,无法对自己的应用进行操作,所以处理器71可以根据评判结果自动开启模拟触控功能。
在控制系统用户界面进程在进行监测之前,处理器71应当知晓需要控制系统用户界面进程对哪些目标应用进行监测,同时要确定各目标应用所对应的目标Text view是什么。毫无疑义的是,不同目标应用可以拥有不同的目标Text view,例如,用户需要终端7通过系统用户界面进程监测应用A,主要是为了让终端7实现自动抢红包,而对应用B进行监测主要是为了让终端7帮助自己抢购最热门的推送商品,则对应于目标应用A的目标Textview可能是“抢红包”,而对应与目标应用B的目标Text view可能是“抢购最热商品”。另外,即使都是为了抢红包,目标应用C的目标Text view可能有是“立即抢”。在本市实施例的一种示例当中,终端7的存储器72中存储有监测表,在监测表中存储了需要被监测的各目标应用的唯一标识(例如,名称、应用ID等)以及各目标应用对应的目标Text view的内容,监测表可以参照表1所示。
监测表中的内容可以由用户通过用户输入单元73向终端7输入设置指令从而向终端7指定监测表中的内容,若由用户指定,则处理器71通过用户输入单元73接收到的设置指令确定需要监测的目标应用以及各目标应用所对应的目标Text View之后,可以先将监测表存储到本的存储器72当中。另外,监测表也可以由程序人员设置完成,然后通过服务器同步给终端7,并存储在存储器72。
在对目标应用进行监测时,处理器71可以控制系统用户界面进程对正在ViewRoot Impl中接受处理的目标活动窗口进行查询,从父布局进行遍历,遇到Text View就进行判断,是否为目标Text View,若是,则判定包含有该目标Text View的活动窗口为目标活动窗口,若否,则继续遍历,遇到View Group(控件群)就递归,直至寻找到对应的目标TextView或对View Root Impl中所有活动窗口遍历结束为止。
若处理器71控制系统用户界面进程确定View Root Impl当前正在处理的活动窗口不是目标活动窗口,但随着View Root Impl对该活动窗口的处理结束,其可能又要对另外的活动窗口进行处理,因此,处理器71可以控制系统用户界面进程继续对View RootImpl当前正在处理的活动窗口进行判断。若处理器71通过系统用户界面进程确定ViewRoot Impl当前正在处理的活动窗口是目标活动窗口,控制系统用户界面进程调用系统事件对目标活动窗口中的目标文本控件进行模拟触控。
为了实现对Text View的模拟触控,处理器71先启动目标活动窗口,让目标活动窗口处于激活状态。具体的,处理器71可以将目标互动窗口移动到其所在Task(任务栈)的顶部,并将该Task移动到对所述Task进行管理的Stack(活动窗口堆栈)顶部,从而,让目标活动窗口处于Stack的顶部。然后控制系统用户界面进程调用系统事件对该目标活动窗口中的目标Text View进行处理。应当理解的是,当目标活动窗口处于激活状态时,处理器71可以控制显示单元(图7未示出)对目标活动窗口对应的关键页面进行显示,也可以直接在黑屏状态下就完成模拟触控。
本实施例提供的终端,可以不跨进程完成对文本控件的模拟触控,相对于需要跨进程,借助系统辅助服务实现的模拟触控,能够节省跨进程调用所需时间,更快速地完成模拟触控。特别是针对抢红包、抢购热门商品等需要模拟触控来实现的事情来说,不跨进程即完成所有处理,能够为用户获得更多机会,极大地提升用户体验。
第五实施例:
本实施例将结合具体示例对前述各实施例中的终端和各实施例中的文本控件模拟触控方法进行介绍,在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(Personal Digital Assistant,PDA)、便捷式媒体播放器(Portable Media Player,PMP)、导航装置、可穿戴设备、智能手环、计步器等移动终端,以及诸如数字TV、台式计算机等固定终端。
后续描述中将以移动终端为例进行说明,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。
请参阅图8,其为实现本发明各个实施例的一种移动终端的硬件结构示意图,该移动终端800可以包括:RF(Radio Frequency,射频)单元801、WiFi模块802、音频输出单元803、显示单元804、用户输入单元805、存储器806、处理器807、以及电源808等部件。本领域技术人员可以理解,图8中示出的移动终端结构并不构成对移动终端的限定,移动终端可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。下面结合图8对移动终端的各个部件进行具体的介绍:
射频单元801可用于收发信息或通话过程中,信号的接收和发送,具体的,将基站的下行信息接收后,给处理器807处理;另外,将上行的数据发送给基站。通常,射频单元801包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元801还可以通过无线通信与网络和其他设备通信。
WiFi属于短距离无线传输技术,移动终端通过WiFi模块802可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图8示出了WiFi模块802,但是可以理解的是,其并不属于移动终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
音频输出单元803可以在移动终端800处于呼叫信号接收模式、通话模式、记录模式、语音识别模式、广播接收模式等等模式下时,将射频单元801或WiFi模块802接收的或者在存储器806中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元803还可以提供与移动终端800执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元803可以包括扬声器、蜂鸣器等等。
显示单元804用于显示由用户输入的信息或提供给用户的信息。显示单元804可包括显示面板8041,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板8041。
用户输入单元805可用于接收输入的数字或字符信息,以及产生与移动终端的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元805可包括触控面板8051以及其他输入设备8052。触控面板8051,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板8051上或在触控面板8051附近的操作),并根据预先设定的程式驱动相应的连接装置。触控面板8051可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器807,并能接收处理器807发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板8051。除了触控面板8051,用户输入单元805还可以包括其他输入设备8052。具体地,其他输入设备8052可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种,具体此处不做限定。
进一步的,触控面板8051可覆盖显示面板8041,当触控面板8051检测到在其上或附近的触摸操作后,传送给处理器807以确定触摸事件的类型,随后处理器807根据触摸事件的类型在显示面板8041上提供相应的视觉输出。虽然在图1中,触控面板8051与显示面板8041是作为两个独立的部件来实现移动终端的输入和输出功能,但是在某些实施例中,可以将触控面板8051与显示面板8041集成而实现移动终端的输入和输出功能,具体此处不做限定。
存储器806可用于存储软件程序以及各种数据。存储器806可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器806可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器807是移动终端的控制中心,利用各种接口和线路连接整个移动终端的各个部分,通过运行或执行存储在存储器806内的软件程序和/或模块,以及调用存储在存储器806内的数据,执行移动终端的各种功能和处理数据,从而对移动终端进行整体监控。处理器807可包括一个或多个处理单元;优选的,处理器807可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器807中。
移动终端800还可以包括给各个部件供电的电源808(比如电池),优选的,电源808可以通过电源管理系统与处理器807逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管图8未示出,移动终端800还可以包括蓝牙模块等,在此不再赘述。
在本实施例当中,用户可以通过用户输入单元805向移动终端800发送设置指令,指示移动终端800需要被监测的目标应用,同时设置与各目标应用对应的目标Text view,进而由处理器807形成监测表存储到存储器806当中。当然监测表还有由服务器同步给移动终端800,具体的,可以由移动终端800的RF(Radio Frequency,射频)单元801或WiFi模块802接收服务器发送的监测表,并由处理器807控制存储器806进行存储。
在存储器806当中还存储有文本控件模拟触控程序,当用户通过用户输入单元805输入启动指令,指示移动终端800替代自己自动进行模拟触控时,处理器807从存储器806中读取文本控件模拟触控程序,并进行编译,执行。可选地,处理器807控制系统用户界面进程System UI对目标应用进行监测以确定目标应用当前存在需要通过目标活动窗口Activity呈现的关键页面,然后控制系统用户界面进程调用系统事件对目标活动窗口中的目标文本控件进行模拟触控。
当目标Text view的模拟触控成功,且处理器807确定用户方便控制移动终端800的时候,处理器807还可以控制音频输出单元803输出提示音,并控制显示单元804向用户显示模拟触控成功的信息,具体的,以自动抢红包为例,移动终端800的处理器807可以控制显示单元804向用户示出如图9所示的提示界面,让用户不需要进入相关目标应用中进行查询即可获知到在自己未操控终端期间,是否抢到了红包。
本实施例提供的移动终端,不仅能够在不跨进程的情况下,快速地完成对目标Text view的模拟触控,节省跨进程所带来的时间开销,而且,还会在模拟触控成功之后,向用户发出用户听觉或视觉可感知的提示信息,以便让用户直观了解到移动终端的自动模拟触控成果,为用户带来更好的用户体验。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
Claims (10)
1.一种文本控件模拟触控方法,其特征在于,所述文本控件模拟触控方法通过系统用户界面进程实现,所述方法包括:
控制系统用户界面进程System UI对目标应用进行监测以确定所述目标应用当前存在需要通过目标活动窗口Activity呈现的关键页面,所述目标活动窗口中包含目标文本控件Text view;
控制所述系统用户界面进程调用系统事件对所述目标活动窗口中的目标文本控件进行模拟触控。
2.如权利要求1所述的文本控件模拟触控方法,其特征在于,所述控制系统用户界面进程System UI对目标应用进行监测之前,还包括:
根据用户的启动指令确定当前需要控制所述系统用户界面进程对所述目标应用进行监测;
或,
根据当前时间和/或用户同终端的距离确定当前需要控制所述系统用户界面进程对所述目标应用进行监测。
3.如权利要求1所述的文本控件模拟触控方法,其特征在于,所述控制系统用户界面进程System UI对目标应用进行监测以确定所述目标应用当前存在需要通过目标活动窗口Activity呈现的关键页面包括:
所述控制系统用户界面进程查询控件树管理者接口View Root Impl当前正在处理的所述目标应用的活动窗口;
所述控制系统用户界面进程判断所述活动窗口中是否包含有所述目标文本控件;
若是,所述控制系统用户界面进程确定所述目标应用当前存在需要通过目标活动窗口呈现的关键页面。
4.如权利要求1所述的文本控件模拟触控方法,其特征在于,所述控制所述系统用户界面进程调用系统事件对所述目标活动窗口中的目标文本控件进行模拟触控包括:
控制所述系统用户界面进程启动所述目标的活动窗口;
控制所述系统用户界面进程调用系统短按事件对所述目标活动窗口中的目标文本控件进行模拟点击。
5.如权利要求1-4任一项所述的文本控件模拟触控方法,其特征在于,所述控制系统用户界面进程对目标应用进行监测之前,还包括:确定需要由所述系统用户界面进程进行监测的目标应用以及与所述目标应用对应的目标文本控件的内容。
6.如权利要求5所述的文本控件模拟触控方法,其特征在于,所述确定需要由所述系统用户界面进程进行监测的目标应用以及与所述目标应用对应的目标文本控件的内容包括:
根据用户的设置指令确定与各所述目标应用对应的目标文本控件的内容;
所述确定需要由所述系统用户界面进程进行监测的目标应用以及与所述目标应用对应的目标文本控件的内容之后,还包括:
将各所述目标文本控件的内容与各所述目标应用的名称进行关存储,以供后续监测使用。
7.一种终端,其特征在于,所述终端包括处理器、存储器及通信总线;
控制系统用户界面进程对目标应用进行监测以确定所述目标应用当前存在需要通过目标活动窗口呈现的关键页面,所述目标活动窗口中包含目标文本控件;
控制所述系统用户界面进程调用系统事件对所述目标活动窗口中的目标文本控件进行模拟触控。
8.如权利要求7所述的终端,其特征在于,所述处理器通过控制所述系统用户界面进程启动所述目标的活动窗口,并控制所述系统用户界面进程调用系统短按事件对所述目标活动窗口中的目标文本控件进行模拟点击。
9.如权利要求7或8所述的终端,其特征在于,所述控制系统用户界面进程对目标应用进行监测之前,所述处理器还用于执行所述文本控件模拟触控程序,以实现以下步骤:
确定需要由所述系统用户界面进程进行监测的目标应用以及与所述目标应用对应的目标文本控件的内容。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现以下步骤:
控制系统用户界面进程对目标应用进行监测以确定所述目标应用当前存在需要通过目标活动窗口呈现的关键页面,所述目标活动窗口中包含目标文本控件;
控制所述系统用户界面进程调用系统事件对所述目标活动窗口中的目标文本控件进行模拟触控。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710481749.6A CN107368298B (zh) | 2017-06-22 | 2017-06-22 | 一种文本控件模拟触控方法、终端及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710481749.6A CN107368298B (zh) | 2017-06-22 | 2017-06-22 | 一种文本控件模拟触控方法、终端及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107368298A CN107368298A (zh) | 2017-11-21 |
CN107368298B true CN107368298B (zh) | 2020-09-11 |
Family
ID=60305525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710481749.6A Active CN107368298B (zh) | 2017-06-22 | 2017-06-22 | 一种文本控件模拟触控方法、终端及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107368298B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108595240B (zh) * | 2018-04-20 | 2021-12-14 | 北京天融信网络安全技术有限公司 | 屏幕快照的抓取方法、装置、设备及可读存储介质 |
CN109284157A (zh) * | 2018-08-13 | 2019-01-29 | 北京城市网邻信息技术有限公司 | 自动关闭弹框的方法、装置、设备及计算机可读存储介质 |
CN110881002B (zh) * | 2018-09-06 | 2022-06-21 | Oppo广东移动通信有限公司 | 一种电子红包监控方法、装置及终端设备 |
CN110287381B (zh) * | 2019-06-26 | 2024-02-09 | 努比亚技术有限公司 | 页面控件节点的查找方法、终端及计算机可读存储介质 |
CN110750284B (zh) * | 2019-10-15 | 2023-03-28 | Oppo(重庆)智能科技有限公司 | 一种应用快速启动方法、终端及计算机可读存储介质 |
CN114463730B (zh) * | 2021-07-15 | 2023-07-14 | 荣耀终端有限公司 | 一种页面识别方法及终端设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104142793A (zh) * | 2014-07-26 | 2014-11-12 | 珠海市君天电子科技有限公司 | 一种模拟点击终端控件的方法及装置 |
CN105630499A (zh) * | 2015-12-24 | 2016-06-01 | 北京奇虎科技有限公司 | 信息处理方法及装置 |
CN106020851A (zh) * | 2016-06-27 | 2016-10-12 | 乐视控股(北京)有限公司 | 一种移动终端的控制方法及装置 |
CN106326074A (zh) * | 2016-09-12 | 2017-01-11 | 广东欧珀移动通信有限公司 | 处理器运行参数的调整方法及移动终端 |
CN106412858A (zh) * | 2016-10-26 | 2017-02-15 | 深圳市金立通信设备有限公司 | 一种抢红包的方法及终端 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105335136B (zh) * | 2014-07-16 | 2019-08-09 | 阿里巴巴集团控股有限公司 | 智能设备的控制方法及装置 |
-
2017
- 2017-06-22 CN CN201710481749.6A patent/CN107368298B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104142793A (zh) * | 2014-07-26 | 2014-11-12 | 珠海市君天电子科技有限公司 | 一种模拟点击终端控件的方法及装置 |
CN105630499A (zh) * | 2015-12-24 | 2016-06-01 | 北京奇虎科技有限公司 | 信息处理方法及装置 |
CN106020851A (zh) * | 2016-06-27 | 2016-10-12 | 乐视控股(北京)有限公司 | 一种移动终端的控制方法及装置 |
CN106326074A (zh) * | 2016-09-12 | 2017-01-11 | 广东欧珀移动通信有限公司 | 处理器运行参数的调整方法及移动终端 |
CN106412858A (zh) * | 2016-10-26 | 2017-02-15 | 深圳市金立通信设备有限公司 | 一种抢红包的方法及终端 |
Also Published As
Publication number | Publication date |
---|---|
CN107368298A (zh) | 2017-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107368298B (zh) | 一种文本控件模拟触控方法、终端及计算机可读存储介质 | |
US10834237B2 (en) | Method, apparatus, and storage medium for controlling cooperation of multiple intelligent devices with social application platform | |
US11449955B2 (en) | Information processing method and apparatus | |
CN104518953B (zh) | 删除消息的方法、即时通信终端及系统 | |
CN112637039B (zh) | 一种信息处理方法、装置及存储介质 | |
CN105022552B (zh) | 一种显示消息列表的方法和装置 | |
CN108039963B (zh) | 一种容器配置方法、装置及存储介质 | |
CN105302452B (zh) | 一种基于手势交互的操作方法及装置 | |
CN106254910B (zh) | 一种记录图像的方法和装置 | |
CN106293901B (zh) | 一种终端应用的进程管理方法及装置 | |
KR101813437B1 (ko) | 스트리밍 미디어 데이터에 대한 통계치를 수집하기 위한 방법 및 시스템과, 관련 장치 | |
CN110673770B (zh) | 消息展示方法及终端设备 | |
WO2014194713A1 (en) | Method,apparatus and computer readable storage medium for displaying video preview picture | |
CN106951143B (zh) | 隐藏应用图标的方法及装置 | |
CN106375179A (zh) | 一种显示即时通信消息的方法和装置 | |
CN108900407B (zh) | 会话记录的管理方法、装置及存储介质 | |
CN106371749A (zh) | 一种终端控制的方法和装置 | |
CN106156097B (zh) | 一种浏览器输入记录的处理方法及装置 | |
CN104660769B (zh) | 一种添加联系人信息的方法、装置和系统 | |
EP3105912B1 (en) | Application-based service providing method and system | |
CN113050863A (zh) | 页面切换方法、装置、存储介质及电子设备 | |
CN111190515A (zh) | 快捷面板操作方法、设备及可读存储介质 | |
CN109728918B (zh) | 虚拟物品发送方法、虚拟物品接收方法、装置及存储介质 | |
CN111124585A (zh) | 快捷面板的操作方法、设备及可读存储介质 | |
CN115065609A (zh) | B端SaaS系统混合部署方法及系统 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |