CN106909262A - 一种数据处理方法和装置 - Google Patents

一种数据处理方法和装置 Download PDF

Info

Publication number
CN106909262A
CN106909262A CN201510971892.4A CN201510971892A CN106909262A CN 106909262 A CN106909262 A CN 106909262A CN 201510971892 A CN201510971892 A CN 201510971892A CN 106909262 A CN106909262 A CN 106909262A
Authority
CN
China
Prior art keywords
view
feature information
feature
node
current application
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
CN201510971892.4A
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.)
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
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 Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201510971892.4A priority Critical patent/CN106909262A/zh
Publication of CN106909262A publication Critical patent/CN106909262A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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]
    • G06F3/0481Interaction 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • 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]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Library & Information Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明实施例提供了一种数据处理方法和装置,所述的方法包括:依据对当前应用的活动变化事件的监听,获取当前应用的视图树;遍历所述视图树中各节点,依据各节点对应视图对象的视图类型提取视图特征信息;依据所述视图特征信息对所述视图对象进行识别,依据识别结果进行处理。用户在使用智能设备时,可以依据展示的视图对象执行相应的处理操作,从而灵活的对应用中的信息进行处理。

Description

一种数据处理方法和装置
技术领域
本发明涉及通信技术领域,特别是涉及一种数据处理方法和一种数据处理装置。
背景技术
随着科技的发展,越来越多的用户使用智能终端,智能终端也提供了越来越多样的功能。用户在使用移动终端时通常会安装各种应用程序执行不同的操作,例如安装播放器应用观看音视频,安装购物应用进行网上购物,安装游戏应用玩游戏等。
应用中往往包含多种功能,相应展示不同的数据信息,但是这些数据信息仅能按照应用提供的方式进行处理,有时用户可能需要屏蔽某些显示内容,或者突出显示某些内容均无法执行,显示非常不灵活。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种数据处理方法和相应的一种数据处理装置。
依据本发明的一个方面,提供了一种数据处理方法,包括:
依据对当前应用的活动变化事件的监听,获取当前应用的视图树;
遍历所述视图树中各节点,依据各节点对应视图对象的视图类型提取视图特征信息;
依据所述视图特征信息对所述视图对象进行识别,依据识别结果进行处理。
可选的,依据对当前应用的活动变化事件的监听,获取当前应用的视图树,包括:
监听所述当前应用的活动变化事件;
依据所述活动变化事件确定所述当前应用的界面布局发生变化时,获取所述当前应用的视图树。
可选的,监听所述当前应用的活动变化事件,包括:
监听所述当前应用的视图树变化事件和生命周期事件。
可选的,遍历所述视图树中各节点,依据各节点对应视图对象的视图类型提取视图特征信息,包括:
从所述视图树的根节点开始遍历各节点;
针对每个节点,获取所述节点对应视图对象的视图类型;
依据视图类型提取所述视图对象的视图特征信息。
可选的,当所述视图类型为第一类型时,所述视图对象为原生控件;当所述视图类型为第二类型时,所述视图对象为浏览器控件;当所述视图类型为第三类型时,所述视图对象为通用视图。
可选的,依据视图类型提取所述视图对象的视图特征信息,包括:
针对原生控件,提取所述原生控件对应的第一代码特征,将所述第一代码特征作为所述原生控件的视图特征信息。
可选的,依据视图类型提取所述视图对象的视图特征信息,包括:
针对浏览器控件,分别提取所述浏览控件对应的第一代码特征和第二代码特征,将所述第一代码特征和第二代码特征作为所述浏览器控件的视图特征信息。
可选的,依据视图类型提取所述视图对象的视图特征信息,包括:
针对通用视图,提取所述通用视图对应第三代码特征,将所述第三代码特征作为所述通用视图的视图特征信息。
可选的,依据所述视图特征信息对所述视图对象进行识别,依据识别结果进行处理,包括:
采用预置特征库对所述视图特征信息进行特征匹配;
通过特征匹配识别为第一目标对象时,对所述视图特征信息对应视图对象进行拦截。
可选的,还包括:
通过特征匹配识别为第二目标对象时,启动子窗口,在所述子窗口中对所述视图特征信息对应视图对象进行显示。
可选的,对所述第一目标对象进行拦截,包括:
以所述视图特征信息对应视图对象为起点,自下而上查找所述视图树,确定所述视图对象对应父窗口,对所述父窗口进行拦截。
可选的,还包括:
从云服务器获取目标特征,将所述目标特征添加到所述预置特征库中。
根据本发明实施例的另一个方面,提供了一种数据处理装置,包括:
监听获取模块,用于依据对当前应用的活动变化事件的监听,获取当前应用的视图树;
遍历提取模块,用于遍历所述视图树中各节点,依据各节点对应视图对象的视图类型提取视图特征信息;
识别处理模块,用于依据所述视图特征信息对所述视图对象进行识别,依据识别结果进行处理。
可选的,所述监听获取模块,包括:
监听子模块,用于监听所述当前应用的活动变化事件;
视图树获取子模块,用于依据所述活动变化事件确定所述当前应用的界面布局发生变化时,获取所述当前应用的视图树。
可选的,所述监听子模块,用于监听所述当前应用的视图树变化事件和生命周期事件。
可选的,所述遍历提取模块,包括:
遍历子模块,用于从所述视图树的根节点开始遍历各节点;
类型获取子模块,用于针对每个节点,获取所述节点对应视图对象的视图类型;
特征提取子模块,用于依据视图类型提取所述视图对象的视图特征信息。
可选的,当所述视图类型为第一类型时,所述视图对象为原生控件;当所述视图类型为第二类型时,所述视图对象为浏览器控件;当所述视图类型为第三类型时,所述视图对象为通用视图。
可选的,所述特征提取子模块,包括:
第一提取单元,用于针对原生控件,提取所述原生控件对应的第一代码特征,将所述第一代码特征作为所述原生控件的视图特征信息。
可选的,所述特征提取子模块,包括:
第二提取单元,用于针对浏览器控件,分别提取所述浏览控件对应的第一代码特征和第二代码特征,将所述第一代码特征和第二代码特征作为所述浏览器控件的视图特征信息。
可选的,所述特征提取子模块,包括:
第三提取单元,用于针对通用视图,提取所述通用视图对应第三代码特征,将所述第三代码特征作为所述通用视图的视图特征信息。
可选的,所述识别处理模块,包括:
匹配子模块,用于采用预置特征库对所述视图特征信息进行特征匹配;
拦截子模块,用于通过特征匹配识别为第一目标对象时,对所述视图特征信息对应视图对象进行拦截。
可选的,所述识别处理模块,还包括:
显示子模块,用于通过特征匹配识别为第二目标对象时,启动子窗口,在所述子窗口中对所述视图特征信息对应视图对象进行显示。
可选的,所述拦截子模块,用于以所述视图特征信息对应视图对象为起点,自下而上查找所述视图树,确定所述视图对象对应父窗口,对所述父窗口进行拦截。
可选的,还包括:
特征库处理模块,用于从云服务器获取目标特征,将所述目标特征添加到所述预置特征库中。
本发明实施例通过依据对当前应用的活动变化事件的监听,获取当前应用的视图树;遍历视图树中各节点,依据各节点对应视图对象的视图类型提取视图特征信息;依据视图特征信息对视图对象进行识别,依据识别结果进行处理;使得用户在使用智能设备时,可以依据展示的视图对象执行相应的处理操作,从而灵活的对应用中的信息进行处理。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的数据处理方法步骤流程图;
图2示出了根据本发明另一个实施例的数据处理方法步骤流程图;
图3示出了本发明另一个实施例中提取视图特征信息的步骤流程图;
图4示出了根据本发明一个实施例的数据处理装置的结构框图;以及
图5示出了根据本发明另一个实施例的数据处理装置的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本实施例中,智能设备指的是具有多媒体功能的计算机设备,包括智能移动设备如智能手机、平板电脑等、智能电视等各种设备,该设备可以采用Android、windows、IOS等各种操作系统。
实施例一
参照图1,示出了根据本发明一个实施例的数据处理方法步骤流程图,具体可以包括如下步骤:
步骤102,依据对当前应用的活动变化事件的监听,获取当前应用的视图树。
用户在智能设备中可以运行应用执行所需的操作,应用启动后会显示相应的图形用户界面(Graphical User Interface,GUI)。基于GUI可以对当前应用的活动变化事件的监听,活动变化事件即当前应用中信息的变化事件等,并且获取当前应用的视图树ViewTree,
其中,GUI是应用程序开发不可或缺的一部分,其不仅能为用户提供输入,还能够根据(用户)执行的动作,提供相应的反馈。图形用户界面的基本组件包括:视图View以及视图组ViewGroup等,其中,ViewGroup作为容器,可以包含一组View,并且ViewGroup其本身就是View的扩展,而各种不同的窗口部件Widgets如文本视图TextView,按钮Button等也是View的扩展,只不过是放在各种布局Layout里,比如LinearLayout,RelativeLayout。其中,Layout可以看作是ViewGroup的子类。因此,对于应用的GUI,将一个Layout里的各种Views和ViewGroups可以构成树形结构即ViewTree。
即应用的图形用户界面可以采用ViewTree表示相应的视图结构,当应用中显示内容变化时,相应ViewTree中节点以及节点信息也会发生变化。
步骤104,遍历视图树中各节点,依据各节点对应视图对象的视图类型提取视图特征信息。
为了确定ViewTree中各节点的信息以及变化,可以对视图树进行遍历,即自上而下由根节点开始遍历视图树的各节点,依据各节点的节点信息确定该节点对应视图对象的视图类型,然后依据视图类型提取相应的特征信息。
其中,在视图树中包含有一个根视图(或称根节点),即根据Activity中的Window生成一个DevorView,将DevorView作为Root View(根视图),也叫根节点,在根视图的下边还包括有一个或多个View或ViewGroup,作为子节点。
步骤106,依据视图特征信息对视图对象进行识别,依据识别结果进行处理。
本实施例中,为了灵活的对应用中的信息进行显示,便于用户操作,可以按照视图特征对视图对象进行识别,如执行特征匹配等操作,又如确定该视图对象对应的类型、内容等,从而基于识别结果执行相应的操作,例如识别出该视图对象为广告,则可以屏蔽广告,又如识别出视图对象为视频,可以启动悬浮窗口进行显示,从而用户还可以启动其他应用执行相应的操作,从而便于灵活的基于不停的对象执行不同的操作,便于用户操作。
综上,本发明实施例通过依据对当前应用的活动变化事件的监听,获取当前应用的视图树;遍历视图树中各节点,依据各节点对应视图对象的视图类型提取视图特征信息;依据视图特征信息对视图对象进行识别,依据识别结果进行处理;使得用户在使用智能设备时,可以依据展示的视图对象执行相应的处理操作,从而灵活的对应用中的信息进行处理。
实施例二
参照图2,示出了根据本发明另一个实施例的数据处理方法的步骤流程图,具体可以包括如下步骤:
步骤202,监听当前应用的活动变化事件。
步骤204,依据活动变化事件确定当前应用的界面布局发生变化时,获取当前应用的视图树。
应用运行过程中,采用Activity组件与用户交互,该Activity是一个应用程序组件,是安卓系统应用程序的一个核心组件类型,程序界面展示的实体,用户可以用来交互为了完成某项任务。Activity中所有操作都与用户密切相关,是一个负责与用户交互的组件,可以通过setContentView(View)来显示指定控件。
本实施例中,可以对与Activity组件相关的事件进行监听,包括监听所述当前应用的视图树变化事件和生命周期事件,即监听ViewTree变化事件,同时监听Activity生命周期事件,ViewTree变化事件即应用的显示视图对应的变化,如启动、更换等,Activity生命周期事件即Activity整个运行过程的事件,如包括Resumed(运行)、Paused(暂停)、Stopped(停止)等。
当监听到ViewTree变化,并且Activity生命周期变化时,如应用开始运行,或者应用界面切换等变换过程中,可以依据所述活动变化事件确定所述当前应用的界面布局发生变化,此时获取当前应用的ViewTree,其中ViewTree变化后获取的即变化的ViewTree。动态注册回调接口可以对ViewTree的根节点进行监控,根节点存在一个固定的结构变化监控器ViewTreeObserver,调用监控器的addOnGlobalLayoutListener可以注册回调以监听整个ViewTree的节点变化。
步骤206,从视图树的根节点开始遍历各节点。
步骤208,针对每个节点,获取节点对应视图对象的视图类型。
步骤210,依据视图类型提取视图对象的视图特征信息。
在确定当前视图发生变化且获取ViewTree后,可以从视图树的根节点开始遍历各节点。其中,ViewTree可以采用自上而下的方式进行遍历实现,即应用的GUI中父视图Parent总是最先绘制的,其实才是子视图Children的绘制。例如,将智能设备中屏幕显示GUI为例,将屏幕看作由X,Y,Z轴构成的坐标系,以屏幕的左上角作为零点[0,0,0],X轴向右,Y轴向下沿着屏幕的长度,Z轴延伸出屏幕,在绘制ViewTree时,Views可以沿着Z轴排放。从而在遍历ViewTree时依据其绘制的方式从根节点开始自上而下的遍历。
针对每个节点,依据该节点的节点信息确定对应应用的视图对象,然后获取视图对象的视图类型。然后可以对视图对象的视图类型进行判断,依据不同的视图类型执行不同的提取操作,提取相应的视图特征信息。
本实施例中,视图类型可以包括:原生控件、浏览器控件、通用视图等,对于视图对象的视图特征信息的提取可以包括如下子步骤:
参照图3,示出了本发明另一个实施例中提取视图特征信息的步骤流程图,具体可以包括如下步骤:
子步骤302,判断视图对象的视图类型。
可以对视图类型进行检测,确定视图类型为第一类型,执行子步骤304;确定视图类型为第二类型,执行子步骤308;确定视图类型为第三类型,执行子步骤312。
以Android系统为例,即包含多种控件,其中,基本控件包括:
文本类控件,如TextView、EditText、MultAutoCompletTextView、AutoCompleteTextView、ExtractEditText、CheckedTextView、Chronometer等。按钮类控件如Button、CheckBox、RadioButton、ToggleButton等。缩放按钮控件如ZoomButton、ZoomControls。图片类控件如ImageView、ZoomButton、ImageButton、(ImageSwitcher)、QuickContactBadge等。时间控件如DigitalClock、AnalogClock、TimePicker、DatePicker。进度显示控件ProgressBar、AbsSeekBar、SeekBar、RatingBar。导航控件TabHost、TabWidget。视频媒体控件VideView、MediaController。Dialog对话框控件,如CharacherPickerDialog、AlertDialog、DatePickerDialog、ProgressDialog、TimePickerDialog。
还包括布局类,如布局类:AbsoluteLayout、LinearLayout、RadioGroup、TableLayout、TableRow、RelativeLayout、FrameLayout。需要适配器的布局类:AdapterView、AbsListView、GridView、ListView、AbsSpinner、GallerySpinner。滚动条:HorizontalScrollView、ScrollView等
还有其他类别,如网页类WebView,动画类ViewAimator、ViewFilpper、ViewSwitcher、ImageSwitcher、TextSwitcher,以及KeyboardView,SurfaceView(照相时会使用)GLSurfaceView等。
基于不同的类型会执行不同的特征提取操作,例如ImageView为第一类即原生控件,WebView为第二类即浏览器控件。
步骤304,视图对象为原生控件;
步骤306,针对原生控件,提取原生控件对应的第一代码特征,将第一代码特征作为原生控件的视图特征信息。
确定视图类型为第一类型时,该视图对象为原生控件,可以从该原生控件中提取第一代码特征,作为视图特征信息。例如对于原生控件ImageView,可以提取onclicklistener的代码作为原生控件的视图特征信息;并提取当前应用的onclicklistener代码。
步骤308,视图对象为浏览器控件;
步骤310,针对浏览器控件,分别提取浏览控件对应的第一代码特征和第二代码特征,将第一代码特征和第二代码特征作为浏览器控件的视图特征信息。
确定视图类型为第二类型时,该视图对象为浏览器控件,可以提取该浏览器控件对应的第一代码特征和第二代码特征,例如,对于浏览器控件WebView,可以提取onclicklistener的代码和webviewclient代码作为浏览器控件的视图特征信息。
步骤312,视图对象为通用视图。
步骤314,针对通用视图,提取通用视图对应第三代码特征,将第三代码特征作为通用视图的视图特征信息。
确定视图类型为第三类型时,该视图对象为通用视图,针对通用视图可以提取第三代码特征作为视图特征信息。例如,对于通用视图View,提取该View的fullclassname代码作为通用视图的视图特征信息。
从而基于不同的视图类型,提取不同的特征代码,以便通过特征代码确定该视图对象,从而灵活的进行显示。
步骤212,采用预置特征库对视图特征信息进行特征匹配。
本实施例中,预先确定各视图对象的特征生成特征库,从而依据预置特征库可以执行特征匹配,确定该试图对象的特征。因此在获取到视图对象的视图特征信息后,可以将视图特征信息传入native层进行比对,即将视图特征信息传入本地框架层与预置特征库进行特征匹配。
以广告为例,广告通常需要实现插件点击后跳转到广告信息所对应的展示页,因此对于视图对象依据其代码特征可以匹配点击、跳转等事件,从而分析出该视图对象符合广告的特征,后续可以执行拦截操作。
又如,对于视频、动画等播放,通常可以通过点击控制播放,因此对其视图对象的代码特征进行匹配时,可以匹配出点击、控制事件,从而分析出该视图对象符合多媒体特征,从而可以通过启动悬浮窗口等方式进行播放。
本实施例中,可以预先收集不同视图对象的特征作为目标特征,从而生成相应的特征策略等,然后可以从云服务器获取目标特征,将目标特征添加到预置特征库中,从而能够实时对预置特征库中目标特征进行更新,匹配特征处理策略,从而更加灵活的对视图对象进行处理。
通过特征匹配识别为第一目标对象时,执行步骤214;通过特征匹配识别为第二目标对象时,执行步骤216。
步骤214,对视图特征信息对应视图对象进行拦截。
采用native层调用预置特征库进行特征,从而匹配识别出视图对象为第一目标对象,本实施例中,第一目标对象为需要拦截的对象,如广告、用户选定无需查看的信息等,从而可以对视图特征信息对应视图对象进行拦截,在应用的GUI中不显示相应的视图对象,即不显示广告,以及用户确定无需查看的信息,如视频播放界面的视频推荐,新闻界面的其他新闻链接等。
本实施例中,为了准确的对视图对象进行拦截,防止无用信息的展示,可以以所述视图特征信息对应视图对象为起点,自下而上查找所述视图树,确定所述视图对象对应父窗口,对所述父窗口进行拦截。即在确定为需要拦截的第一特征对象后,通过反向向上查找ViewTree确定该视图对象对应最上层的父窗口,拦截该父窗口从而阻止无用信息如广告的显示。
步骤216,启动子窗口,在子窗口中对视图特征信息对应视图对象进行显示。
采用native层调用预置特征库进行特征,从而匹配识别出视图对象为第二目标对象,可以启动子窗口如悬浮窗口等,将该视图特征信息对应视图对象的显示信息添加到该子窗口中,在该子窗口中显示该视图对象,如在悬浮窗口中显示视频,从而在播放视频的同时还能够运行其他应用如社交、购物应用,便于用户灵活的执行各种操作。
本实施例可以应用于各种场景,适用于所有安卓系统,解决了通过域名解析拦截时遇到的平台兼容性问题。例如利用广告插件中固定的代码特征,在监听到应用内部窗口布局变化以及生命周期固定事件时,对所有的View进行特征码匹配,精确定位应用界面中的广告内容,然后对其进行拦截。从而能够统一化广告插件特征,做到按照插件拦截,一款特征可以作用于所有使用了同类插件的应用,并且可以通过云端特征下发,做到专项应用广告拦截。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
实施例三
参照图4,示出了根据本发明一个实施例的数据处理装置的结构框图,具体可以包括如下模块:
监听获取模块402,用于依据对当前应用的活动变化事件的监听,获取当前应用的视图树。
遍历提取模块404,用于遍历所述视图树中各节点,依据各节点对应视图对象的视图类型提取视图特征信息。
识别处理模块406,用于依据所述视图特征信息对所述视图对象进行识别,依据识别结果进行处理。
综上,本发明实施例通过依据对当前应用的活动变化事件的监听,获取当前应用的视图树;遍历视图树中各节点,依据各节点对应视图对象的视图类型提取视图特征信息;依据视图特征信息对视图对象进行识别,依据识别结果进行处理;使得用户在使用智能设备时,可以依据展示的视图对象执行相应的处理操作,从而灵活的对应用中的信息进行处理。
参照图5,示出了根据本发明另一个实施例的数据处理装置的结构框图,具体可以包括如下模块:
监听获取模块402,用于依据对当前应用的活动变化事件的监听,获取当前应用的视图树。
遍历提取模块404,用于遍历所述视图树中各节点,依据各节点对应视图对象的视图类型提取视图特征信息。
识别处理模块406,用于依据所述视图特征信息对所述视图对象进行识别,依据识别结果进行处理。
特征库处理模块408,用于从云服务器获取目标特征,将所述目标特征添加到所述预置特征库中。
其中,所述监听获取模块402,包括:
监听子模块4022,用于监听所述当前应用的活动变化事件。
视图树获取子模块4024,用于依据所述活动变化事件确定所述当前应用的界面布局发生变化时,获取所述当前应用的视图树。
所述监听子模块4022,用于监听所述当前应用的视图树变化事件和生命周期事件。
所述遍历提取模块404,包括:
遍历子模块4042,用于从所述视图树的根节点开始遍历各节点。
类型获取子模块4044,用于针对每个节点,获取所述节点对应视图对象的视图类型。
特征提取子模块4046,用于依据视图类型提取所述视图对象的视图特征信息。
其中,当所述视图类型为第一类型时,所述视图对象为原生控件;当所述视图类型为第二类型时,所述视图对象为浏览器控件;当所述视图类型为第三类型时,所述视图对象为通用视图。
所述特征提取子模块,包括:
第一提取单元,用于针对原生控件,提取所述原生控件对应的第一代码特征,将所述第一代码特征作为所述原生控件的视图特征信息。
第二提取单元,用于针对浏览器控件,分别提取所述浏览控件对应的第一代码特征和第二代码特征,将所述第一代码特征和第二代码特征作为所述浏览器控件的视图特征信息。
第三提取单元,用于针对通用视图,提取所述通用视图对应第三代码特征,将所述第三代码特征作为所述通用视图的视图特征信息。
所述识别处理模块406,包括:
匹配子模块4062,用于采用预置特征库对所述视图特征信息进行特征匹配;
拦截子模块4064,用于通过特征匹配识别为第一目标对象时,对所述视图特征信息对应视图对象进行拦截。
显示子模块4066,用于通过特征匹配识别为第二目标对象时,启动子窗口,在所述子窗口中对所述视图特征信息对应视图对象进行显示。
其中,所述拦截子模块4084,用于以所述视图特征信息对应视图对象为起点,自下而上查找所述视图树,确定所述视图对象对应父窗口,对所述父窗口进行拦截。
采用native层调用预置特征库进行特征,从而匹配识别出视图对象为第二目标对象,可以启动子窗口如悬浮窗口等,将该视图特征信息对应视图对象的显示信息添加到该子窗口中,在该子窗口中显示该视图对象,如在悬浮窗口中显示视频,从而在播放视频的同时还能够运行其他应用如社交、购物应用,便于用户灵活的执行各种操作。
本实施例可以应用于各种场景,适用于所有安卓系统,解决了通过域名解析拦截时遇到的平台兼容性问题。例如利用广告插件中固定的代码特征,在监听到应用内部窗口布局变化以及生命周期固定事件时,对所有的View进行特征码匹配,精确定位应用界面中的广告内容,然后对其进行拦截。从而能够统一化广告插件特征,做到按照插件拦截,一款特征可以作用于所有使用了同类插件的应用,并且可以通过云端特征下发,做到专项应用广告拦截。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的数据处理方法和数据处理装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了A1、一种数据处理方法,包括:
依据对当前应用的活动变化事件的监听,获取当前应用的视图树;
遍历所述视图树中各节点,依据各节点对应视图对象的视图类型提取视图特征信息;
依据所述视图特征信息对所述视图对象进行识别,依据识别结果进行处理。
A2、如A1所述的方法,依据对当前应用的活动变化事件的监听,获取当前应用的视图树,包括:
监听所述当前应用的活动变化事件;
依据所述活动变化事件确定所述当前应用的界面布局发生变化时,获取所述当前应用的视图树。
A3、如A2所述的方法,监听所述当前应用的活动变化事件,包括:
监听所述当前应用的视图树变化事件和生命周期事件。
A4、如A1所述的方法,遍历所述视图树中各节点,依据各节点对应视图对象的视图类型提取视图特征信息,包括:
从所述视图树的根节点开始遍历各节点;
针对每个节点,获取所述节点对应视图对象的视图类型;
依据视图类型提取所述视图对象的视图特征信息。
A5、如A4所述的方法,当所述视图类型为第一类型时,所述视图对象为原生控件;当所述视图类型为第二类型时,所述视图对象为浏览器控件;当所述视图类型为第三类型时,所述视图对象为通用视图。
A6、如A5所述的方法,依据视图类型提取所述视图对象的视图特征信息,包括:
针对原生控件,提取所述原生控件对应的第一代码特征,将所述第一代码特征作为所述原生控件的视图特征信息。
A7、如A5所述的方法,依据视图类型提取所述视图对象的视图特征信息,包括:
针对浏览器控件,分别提取所述浏览控件对应的第一代码特征和第二代码特征,将所述第一代码特征和第二代码特征作为所述浏览器控件的视图特征信息。
A8、如A5所述的方法,依据视图类型提取所述视图对象的视图特征信息,包括:
针对通用视图,提取所述通用视图对应第三代码特征,将所述第三代码特征作为所述通用视图的视图特征信息。
A9、如A1所述的方法,依据所述视图特征信息对所述视图对象进行识别,依据识别结果进行处理,包括:
采用预置特征库对所述视图特征信息进行特征匹配;
通过特征匹配识别为第一目标对象时,对所述视图特征信息对应视图对象进行拦截。
A10、如A9所述的方法,还包括:
通过特征匹配识别为第二目标对象时,启动子窗口,在所述子窗口中对所述视图特征信息对应视图对象进行显示。
A11、如A9所述的方法,对所述第一目标对象进行拦截,包括:
以所述视图特征信息对应视图对象为起点,自下而上查找所述视图树,确定所述视图对象对应父窗口,对所述父窗口进行拦截。
A12、如A9所述的方法,还包括:
从云服务器获取目标特征,将所述目标特征添加到所述预置特征库中。
本发明还公开了B13、一种数据处理装置,包括:
监听获取模块,用于依据对当前应用的活动变化事件的监听,获取当前应用的视图树;
遍历提取模块,用于遍历所述视图树中各节点,依据各节点对应视图对象的视图类型提取视图特征信息;
识别处理模块,用于依据所述视图特征信息对所述视图对象进行识别,依据识别结果进行处理。
B14、如B13所述的装置,所述监听获取模块,包括:
监听子模块,用于监听所述当前应用的活动变化事件;
视图树获取子模块,用于依据所述活动变化事件确定所述当前应用的界面布局发生变化时,获取所述当前应用的视图树。
B15、如B14所述的装置,
所述监听子模块,用于监听所述当前应用的视图树变化事件和生命周期事件。
B16、如B13所述的装置,所述遍历提取模块,包括:
遍历子模块,用于从所述视图树的根节点开始遍历各节点;
类型获取子模块,用于针对每个节点,获取所述节点对应视图对象的视图类型;
特征提取子模块,用于依据视图类型提取所述视图对象的视图特征信息。
B17、如B16所述的装置,当所述视图类型为第一类型时,所述视图对象为原生控件;当所述视图类型为第二类型时,所述视图对象为浏览器控件;当所述视图类型为第三类型时,所述视图对象为通用视图。
B18、如B17所述的装置,所述特征提取子模块,包括:
第一提取单元,用于针对原生控件,提取所述原生控件对应的第一代码特征,将所述第一代码特征作为所述原生控件的视图特征信息。
B19、如B17所述的装置,所述特征提取子模块,包括:
第二提取单元,用于针对浏览器控件,分别提取所述浏览控件对应的第一代码特征和第二代码特征,将所述第一代码特征和第二代码特征作为所述浏览器控件的视图特征信息。
B20、如B17所述的装置,所述特征提取子模块,包括:
第三提取单元,用于针对通用视图,提取所述通用视图对应第三代码特征,将所述第三代码特征作为所述通用视图的视图特征信息。
B21、如B13所述的装置,所述识别处理模块,包括:
匹配子模块,用于采用预置特征库对所述视图特征信息进行特征匹配;
拦截子模块,用于通过特征匹配识别为第一目标对象时,对所述视图特征信息对应视图对象进行拦截。
B22、如B21所述的装置,所述识别处理模块,还包括:
显示子模块,用于通过特征匹配识别为第二目标对象时,启动子窗口,在所述子窗口中对所述视图特征信息对应视图对象进行显示。
B23、如B21所述的装置,所述拦截子模块,用于以所述视图特征信息对应视图对象为起点,自下而上查找所述视图树,确定所述视图对象对应父窗口,对所述父窗口进行拦截。
B24、如B21所述的装置,还包括:
特征库处理模块,用于从云服务器获取目标特征,将所述目标特征添加到所述预置特征库中。

Claims (10)

1.一种数据处理方法,包括:
依据对当前应用的活动变化事件的监听,获取当前应用的视图树;
遍历所述视图树中各节点,依据各节点对应视图对象的视图类型提取视图特征信息;
依据所述视图特征信息对所述视图对象进行识别,依据识别结果进行处理。
2.如权利要求1所述的方法,其特征在于,依据对当前应用的活动变化事件的监听,获取当前应用的视图树,包括:
监听所述当前应用的活动变化事件;
依据所述活动变化事件确定所述当前应用的界面布局发生变化时,获取所述当前应用的视图树。
3.如权利要求2所述的方法,其特征在于,监听所述当前应用的活动变化事件,包括:
监听所述当前应用的视图树变化事件和生命周期事件。
4.如权利要求1所述的方法,其特征在于,遍历所述视图树中各节点,依据各节点对应视图对象的视图类型提取视图特征信息,包括:
从所述视图树的根节点开始遍历各节点;
针对每个节点,获取所述节点对应视图对象的视图类型;
依据视图类型提取所述视图对象的视图特征信息。
5.如权利要求4所述的方法,其特征在于,
当所述视图类型为第一类型时,所述视图对象为原生控件;
当所述视图类型为第二类型时,所述视图对象为浏览器控件;
当所述视图类型为第三类型时,所述视图对象为通用视图。
6.如权利要求5所述的方法,其特征在于,依据视图类型提取所述视图对象的视图特征信息,包括:
针对原生控件,提取所述原生控件对应的第一代码特征,将所述第一代码特征作为所述原生控件的视图特征信息。
7.如权利要求5所述的方法,其特征在于,依据视图类型提取所述视图对象的视图特征信息,包括:
针对浏览器控件,分别提取所述浏览控件对应的第一代码特征和第二代码特征,将所述第一代码特征和第二代码特征作为所述浏览器控件的视图特征信息。
8.如权利要求5所述的方法,其特征在于,依据视图类型提取所述视图对象的视图特征信息,包括:
针对通用视图,提取所述通用视图对应第三代码特征,将所述第三代码特征作为所述通用视图的视图特征信息。
9.如权利要求1所述的方法,其特征在于,依据所述视图特征信息对所述视图对象进行识别,依据识别结果进行处理,包括:
采用预置特征库对所述视图特征信息进行特征匹配;
通过特征匹配识别为第一目标对象时,对所述视图特征信息对应视图对象进行拦截。
10.一种数据处理装置,包括:
监听获取模块,用于依据对当前应用的活动变化事件的监听,获取当前应用的视图树;
遍历提取模块,用于遍历所述视图树中各节点,依据各节点对应视图对象的视图类型提取视图特征信息;
识别处理模块,用于依据所述视图特征信息对所述视图对象进行识别,依据识别结果进行处理。
CN201510971892.4A 2015-12-22 2015-12-22 一种数据处理方法和装置 Pending CN106909262A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510971892.4A CN106909262A (zh) 2015-12-22 2015-12-22 一种数据处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510971892.4A CN106909262A (zh) 2015-12-22 2015-12-22 一种数据处理方法和装置

Publications (1)

Publication Number Publication Date
CN106909262A true CN106909262A (zh) 2017-06-30

Family

ID=59199677

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510971892.4A Pending CN106909262A (zh) 2015-12-22 2015-12-22 一种数据处理方法和装置

Country Status (1)

Country Link
CN (1) CN106909262A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107357591A (zh) * 2017-07-25 2017-11-17 努比亚技术有限公司 应用程序的界面植入方法、移动终端及存储介质
CN107967169A (zh) * 2017-11-22 2018-04-27 北京搜狐新媒体信息技术有限公司 页面跳转监听方法及装置
CN108710570A (zh) * 2018-05-11 2018-10-26 阿里巴巴集团控股有限公司 一种视图功能测试方法、装置及设备
CN109766246A (zh) * 2019-02-02 2019-05-17 北京字节跳动网络技术有限公司 用于监控应用的方法和装置
CN110362371A (zh) * 2019-06-19 2019-10-22 北京百度网讯科技有限公司 视图层级的控制方法及系统、计算机设备及可读介质
CN110543265A (zh) * 2019-07-22 2019-12-06 北京达佳互联信息技术有限公司 页面标题栏的生成方法、装置、电子设备及存储介质
CN111522548A (zh) * 2020-03-24 2020-08-11 北京三快在线科技有限公司 项目功能扩展方法、装置、电子设备和计算机可读介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103617395A (zh) * 2013-12-06 2014-03-05 北京奇虎科技有限公司 一种基于云安全拦截广告程序的方法、装置和系统
CN104091125A (zh) * 2014-07-18 2014-10-08 北京奇虎科技有限公司 处理悬浮窗的方法及悬浮窗处理装置
CN104123276A (zh) * 2013-04-23 2014-10-29 腾讯科技(深圳)有限公司 一种浏览器中弹窗的拦截方法、装置和系统
CN104199934A (zh) * 2014-09-05 2014-12-10 北京奇虎科技有限公司 针对应用程序的广告进行拦截的方法及装置
CN104778226A (zh) * 2015-03-26 2015-07-15 小米科技有限责任公司 网页内内容项屏蔽方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104123276A (zh) * 2013-04-23 2014-10-29 腾讯科技(深圳)有限公司 一种浏览器中弹窗的拦截方法、装置和系统
CN103617395A (zh) * 2013-12-06 2014-03-05 北京奇虎科技有限公司 一种基于云安全拦截广告程序的方法、装置和系统
CN104091125A (zh) * 2014-07-18 2014-10-08 北京奇虎科技有限公司 处理悬浮窗的方法及悬浮窗处理装置
CN104199934A (zh) * 2014-09-05 2014-12-10 北京奇虎科技有限公司 针对应用程序的广告进行拦截的方法及装置
CN104778226A (zh) * 2015-03-26 2015-07-15 小米科技有限责任公司 网页内内容项屏蔽方法及装置

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107357591A (zh) * 2017-07-25 2017-11-17 努比亚技术有限公司 应用程序的界面植入方法、移动终端及存储介质
CN107967169A (zh) * 2017-11-22 2018-04-27 北京搜狐新媒体信息技术有限公司 页面跳转监听方法及装置
CN108710570A (zh) * 2018-05-11 2018-10-26 阿里巴巴集团控股有限公司 一种视图功能测试方法、装置及设备
CN108710570B (zh) * 2018-05-11 2021-10-29 创新先进技术有限公司 一种视图功能测试方法、装置及设备
CN109766246A (zh) * 2019-02-02 2019-05-17 北京字节跳动网络技术有限公司 用于监控应用的方法和装置
CN109766246B (zh) * 2019-02-02 2023-04-07 北京字节跳动网络技术有限公司 用于监控应用的方法和装置
CN110362371A (zh) * 2019-06-19 2019-10-22 北京百度网讯科技有限公司 视图层级的控制方法及系统、计算机设备及可读介质
CN110362371B (zh) * 2019-06-19 2022-07-22 北京百度网讯科技有限公司 视图层级的控制方法、装置及系统、计算机设备及介质
CN110543265A (zh) * 2019-07-22 2019-12-06 北京达佳互联信息技术有限公司 页面标题栏的生成方法、装置、电子设备及存储介质
CN111522548A (zh) * 2020-03-24 2020-08-11 北京三快在线科技有限公司 项目功能扩展方法、装置、电子设备和计算机可读介质
CN111522548B (zh) * 2020-03-24 2023-06-27 北京三快在线科技有限公司 项目功能扩展方法、装置、电子设备和计算机可读介质

Similar Documents

Publication Publication Date Title
CN106909262A (zh) 一种数据处理方法和装置
CN108255922A (zh) 视频识别方法、设备、客户端装置、电子设备及服务器
US11966967B2 (en) Machine-based object recognition of video content
US10984601B2 (en) Data visualization objects in a virtual environment
CN106909544A (zh) 一种数据处理方法和装置
US10499109B2 (en) Method and apparatus for providing combined barrage information
US9569062B2 (en) Asynchronous execution of animation tasks for a GUI
CN104536729B (zh) 一种实现在浏览器页面中进行截图的方法和装置
US20170091317A1 (en) Location correlation between query script and data flow
US9977472B2 (en) Method and apparatus for displaying relative motion of objects on graphical user interface
CN108156523A (zh) 交互视频播放的互动方法及装置
CN108628947A (zh) 一种业务规则匹配处理方法、装置及处理设备
CN108319607A (zh) 业务对象的显示、地图数据的处理方法、客户端及服务器
US10685256B2 (en) Object recognition state indicators
CN104853248B (zh) 一种视频推荐方法及装置
WO2021238447A1 (zh) 人机交互方法及装置、存储介质及电子设备
CN108021583A (zh) 页面加载方法、页面操作指令的处理方法及客户端
CN104346463A (zh) 一种页面标签的加载方法、装置和浏览器客户端
CN108566518A (zh) 一种视频编辑、播放方法、设备及计算机可读介质
CN111523021A (zh) 一种信息处理系统及其执行的方法
EP2622561A2 (en) Systems and methods for discovery of related interactable items in a mobile store environment
CN105373533B (zh) 一种页面链接地址的检测方法、客户端及装置
US20190213232A1 (en) Amethod of generating personalized video with user-generated content unique to each user
CN113163135B (zh) 视频的动画添加方法、装置、设备及介质
CN106909546A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170630