显示自定义控件信息的方法、装置与流程

文档序号:14389739阅读:354来源:国知局
显示自定义控件信息的方法、装置与流程
本公开涉及通信
技术领域
,尤其涉及一种显示自定义控件信息的方法、装置。
背景技术
:一个应用程序即客户端软件一般包括大量页面,每个页面包括多个模块,每个模块对应开发程序中的一个自定义控件。假设上述应用程序是基于android安卓系统开发的客户端软件。相关技术中,开发人员若想了解页面中各模块对应的自定义控件的信息,一般通过pc端安装的android安卓开发环境查看客户端日志或通过单步调试方式来熟悉各页面及自定义控件的信息。然而上述方法均需要android开发环境的支持,若开发人员想要使用普通用户终端如没有安装android开发环境的移动终端,方便、快捷地查看自定义控件信息,则很难实现。技术实现要素:为克服相关技术中存在的问题,本公开提供了一种显示自定义控件信息的方法、装置,可以在页面中直观显示自定义控件的目标信息。根据本公开实施例的第一方面,提供一种显示自定义控件信息的方法,应用于移动终端中,包括:获取用于请求打开客户端软件开发界面的请求信息;根据所述请求信息绘制页面中自定义控件的目标信息,所述目标信息至少包括自定义控件的类名。可选地,所述获取用于请求打开客户端软件开发界面的请求信息,包括:通过预设接口检测到预设触发信息时,提供信息验证接口;通过所述信息验证接口获取待验证信息并对所述待验证信息进行信息验证;若所述待验证信息通过所述信息验证,获取所述请求信息。可选地,所述根据所述请求信息绘制页面中自定义控件的目标信息,包括:获取所述页面的自定义控件列表,所述自定义控件列表包括:各个模块的位置信息与自定义控件的控件类型的对应关系;根据所述自定义控件列表绘制所述页面中所述自定义控件的目标信息。可选地,所述根据所述自定义控件列表绘制所述页面中自定义控件的目标信息,包括:根据所述自定义控件列表确定所述各个自定义控件的控件类型是否相同;若所述各个自定义控件的控件类型相同,确定所述各个自定义控件的目标信息是否相同;若所述各个自定义控件的目标信息相同,在所述页面的预设位置绘制所述目标信息。可选地,所述根据所述自定义控件列表绘制所述页面中自定义控件的目标信息,还包括:若所述各个自定义控件的控件类型不同或者所述各个自定义控件的目标信息不同,在所述页面中绘制各个自定义控件的所述目标信息。可选地,所述绘制页面中自定义控件的目标信息,包括:通过继承于安卓系统原生控件的自定义基类提供的至少一种抽象方法,从所述自定义控件获取所述目标信息对应的目标数据;其中,所述自定义控件继承于所述自定义基类;通过重写所述自定义基类的预设绘制方法,依次绘制所述自定义基类的信息和所述自定义控件的所述目标信息。可选地,所述预设绘制方法包括:dispatchdraw()方法。根据本公开实施例的第二方面,提供了一种显示自定义控件信息的装置,设置于移动终端中,所述装置包括:请求模块,被配置为获取用于请求打开客户端软件开发界面的请求信息;显示模块,被配置为根据所述请求信息绘制页面中自定义控件的目标信息,所述目标信息至少包括自定义控件的类名。可选的,所述请求模块包括:触发子模块,被配置为通过预设接口检测到预设触发信息时,提供信息验证接口;校验子模块,被配置为通过所述信息验证接口获取待验证信息并对所述待验证信息进行信息验证;请求子模块,被配置为在所述待验证信息通过所述信息验证的情况下,获取所述请求信息。可选的,所述显示模块包括:控件列表获取子模块,被配置为获取所述页面的自定义控件列表,所述自定义控件列表包括:各个模块的位置信息与自定义控件的控件类型的对应关系;信息绘制子模块,被配置为根据所述自定义控件列表绘制所述页面中所述自定义控件的目标信息。可选的,所述信息绘制子模块包括:类型确定单元,被配置为根据所述自定义控件列表确定所述各个自定义控件的控件类型是否相同;信息确定单元,被配置为在所述各个自定义控件的控件类型相同的情况下,确定所述各个自定义控件的目标信息是否相同;第一绘制单元,被配置为在所述各个自定义控件的目标信息相同的情况下,在所述页面的预设位置绘制所述目标信息。可选的,所述信息绘制子模块,还包括:第二绘制单元,被配置为在所述各个自定义控件的控件类型不同或者所述各个自定义控件的目标信息不同的情况下,在所述页面中绘制各个自定义控件的所述目标信息。可选的,所述显示模块,包括:目标数据获取子模块,被配置为通过继承于安卓系统原生控件的自定义基类提供的至少一种抽象方法,从所述自定义控件获取所述目标信息对应的目标数据;其中,所述自定义控件继承于所述自定义基类;目标信息绘制子模块,被配置为通过重写所述自定义基类的预设绘制方法,依次绘制所述自定义基类的信息和所述自定义控件的所述目标信息。可选的,所述预设绘制方法包括:dispatchdraw()方法。根据本公开实施例的第三方面,提供了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一方面任一所述方法的步骤。根据本公开实施例的第四方面,提供了一种移动终端,包括:处理器和用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:获取用于请求打开客户端软件开发界面的请求信息;根据所述请求信息绘制页面中自定义控件的目标信息,所述目标信息至少包括自定义控件的类名。本公开的实施例提供的技术方案可以包括以下有益效果:本公开中,移动终端可以获取用户发送的预设请求信息,该请求信息用于请求打开客户端软件开发界面,然后根据上述请求信息绘制页面中自定义控件的目标信息,该目标信息至少包括自定义控件的类名,使得当前用户例如客户端软件的开发人员可以通过移动终端随时随地查询目标自定义控件的信息,方便该开发人员依据上述目标信息及时查找该自定义控件的源代码及对该自定义控件的源代码进行修复等操作,进而提高程序开发人员的开发效率,增强移动终端的智能化程度,提高用户使用体验。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。图1是本公开根据一示例性实施例示出的一种显示自定义控件信息的方法流程图。图2是本公开根据一示例性实施例示出的另一种显示自定义控件信息的方法流程图。图3-1是本公开根据一示例性实施例示出的一种显示自定义控件信息的场景示意图。图3-2是本公开根据一示例性实施例示出的另一种显示自定义控件信息的场景示意图。图4是本公开根据一示例性实施例示出的另一种显示自定义控件信息的方法流程图。图5是本公开根据一示例性实施例示出的另一种显示自定义控件信息的方法流程图。图6是本公开根据一示例性实施例示出的另一种显示自定义控件信息的方法流程图。图7是本公开根据一示例性实施例示出的另一种显示自定义控件信息的方法流程图。图8是本公开根据一示例性实施例示出的一种view控件的结构示意图。图9是本公开根据一示例性实施例示出的一种显示自定义控件信息的装置框图。图10是本公开根据一示例性实施例示出的另一种显示自定义控件信息的装置框图。图11是本公开根据一示例性实施例示出的另一种显示自定义控件信息的装置框图。图12是本公开根据一示例性实施例示出的另一种显示自定义控件信息的装置框图。图13是本公开根据一示例性实施例示出的另一种显示自定义控件信息的装置框图。图14是本公开根据一示例性实施例示出的另一种显示自定义控件信息的装置框图。图15本公开根据一示例性实施例示出的一种移动终端的一结构框图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。在本公开实施例中,涉及到的执行主体包括:移动终端和服务端。上述移动终端可以是智能手机、pda(personaldigitalassistant,个人数字助理)、平板电脑、可穿戴设备等电子设备。该移动终端上安装有客户端软件,该客户端软件提供有供开发人员查看开发界面信息的人机交互接口。上述服务端可以是应用服务器等设备。在具体实现过程中,移动终端与服务端,各自独立,同时又相互联系,共同实现本公开实施例提供的技术方案。为了便于描述,下面从移动终端的角度出发,对本公开实施例进行介绍。参照图1根据一示例性实施例示出的一种显示自定义控件信息的方法流程图,所述方法可以包括以下步骤:在步骤11中,获取用于请求打开客户端软件开发界面的请求信息;假设上述移动终端为智能手机,该智能手机上安装有至少一款客户端软件,该客户端软件可以是一款已经发布的混淆版本软件,也可以是处于正在开发阶段的未经版本混淆的软件。假设上述客户端软件为第一app,该第一app的页面中提供有预设人机交互接口,通过该人机交互接口可以接收用户一般是开发人员输入的请求信息,该请求信息用于请求移动终端显示当前客户端软件的开发界面,以便开发人员可以查看该第一app的开发界面信息,如自定义控件的类名、id等开发人员关注的信息。android控件里有个基类叫view,客户端软件ui(userinterface,用户界面)中的模块内容都是通过该view控件进行绘制的。客户端软件在正式发布前一般会基于原始开发版本进行版本混淆。所谓客户端软件版本的混淆是在开发软件调试成功后,为了去掉不必要的代码,减小代码程序(即软件)体大小的过程,比如,一个客户端软件的原始大小是10m,其混淆版本可能缩小为5m,从而减少软件的下载数据量及传输过程中的误码率。在上述版本混淆过程中,view控件的混淆规则是:继承自view控件的构造函数都不混淆。由于自定义控件的构造函数的名字与该自定义控件的类名相同,若构造函数不混淆,在客户端软件的正式混淆版本中,该自定义控件的类名也不混淆。即,继承自view控件的子控件的类名在任何版本的客户端软件中都不会被混淆。基于此,开发人员可以根据显示的类名快速查找该自定义控件的源程序代码。该步骤11是用户请求移动终端显示自定义控件目标信息如类名的过程。关于移动终端如何获取上述请求信息,可以参见图2根据一示例性实施例示出的另一种显示自定义控件信息的方法流程图,上述步骤11可以包括:在步骤111中,通过预设接口检测到预设触发信息时,提供信息验证接口;如上,该预设接口可以是上述预设人机交互接口,比如是第一app页面的预设位置设置的预设按钮,当智能手机检测到第一app中的预设按钮被触发时,可以提供信息验证接口,例如,在第一app的显示界面中弹出一个预设窗口,该预设窗口中设置有要求用户输入待验证信息的人机交互接口,比如,请当前用户输入用户名、密码等信息的文本输入框。在步骤112中,通过所述信息验证接口获取待验证信息并对所述请求验证信息进行信息验证;智能手机接收到当前用户通过上述信息验证接口输入的待验证信息后,上述待验证信息例如是账户名+密码,智能手机在本地或发送给远程服务器对当前用户进行鉴权。根据相关知识,鉴于信息安全考虑,一个客户端软件的开发界面仅供经授权的少部分人查看,比如该客户端软件的开发人员。每个具有查看权限的开发人员具有唯一的账户和密码。当开发人员想要使用移动终端如智能手机随时随地查看开发界面信息时,可以输入个人的授权信息。在步骤113中,若所述待验证信息通过所述信息验证,获取所述请求信息。同上,如果客户端软件通过当前用户的信息验证,说明当前用户是具有查看开发界面权限的用户。之后,可以按照相关技术接收用户输入的请求信息,该请求信息用于告知客户端软件想要查看的指定页面以及该页面中各个自定义控件的相关信息。在步骤12中,根据所述请求信息绘制页面中自定义控件的目标信息,所述目标信息至少包括自定义控件的类名。该步骤12涉及对客户端软件开发界面的显示页面进行绘制的过程。根据相关知识,任何出现在屏幕上的视图都是经过科学的绘制流程进行绘制后才能显示出来。以目标信息是类名为例,在安卓系统中,一个自定义控件对应一个类。类是具有相同属性和服务(方法)的一组对象的集合。对象是系统中用来描述客观事物的一个实体,是构成系统的一个基本单位。一个对象由一组属性和对这组属性进行操作的一组服务(方法)组成。上述自定义控件就是一个对象。在java程序中,一个类的程序文档即该类的源程序代码可以表示为:类名.java。例如,一个类的程序文档为person.java,相应的,类名为person。反之,若知道一个对象如自定义控件的类名,就可以查找到该对象的源代码。因此,对于开发人员来说,若可以快速获知一个自定义控件的类名,就可以快速找到该类的源代码,通过上述方式可以快速查找源代码,若该源代码出现了错误,可以快速修复源代码。本公开的目的在于,采用预设绘制方法在绘制自定义控件时可以将该自定义控件的类名绘制出来,使其显示在最上层,使得当前用户如开发人员可以在客户端软件的显示界面中看到自定义控件的类名等目标信息。本公开中,上述步骤12的实施至少可以包括以下两种情况:第一种情况,绘制页面中各个自定义控件的目标信息根据所述请求信息,安装客户端软件的移动终端获取服务端返回的客户端软件开发界面对应的页面报文。移动终端解析所述页面报文,从中获取页面中各个模块的模块数据,每个模块对应一个自定义控件,上述模块数据中包括上述待显示的目标信息,比如该模块使用的自定义控件的类名。假设当前页面包括4个模块,相应的,该页面使用了4个自定义控件,根据相关知识,自定义控件可以理解为ui(userinterface,用户界面)上绘制出的模块的样式。上述各个自定义控件的类型可能相同,也可能不同。本公开实施例中,在绘制各个自定义控件时,可以按照预设绘制方法在模块中绘制目标信息,使自定义控件的目标信息显示在模块试图的最上层,确保当前用户如开发人员可以直接看到该自定义空间的目标信息,比如类名,如图3-1所示,显示各个模块的名称。第二种情况,若页面中各模块的类型相同且目标信息也相同,在当前页面中合并显示上述目标信息参见图4根据一示例性实施例示出的另一种显示自定义控件信息的方法流程图,上述步骤12可以包括:在步骤121中,获取所述页面的自定义控件列表,所述自定义控件列表包括:各个模块的位置信息与自定义控件的控件类型的对应关系。本公开实施例中,客户端软件应上述请求信息,从服务端获取的页面报文中包括:模块数量和模块数据,其中,模块数量用于表示当前页面布局多少个模块。模块数据决定模块显示内容,上述模块数据可以包括:背景、文字、图片、模块id、模块类型、模块位置、目标信息等信息。在本公开一实施例中,上述模块数据至少包括:模块类型、模块位置信息、目标信息。其中,客户端软件可以根据上述模块类型确定当前模块使用的自定义控件的控件类型。据此,可以获得当前页面的自定义控件列表,该自定义控件列表包括:模块位置信息与自定义控件的控件类型的对应关系,示例性的,可以如表一所示:模块位置信息控件类型位置1string位置2enu位置3string位置4enu表一从表一可知,位于位置1处的模块使用的自定义控件的控件类型为:string,以此类推。在步骤122中,根据所述自定义控件列表绘制所述页面中所述自定义控件的目标信息。本公开实施例中,可以根据页面中各个自定义控件的控件类型和目标信息内容确定目标信息的绘制方式。参见图5根据一示例性实施例示出的另一种显示自定义控件信息的方法流程图,上述步骤122可以包括:在步骤1221中,根据所述自定义控件列表确定所述各个自定义控件的控件类型是否相同;根据自定义控件列表记录的各模块对应的自定义控件的控件类型,可以确定当前页面中各个自定义控件的控件类型是否一致,若一致,执行下述步骤1222。在步骤1222中,若所述各个自定义控件的控件类型相同,确定所述各个自定义控件的目标信息是否相同;本公开实施例中,客户端可以确定页面中包括的各个模块的自定义控件类型是否相同。仍假设当前页面包括4个模块,可以根据各模块的模块类型确定各个自定义控件的控件类型是否相同,若各个自定义控件的控件类型相同,需要进一步确定各自定义控件的目标信息是否相同。若各自定义控件的目标信息也相同,执行下述步骤1223。在步骤1223中,若所述各个自定义控件的目标信息相同,在所述页面的预设位置绘制所述目标信息。若当前页面中各模块对应的自定义控件的控件类型均相同,各个自定义控件的目标信息也相同,比如类名。则,本公开实施例中,可以在当前页面的预设位置绘制所述目标信息,绘制结果是在当前页面的预设位置显示一个目标信息,该目标信息代表当前页面中各个自定义控件的目标信息。示例性的,参见图3-2根据一示例性实施例示出的另一种显示自定义控件信息的示意图,目标信息为类名,4个模块对应的自定义控件类型相同,在绘制出各个模块的内容之后,可以在页面右上方绘制出各个模块对应自定义控件的类名。参见图6根据一示例性实施例示出的另一种显示自定义控件信息的方法流程图,在图5所示实施例的基础上,上述步骤122还可以包括:在步骤1224中,若所述各个自定义控件的控件类型不同或者所述各个自定义控件的目标信息不同,在所述页面中绘制各个自定义控件的所述目标信息。反之,若页面中各个模块对应的自定义控件的控件类型不同,即步骤1221的否定判断结果,或者,虽然自定义控件的控件类型相同,但待显示的目标信息不同,即步骤1222的否定判断结果,在模块内容绘制时针对各个自定义控件单独绘制目标信息。例如,在控件类型相同的情况下,若请求显示的目标信息为控件id,或者,类名+id,由于各个模块的id不同,各个控件的id也不同,则各个控件的目标信息也不同,在模块内容绘制时需要针对各个自定义控件单独绘制目标信息。若控件类型不同,示例性的,仍以一个页面包括4个模块为例,绘制结果可以参见图3-1所示,此时,各个模块中显示的类名不同。上述示例仅说明了各个模块的自定义控件的控件类型或目标信息均不相同的情况,可以预知的是,若页面中位置相邻的两个或多个模块的控件类型和目标信息均相同时,也可以局部合并显示,例如,上述示例中,若模块1和模块2的控件类型和目标信息均相同,可以在两个模块所在页面区域的预设位置绘制目标信息,当用户在上述预设位置看到自定义控件的目标信息时,根据预置规则可知,上述目标信息属于两个模块即模块1和模块2对应的自定义控件的目标信息,并且可知,上述两个模块对应的自定义控件的控件类型相同。关于上述各实施例中对目标信息的绘制,可以参照图7根据一示例性实施例示出的另一种显示自定义控件信息的方法流程图,可以包括:在步骤1201中,通过继承于安卓系统原生控件的自定义基类提供的至少一种抽象方法从所述自定义控件获取目标信息对应的目标数据;其中,所述自定义控件继承于所述自定义基类;参见图8根据一示例性实施例示出的一种view控件的结构示意图,在安卓系统中,view控件作为一种基类,其下级节点分布有类的容器控件viewgroup,更下一级分布有三种安卓系统原生的控件linearlayout(线性布局)、framelayout(框架布局)、relativelayout(相对布局),相关技术中还可以更多。开发人员基于安卓系统开发一个客户端软件或客户端软件的组成部分时,会设置很多自定义控件,本公开中,开发人员可以首先基于上述操作系统的原生控件自定义至少一种基类,如图8所示,设置了三个自定义基类,名称分别为:custombaselinearlayout、custombaseframelayout、custombaserelativelayout;分别继承自上述三个原生控件:linearlayout、framelayout、relativelayout。每个上述自定义基类继承有多个自定义控件,例如,编号分别为21~2n的n个自定义控件继承于自定义基类custombaseframelayout。本公开实施例中,自定义基类中可以提供一种预设抽象方法,该抽象方法作为一种接口可以从继承于该自定义基类的自定义控件中,获取待显示目标信息对应的目标数据。上述预设抽象方法可以是用于打印类名的抽象方法,表示为name()。在软件工程中,若父类中设置有抽象方法,则继承于该父类的各个子类都会实现该抽象方法。如上示例,并结合图8所示,自定义基类custombaseframelayout属于自定义控件21~2n的父类,则自定义控件21~2n属于自定义基类custombaseframelayout的子类。假设自定义基类custombaseframelayout提供了一种抽象方法如name(),则各自定义控件21~2n作为上述自定义基类custombaseframelayout的子类可以实现上述打印类名的方法,获取类名对应的数据即目标数据,上述目标数据预先填充于自定义控件中。在本公开一实施例中,若每写一个类即自定义控件定义一个预设抽象方法,虽然可以实现类名的打印,但会代码冗余很多,导致代码很庞大。且若后续发现代码错误,需要重复修改多个子类对应的代码。本公开中,通过设置继承于安卓系统原生控件的自定义基类,只需在自定义基类提供预设抽象方法,所以继承于该自定义基类的子类即自定义控件都要实现上述预设抽象方法,比如打印类名的方法,即可实现所有子类类名的打印,若在程序开发过程中发现预设抽象方法的代码错误,在基类中可实现对预设抽象方法的快速修改或纠错,避免代码冗余。例如,有10个自定义控件继承于一个自定义基类,若发现目标消息打印错误,比如,类名打印错误,只需在上述自定义基类即父类中修改类名打印方法的构造函数即可,无需分别修改10个自定义控件即子类的类名打印方法的构造函数,本公开实施例通过预设抽象方法的重用,可以避免代码冗余,也方便预设抽象方法的修改和纠错,从而提高代码修复效率,避免遗漏修复。在步骤1202中,通过重写所述自定义基类的预设绘制方法,依次绘制所述自定义基类的信息和所述自定义控件的所述目标信息。本公开中,上述重写后预设绘制方法的绘制规则是:首先绘制父控件的信息再绘制子控件的信息,确保子控件的目标信息能够被显示。在本公开一实施例中,上述在自定义基类中被重写的预设绘制方法为dispatchdraw(canvascanvas)方法,其中,第一个canvas代表对象的类名为画布,第二个canvas表示类名参数,即表示在哪个画布上进行绘制。关于为何重写dispatchdraw()方法,需要首先了解相关技术中view控件的绘制过程:任何一个出现在屏幕上视图,都是经过科学的绘制流程后才能显示出来的。每一个视图的绘制过程都必须经历三个最主要的阶段,即onmeasure()、onlayout()、ondraw()。其中,onmeasure()方法用于测量视图的大小;onlayout()方法,用于在measure过程结束后,给视图进行布局,也就是确定视图的位置。ondraw()方法,用于在measure和layout过程结束后,对视图进行绘制。上述视图可以理解为控件。在对控件内容进行绘制的过程中,对于有背景的控件,其绘制过程为首先调用ondraw(),然后调用dispatchdraw()方法,dispatchdraw()方法主要是分发给子控件进行绘制。但是,对于容器控件viewgroup的绘制,当它没有背景时直接调用的是dispatchdraw()方法,绕过了ondraw()方法。为了确保绘制出的有背景或无背景的自定义控件都可以显示上述目标信息,本公开对继承自viewgroup控件的自定义基类中的dispatchdraw()方法进行了重写,使其可以按照先后顺序绘制父控件信息和子控件信息。如图3-1所示,示例性的,自定义基类custombaseframelayout调用重写后的dispatchdraw()方法进行绘制时,首先绘制其自身的信息,再绘制下属自定义控件的信息。在上述绘制过程中,后序绘制的内容会盖在在先绘制图层之上,也就是说子控件的信息会位于父控件信息所在图层之上,因此,本公开采用上述重写后的dispatchdraw()方法,可以确保最后绘制出的自定义控件信息被显示出来,上述自定义控件信息包括上述目标信息。综上,采用本公开提供的显示自定义控件信息的方法,移动终端可以获取用户发送的预设请求信息,该请求信息用于请求打开客户端软件开发界面,然后根据上述请求信息绘制页面中自定义控件的目标信息,该目标信息至少包括自定义控件的类名,使得当前用户例如客户端软件的开发人员可以通过移动终端随时随地查询目标自定义控件的信息,方便该开发人员依据上述目标信息及时查找该自定义控件的源代码及对该自定义控件的源代码进行修复等操作,进而提高程序开发人员的开发效率,增强移动终端的智能化程度,提高用户使用体验。对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本公开并不受所描述的动作顺序的限制,因为依据本公开,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本公开所必须的。与前述应用功能实现方法实施例相对应,本公开还提供了应用功能实现装置及相应的终端的实施例。参见图9根据一示例性实施例示出的一种显示自定义控件信息的装置框图,所述装置可以包括:请求模块21,被配置为获取用于请求打开客户端软件开发界面的请求信息;显示模块22,被配置为根据所述请求信息绘制页面中自定义控件的目标信息,所述目标信息至少包括自定义控件的类名。参见图10根据一示例性实施例示出的另一种显示自定义控件信息的装置框图,在图9所示装置实施例的基础上,上述请求模块21可以包括:触发子模块211,被配置为通过预设接口检测到预设触发信息时,提供信息验证接口;校验子模块212,被配置为通过所述信息验证接口获取待验证信息并对所述待验证信息进行信息验证;请求子模块213,被配置为在所述待验证信息通过所述信息验证的情况下,获取所述请求信息。参见图11根据一示例性实施例示出的另一种显示自定义控件信息的装置框图,在图9所示装置实施例的基础上,所述显示模块22可以包括:控件列表获取子模块221,被配置为获取所述页面的自定义控件列表,所述自定义控件列表包括:各个模块的位置信息与自定义控件的控件类型的对应关系;信息绘制子模块222,被配置为根据所述自定义控件列表绘制所述页面中所述自定义控件的目标信息。参见图12根据一示例性实施例示出的另一种显示自定义控件信息的装置框图,在图11所示装置实施例的基础上,所述信息绘制子模块222可以包括:类型确定单元2221,被配置为根据所述自定义控件列表确定所述各个自定义控件的控件类型是否相同;信息确定单元2222,被配置为在所述各个自定义控件的控件类型相同的情况下,确定所述各个自定义控件的目标信息是否相同;第一绘制单元2223,被配置为在所述各个自定义控件的目标信息相同的情况下,在所述页面的预设位置绘制所述目标信息。参见图13根据一示例性实施例示出的另一种显示自定义控件信息的装置框图,在图12所示装置实施例的基础上,所述信息绘制子模块222还可以包括:第二绘制单元2224,被配置为在所述各个自定义控件的控件类型不同或者所述各个自定义控件的目标信息不同的情况下,在所述页面中绘制各个自定义控件的所述目标信息。参见图14根据一示例性实施例示出的另一种显示自定义控件信息的装置框图,在图9所示装置实施例的基础上,所述显示模块22可以包括:目标数据获取子模块2201,被配置为通过继承于安卓系统原生控件的自定义基类提供的至少一种抽象方法,从所述自定义控件获取所述目标信息对应的目标数据;其中,所述自定义控件继承于所述自定义基类;目标信息绘制子模块2202,被配置为通过重写所述自定义基类的预设绘制方法,依次绘制所述自定义基类的信息和所述自定义控件的所述目标信息。在本公开一装置实施例中,所述预设绘制方法可以是:经过重写的dispatchdraw()方法。其绘制过程为,首先绘制根对象对应的页面原始内容,再绘制页面中自定义控件的目标信息,确保整个页面绘制完成后,各自定义控件的预设开发信息比如自定义控件的类名,在页面中可视。可知的是,在本公开其他实施例中,上述第一绘制单元2223、第二绘制单元2224也可以进一步包括上述目标数据获取子模块2201及目标信息绘制子模块2202。关于上述实施例中的装置,其中各个模块执行触发的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。此外,本公开还提供了一种移动终端,该移动终端可以包括:处理器和用于存储处理器可执行指令的存储器;其中,处理器被配置为:获取用于请求打开客户端软件开发界面的请求信息;根据所述请求信息绘制页面中自定义控件的目标信息,所述目标信息至少包括自定义控件的类名。还需说明的是,存储器存储的其他程序,具体参见前面方法流程中的描述,此处不再赘述,处理器还用于执行存储器存储的其他程序。图9是本公开根据一示例性实施例示出的一种移动终端的一结构框图。参照图15,例如,设备1500可以是具有路由功能的移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。设备1500包括以下一个或多个组件:处理组件1502,存储器1504,电源组件1509,多媒体组件1508,音频组件1510,输入/输出(i/o)的接口1512,传感器组件1514,以及通信组件1516。处理组件1502通常控制设备1500的整体触发,诸如与显示,电话呼叫,数据通信,相机触发和记录触发相关联的触发。处理组件1502可以包括一个或多个处理器1520来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件1502可以包括一个或多个模块,便于处理组件1502和其他组件之间的交互。例如,处理组件1502可以包括多媒体模块,以方便多媒体组件1508和处理组件1502之间的交互。存储器1504被配置为存储各种类型的数据以支持在设备1500的触发。这些数据的示例包括用于在设备1500上触发的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器1504可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。电源组件1509为设备1500的各种组件提供电力。电源组件1509可以包括电源管理系统,一个或多个电源,及其他与为设备1500生成、管理和分配电力相关联的组件。多媒体组件1508包括在设备1500和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动触发相关的持续时间和压力。在一些实施例中,多媒体组件1508包括一个前置摄像头和/或后置摄像头。当设备1500处于触发模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。音频组件1510被配置为输出和/或输入音频信号。例如,音频组件1510包括一个麦克风(mic),当设备1500处于触发模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器1504或经由通信组件1516发送。在一些实施例中,音频组件1510还包括一个扬声器,用于输出音频信号。i/o接口1512为处理组件1502和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。传感器组件1514包括一个或多个传感器,用于为设备1500提供各个方面的状态评估。例如,传感器组件1514可以检测到设备1500的打开/关闭状态,组件的相对定位,例如组件为设备1500的显示器和小键盘,传感器组件1514还可以检测设备1500或设备1500一个组件的位置改变,用户与设备1500接触的存在或不存在,设备1500方位或加速/减速和设备1500的温度变化。传感器组件1514可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件1514还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件1514还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。通信组件1516被配置为便于设备1500和其他设备之间有线或无线方式的通信。设备1500可以接入基于通信标准的无线网络,如wifi,2g或3g,或它们的组合。在一个示例性实施例中,通信组件1516经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件1516还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。在示例性实施例中,设备1500可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器1504,上述指令可由设备1500的处理器1520执行以完成上述方法。例如,非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。一种非临时性计算机可读存储介质,当存储介质中的指令由设备的处理器执行时,使得设备能够执行一种显示自定义控件信息的方法,该方法包括:获取用于请求打开客户端软件开发界面的请求信息;根据所述请求信息绘制页面中自定义控件的目标信息,所述目标信息至少包括自定义控件的类名。本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本
技术领域
中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1