CN104007966B - 基于开发使用的应用程序界面控件信息查看方法 - Google Patents

基于开发使用的应用程序界面控件信息查看方法 Download PDF

Info

Publication number
CN104007966B
CN104007966B CN201410215660.1A CN201410215660A CN104007966B CN 104007966 B CN104007966 B CN 104007966B CN 201410215660 A CN201410215660 A CN 201410215660A CN 104007966 B CN104007966 B CN 104007966B
Authority
CN
China
Prior art keywords
interface
control
xml file
application program
control information
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
Application number
CN201410215660.1A
Other languages
English (en)
Other versions
CN104007966A (zh
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.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
GUANGDONG MINGCHUANG SOFTWARE SCIENCE & TECHNOLOGY 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 GUANGDONG MINGCHUANG SOFTWARE SCIENCE & TECHNOLOGY Co Ltd filed Critical GUANGDONG MINGCHUANG SOFTWARE SCIENCE & TECHNOLOGY Co Ltd
Priority to CN201410215660.1A priority Critical patent/CN104007966B/zh
Publication of CN104007966A publication Critical patent/CN104007966A/zh
Application granted granted Critical
Publication of CN104007966B publication Critical patent/CN104007966B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)
  • Telephone Function (AREA)

Abstract

本发明公开了一种基于开发使用的应用程序界面控件信息查看方法,包括以下步骤:进入应用程序,开启界面查看功能;获取并显示当前界面的XML文件;检测当前界面上被选中的控件;突出显示XML文件中与被选中的控件对应的控件信息。与现有技术相比,本发明基于开发使用的应用程序界面控件信息查看方法可以实现在移动终端(如手机)上更直观的看到当前界面的布局文件(XML文件),并且可以对每个控件进行一一查看;同时,对于正在进行开发过程学习的开发者,通过查看每个控件对应的代码,学习更为快速、方便。

Description

基于开发使用的应用程序界面控件信息查看方法
技术领域
本发明涉及应用程序开发技术领域,更具体地涉及一种基于开发使用的应用程序界面控件信息查看方法。
背景技术
PC端的浏览器,例如google chrome(谷歌浏览器)和firefox(火狐浏览器),会有提供给开发者使用的工具,开发者使用该工具可以查看当前网页页面的html文件、html文件中每个控件的属性以及web开发中需要的脚本之间的调用关系或者数据的传递关系等。然而,由于Android(安卓)手机上的布局文件是xml(extensible markup language可扩展标记语言)文件,并且手机上的硬件配置等都不能与PC端相比较,故该工具只是适用于PC端,而不能同样适用于手机。
因此,急需提供一种适用于android手机的基于开发使用的应用程序界面控件信息查看方法。
发明内容
本发明的目的在于提供一种基于开发使用的应用程序界面控件信息查看方法,以实现在android手机端查看应用程序当前界面的XML文件以及当前界面上每个控件的信息,有助于提高开发者对开发过程的学习。
为实现上述目的,本发明提供了一种基于开发使用的应用程序界面控件信息查看方法,基于移动终端的Android平台,包括以下步骤:
进入应用程序,开启界面查看功能;
获取并显示当前界面的XML文件;
检测所述当前界面上被选中的控件;
突出显示所述XML文件中与被选中的所述控件对应的控件信息,
其中,获取当前界面的XML文件的方式为:
访问所述应用程序的安装包,从所述安装包中调用所述当前界面的XML文件,所述安装包内包含所述应用程序中各个最终界面的XML文件;或
对所述当前界面进行截图,根据截图得到的界面图像获取所述当前界面的XML文件。
与现有技术相比,本发明基于Android平台开发使用的应用程序界面控件信息查看方法,在开启界面查看功能后,可以获取并显示当前界面的XML文件,当用户在当前界面上选择某一控件后,会突出显示XML文件中与被选中的控件对应的控件信息(即控件代码),从而实现了在移动终端(如手机)上直观的查看当前界面的布局文件(XML文件),并且可以对每个控件的信息进行一一查看,从而,对于正在进行开发过程学习的开发者,通过查看每个控件对应的代码,学习更为快速、方便。
较佳地,所述“根据截图得到的界面图像获取所述当前界面的XML文件”具体包括:
对所述界面图像进行剪裁以得到所述界面图像包含的控件方块;
依次将每一所述控件方块与资料库中存储的控件进行比对以得到所述控件方块对应的控件;
根据得到的控件生成所述XML文件。
较佳地,所述“显示当前界面的XML文件”具体包括:
弹出一显示区域;
在所述显示区域上显示所述XML文件。
较佳地,所述显示区域从下至上弹出,所述显示区域的面积为所述当前界面面积的一半,所述显示区域呈半透明状。
较佳地,所述“突出显示所述XML文件中与所述控件对应的控件信息”之后还包括:
判断所述当前界面是否发生改变;
根据判断结果更新所述显示区域显示的所述XML文件。
较佳地,所述“突出显示所述XML文件中与所述控件对应的控件信息”具体为:
高亮显示所述XML文件中与所述控件对应的控件信息;
所述“检测所述当前界面上被选中的控件”之后还包括:
高亮显示所述当前界面上被选中的所述控件。
较佳地,所述“开启界面查看功能”之前还包括:
设置开启和关闭界面查看功能的选项。
较佳地,所述“开启界面查看功能”之后还包括:
停止对屏幕触发事件的监听。
较佳地,所述“获取并显示当前界面的XML文件”之前还包括:
判断所述当前界面是否允许访问。
通过以下的描述并结合附图,本发明将变得更加清晰,这些附图用于解释本发明的实施例。
附图说明
图1为本发明基于开发使用的应用程序界面控件信息查看方法一实施例的流程图。
图2为本发明基于开发使用的应用程序界面控件信息查看方法另一实施例的流程图。
图3为本发明基于开发使用的应用程序界面控件信息查看方法又一实施例的流程图。
具体实施方式
现在参考附图描述本发明的实施例,附图中类似的元件标号代表类似的元件。需要注意的是,本发明基于开发使用的应用程序界面控件信息查看方法适用于android移动终端。
请参考图1,为本发明基于开发使用的应用程序界面控件信息查看方法一实施例的流程图。如图1所示,包括以下步骤:
步骤S101,进入应用程序,开启界面查看功能;其中应用程序为任一允许访问XML文件的应用程序,开启界面查看功能的方式可以任意设置,如点击界面上的启动按钮来开启界面查看功能,启动按钮是预先设置的,当然,点击按钮只是其中的一种实施方式,本发明不限制于此,该界面查看功能可以随时开启和关闭;
步骤S102,获取并显示当前界面的XML文件;
具体的,获取当前界面的XML文件有以下两种方式:
(1)访问应用程序的安装包,从安装包中调用当前界面的XML文件;其中安装包内包含应用程序中每个活动最终界面的XML文件。需要注意的是,通过访问安装包获取XML文件,需要有访问该应用程序的XML文件的权限。
(2)对当前界面进行截图,根据截图得到的界面图像获取当前界面的XML文件,具体的,方式(2)包括以下子步骤:
(21)对当前界面进行截图以得到界面图像;
(22)对界面图像进行剪裁以得到界面图像包含的控件方块;
(23)依次将每一控件方块与应用程序的资料库中存储的控件进行比对以得到控件方块对应的控件;其中,应用程序的资料库中存储有每个控件的布局文件,通过将控件方块与资料库中存储的控件进行特征比对,可以确定控件方块对应的控件;
(24)根据得到的所有控件生成XML文件。
本实施例中获取当前界面的XML文件的方式可以为以上任一种,需要注意的是,方式(2)有较大的局限性,一般适用于布局简单的界面,如果界面的布局非常复杂,通过方式(2)获取当前界面的XML文件则运算法则,计算量比较大,同时准确度也不高。
步骤S103,检测当前界面上被选中的控件;
具体的,开启界面查看功能后,当用户点击当前界面上的某一位置后,移动终端可以获取该位置的坐标,再将该坐标与当前界面上所有控件的坐标范围进行比较,如果该坐标在某个控件的坐标范围内,则可以判断出选中了这个控件;
步骤S104,突出显示XML文件中与被选中的控件对应的控件信息;其中控件信息即为控件的代码。
从以上描述可以看出,本发明基于开发使用的应用程序界面控件信息查看方法,在开启界面查看功能后,可以获取并显示当前界面的XML文件,当用户在当前界面上选择某一控件后,会突出显示XML文件中与被选中的控件对应的控件信息(即控件代码),从而实现了在移动终端(如手机)上直观的查看当前界面的布局文件(XML文件),并且可以对每个控件的信息进行一一查看,从而,对于正在进行开发过程学习的开发者,通过查看每个控件对应的代码,学习更为快速、方便。
需要注意的是,Android的基本UI界面一般都是在XML文件中定义好,然后通过activity的setContentView来显示在界面上,这是Android UI的最简单的构建方式。而实际上,为了实现更加复杂和更加灵活的UI界面,往往需要动态生成UI界面,甚至根据用户的点击或者配置,动态地改变UI界面,而动态生成或改变的界面的XML文件是没有存储的,故不能直接获取,如在源代码中加入了对界面的操作(如在程序中动态的在界面上增加一个按钮或者改变这个按钮上的文字显示),那么改变后的界面的XML文件是不能被获取的,从而影响开发效率。为此,本发明基于开发使用的应用程序界面控件信息查看方法提供了另一实施例,具体流程如图2所示,包括以下步骤:
步骤S201,设置开启和关闭界面查看功能的选项;
步骤S202,进入某一应用程序,在任一界面(即当前界面)开启界面查看功能;其中开启界面查看功能的方式可参考图1所示实施例的描述,此处不再赘述,而当前界面是应用程序的任一界面,可以为XML文件中存储的静态界面,也可以为代码中动态生成的界面;
步骤S203,判断当前界面是否允许访问,若判断结果为是,执行步骤S204,反之,执行步骤S210;
步骤S204,获取当前界面的XML文件;
当采用图1所示实施例中方式(1),即访问并调用应用程序安装包中的XML文件来获取当前界面的XML文件时,若当前界面为XML文件中存储的静态界面,则可以直接从应用程序的安装包中调用对应的XML文件,若当前界面为动态生成的界面,由于应用程序的安装包中没有对应的XML文件,此时需通过Android自带的AccessibilityNodeInfoDumper内包含的方法获取当前界面的控件信息,从而可以得到当前界面的XML文件;当采用图1所示实施例中方式(2)获取当前界面的XML文件时,可以不区分当前界面为静态界面还是代码中动态生成的界面;
步骤S205,弹出一显示区域;
具体的,显示区域从下至上弹出,显示区域的面积为当前界面面积(即移动终端屏幕面积)的一半,显示区域呈半透明状。其中,显示区域是一种类似下拉框的界面,但下拉框一般是从上至下弹出。另外,显示区域和应用程序的当前界面是可以滑动的,从而可以查看被挡住的部分。
步骤S206,在显示区域上显示当前界面的XML文件;
其中,如果当前界面的显示元素(即控件)较多,还可以对显示进行一定的处理,如类似折叠和展开。XML布局文件是层级性的组成的,每层控件的前面会有一个符号,如果是“+”号则可以点击这个“+”号,展开这层控件下面的所有控件,反之如果是“-”号则可以折叠,这样,在显示时更为直观。此外,在显示时除了可以进行折叠和展开处理,还可以进行颜色的区别,如对不同的控件显示不同的颜色或对不同的布局进行颜色区分等。
步骤S207,停止对屏幕触发事件的监听,即对屏幕进行触摸操作后不会执行下一步的操作,如点击QQ登录界面的登录按钮后不会进行登录操作;
步骤S208,检测当前界面上被选中的控件;具体的,开启界面查看功能后,虽然停止了对屏幕触发事件的监听,如点击当前界面上的某一按钮后不再能触发这个按钮对应的事件,但是可以获取点击屏幕的坐标,再与当前界面上所有控件的坐标范围进行比较,如果该坐标在某个控件(如控件B)的坐标范围内,则可以判断出选中了控件B;
步骤S209,高亮显示当前界面上被选中的控件以及XML文件中与控件对应的控件信息,其中控件信息即为控件的代码;
步骤S210,申请访问权限。
通过高亮显示被选中的控件及控件的代码,可以使前端界面开发人员方便的获取界面元素,而不需要得到该应用程序所有的代码,在一定程度上保护了其他代码的安全。另外,对正在进行开发学习的开发者而言,通过在手机上查看每个控件对应的代码使得学习更为直观、方便,可以有效提高学习效率。
需要注意的是,图1及图2所示实施例中进入界面查看功能后,会停止对屏幕触发事件的监听,导致基于开发使用的应用程序界面控件信息查看方法只能查看当前界面的XML文件,若希望查看其他界面(如下一个界面)的XML文件,则需要退出界面查看功能,然后在当前界面为其他界面(如下一个界面)时重新启动界面查看功能。因此,开发人员不能连续的对应用程序的多个界面的XML文件及控件信息进行查看,用户体验不好。
为解决上述问题,本发明基于开发使用的应用程序界面控件信息查看方法提供了又一实施例,具体流程如图3所示,包括以下步骤:
步骤S301,设置开启和关闭界面查看功能的选项;
步骤S302,进入某一应用程序,在任一界面(即当前界面)开启界面查看功能;其中开启界面查看功能的方式可参考图1所示实施例的描述,此处不再赘述,而当前界面是应用程序的任一界面,可以为XML文件中存储的静态界面,也可以为代码中动态生成的界面;
步骤S303,判断当前界面是否允许访问,若判断结果为是,执行步骤S304,反之,执行步骤S312;
步骤S304,获取当前界面的XML文件;
步骤S305,弹出一显示区域;
步骤S306,在显示区域上显示当前界面的XML文件;
步骤S307,检测当前界面上被选中的控件;具体的,开启界面查看功能后,用户在移动终端上的触摸操作用于选择控件,具体的,移动终端根据用户的触摸操作获取点击屏幕的坐标,再将该坐标与当前界面上所有控件的坐标范围进行比较,如果该坐标在某个控件(如控件B)的坐标范围内,则可以判断出选中了控件B;
步骤S308,高亮显示当前界面上被选中的控件以及XML文件中与控件对应的控件信息,其中控件信息即为控件的代码;
步骤S309,实时检测当前界面是否发生改变,若判断结果为是,执行步骤S310,反之,执行步骤S311;
在本实施例中,用户选择某一控件的操作后,还会触发该控件对应的事件,如选中的控件C为支付界面上的验证码控件时,则选中控件C后,会执行步骤S308,同时会更新验证码,从而当前界面发生改变,生成一新的界面;
步骤S310,更新显示区域上的XML文件,返回步骤S307;即当前界面发生改变后,对应的更新显示区域的XML文件,实现XML文件与当前界面的实时对应;
步骤S311,不执行任何操作;
步骤S312,申请访问权限。
从以上描述可以看出,本实施例中基于开发使用的应用程序界面控件信息查看方法,在显示区域显示的XML文件会动态更新,即随着当前界面的改变而改变,从而方便了用户即时查看每个界面的XML文件及控件的代码,可以提高学习效率。
以上结合最佳实施例对本发明进行了描述,但本发明并不局限于以上揭示的实施例,而应当涵盖各种根据本发明的本质进行的修改、等效组合。

Claims (9)

1.一种基于开发使用的应用程序界面控件信息查看方法,其特征在于,基于移动终端的Android平台,包括以下步骤:
进入应用程序,开启界面查看功能;
获取并显示当前界面的XML文件;
检测所述当前界面上被选中的控件;
突出显示所述XML文件中与被选中的所述控件对应的控件信息,
其中,获取当前界面的XML文件的方式为:
访问所述应用程序的安装包,从所述安装包中调用所述当前界面的XML文件;或
对所述当前界面进行截图,根据截图得到的界面图像获取所述当前界面的XML文件。
2.如权利要求1所述的基于开发使用的应用程序界面控件信息查看方法,其特征在于,所述“根据截图得到的界面图像获取所述当前界面的XML文件”具体包括:
对所述界面图像进行剪裁以得到所述界面图像包含的控件方块;
依次将每一所述控件方块与资料库中存储的控件进行比对以得到所述控件方块对应的控件;
根据得到的控件生成所述XML文件。
3.如权利要求1所述的基于开发使用的应用程序界面控件信息查看方法,其特征在于,所述“显示当前界面的XML文件”具体包括:
弹出一显示区域;
在所述显示区域上显示所述XML文件。
4.如权利要求3所述的基于开发使用的应用程序界面控件信息查看方法,其特征在于,所述显示区域从下至上弹出,所述显示区域的面积为所述当前界面面积的一半,所述显示区域呈半透明状。
5.如权利要求4所述的基于开发使用的应用程序界面控件信息查看方法,其特征在于,所述“突出显示所述XML文件中与被选中的所述控件对应的控件信息”之后还包括:
判断所述当前界面是否发生改变;
根据判断结果更新所述显示区域显示的所述XML文件。
6.如权利要求1所述的基于开发使用的应用程序界面控件信息查看方法,其特征在于,所述“突出显示所述XML文件中与被选中的所述控件对应的控件信息”具体为:
高亮显示所述XML文件中与所述控件对应的控件信息;
所述“检测所述当前界面上被选中的控件”之后还包括:
高亮显示所述当前界面上被选中的所述控件。
7.如权利要求1所述的基于开发使用的应用程序界面控件信息查看方法,其特征在于,所述“开启界面查看功能”之前还包括:
设置开启和关闭界面查看功能的选项。
8.如权利要求1所述的基于开发使用的应用程序界面控件信息查看方法,其特征在于,所述“开启界面查看功能”之后还包括:
停止对屏幕触发事件的监听。
9.如权利要求1所述的基于开发使用的应用程序界面控件信息查看方法,其特征在于,所述“获取并显示当前界面的XML文件”之前还包括:
判断所述当前界面是否允许访问。
CN201410215660.1A 2014-05-21 2014-05-21 基于开发使用的应用程序界面控件信息查看方法 Active CN104007966B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410215660.1A CN104007966B (zh) 2014-05-21 2014-05-21 基于开发使用的应用程序界面控件信息查看方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410215660.1A CN104007966B (zh) 2014-05-21 2014-05-21 基于开发使用的应用程序界面控件信息查看方法

Publications (2)

Publication Number Publication Date
CN104007966A CN104007966A (zh) 2014-08-27
CN104007966B true CN104007966B (zh) 2017-07-21

Family

ID=51368633

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410215660.1A Active CN104007966B (zh) 2014-05-21 2014-05-21 基于开发使用的应用程序界面控件信息查看方法

Country Status (1)

Country Link
CN (1) CN104007966B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105487765A (zh) * 2014-09-19 2016-04-13 中兴通讯股份有限公司 一种Windows窗口对象标识方法及装置
CN106126238B (zh) * 2016-06-27 2020-03-06 深圳市天橙一品科技有限公司 一种用户界面视效规范检测装置及方法
CN108427557A (zh) * 2017-05-10 2018-08-21 平安科技(深圳)有限公司 一种控件布局显示控制方法、装置及计算机可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101154223A (zh) * 2006-09-27 2008-04-02 阿里巴巴公司 查看与系统功能对应的源代码的方法及系统
CN101751251A (zh) * 2008-12-11 2010-06-23 中兴通讯股份有限公司 一种结构化的可扩展标记语言编辑装置和处理方法
CN102789413A (zh) * 2011-05-23 2012-11-21 同济大学 一种并行程序的调试系统及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101154223A (zh) * 2006-09-27 2008-04-02 阿里巴巴公司 查看与系统功能对应的源代码的方法及系统
CN101751251A (zh) * 2008-12-11 2010-06-23 中兴通讯股份有限公司 一种结构化的可扩展标记语言编辑装置和处理方法
CN102789413A (zh) * 2011-05-23 2012-11-21 同济大学 一种并行程序的调试系统及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Google Chrome开发者工具使用(图文教程);劳黑炭;《百度经验》;20140309;全文及图8 *

Also Published As

Publication number Publication date
CN104007966A (zh) 2014-08-27

Similar Documents

Publication Publication Date Title
CN103959206B (zh) 用于动态适应虚拟键盘的方法和装置
JP6105818B2 (ja) タッチ入力パネルのレイアウトを適応的に調整する装置、方法及びモバイル端末
CN103914208B (zh) 一种信息处理方法和电子设备
CN107025174A (zh) 用于设备的用户界面异常测试的方法、装置和可读储介质
CN109597755A (zh) 文本显示的检测方法、装置、存储介质和电子设备
CN106484236B (zh) 一种物理按键提示操作的方法及装置
US20170269823A1 (en) Control Display Method and Device, and Terminal
CN106909377A (zh) 一种热区页面处理方法及装置
CN104007966B (zh) 基于开发使用的应用程序界面控件信息查看方法
Pattakou et al. Towards the design of usable privacy by design methodologies
CN110442515A (zh) 应用测试方法、装置、设备及可读存储介质
CN105892905A (zh) 手势输入处理方法和支持其的电子装置
CN106201235A (zh) 对象选择的方法、装置及终端
CN104598133B (zh) 对象的说明书生成方法和装置
TWI610220B (zh) 自動控制顯示螢幕密度的設備及方法
Rathfux et al. Combining design-time generation of web-pages with responsive design for improving low-vision accessibility
CN107918509A (zh) 软件快捷方式提示设置方法、装置及可读存储介质
CN107678637A (zh) 切换选项卡的方法、设备、浏览器和电子设备
KR101796009B1 (ko) 프로그램 자동 분석 시스템 및 이를 이용한 자동분석 방법
CN106527868B (zh) 一种应用程序的任务管理方法及装置
CN106569675B (zh) 一种提示框显示方法及装置
CN108664310A (zh) 显示框处理方法、装置、计算机设备和存储介质
CN110110102B (zh) 一种思维导图幻灯片播放方法及装置
CN108345486A (zh) 一种界面覆盖方法、设备及可读介质
CN113434073A (zh) 活动窗口的控制方法、装置、电子设备及可读存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20170803

Address after: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18

Patentee after: Guangdong OPPO Mobile Communications Co., Ltd.

Address before: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18

Patentee before: Guangdong Mingchuang Software Science & Technology Co., Ltd.

CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18

Patentee after: OPPO Guangdong Mobile Communications Co., Ltd.

Address before: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18

Patentee before: Guangdong Opel Mobile Communications Co., Ltd.