CN111796897A - 页面展示方法、装置、存储介质及电子设备 - Google Patents
页面展示方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN111796897A CN111796897A CN202010635734.2A CN202010635734A CN111796897A CN 111796897 A CN111796897 A CN 111796897A CN 202010635734 A CN202010635734 A CN 202010635734A CN 111796897 A CN111796897 A CN 111796897A
- Authority
- CN
- China
- Prior art keywords
- page
- target widget
- new page
- display
- error 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 230000006870 function Effects 0.000 claims description 46
- 238000001514 detection method Methods 0.000 claims description 32
- 230000005856 abnormality Effects 0.000 claims description 19
- 238000007667 floating Methods 0.000 claims description 19
- 238000010276 construction Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 8
- 230000000694 effects Effects 0.000 abstract description 9
- 230000002093 peripheral effect Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 8
- 244000035744 Hura crepitans Species 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000725 suspension Substances 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
Images
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0718—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an object-oriented system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本公开关于一种页面展示方法、装置、存储介质及电子设备,属于计算机技术领域。所述方法包括:检测到用户界面中包括的目标微件发生错误,获取所述目标微件的错误信息,其中,所述用户界面由多个微件组成;新建一个独立于所述目标微件的新页面;通过所述新页面展示所述目标微件的错误信息。由于新建的新页面不依赖于目标微件,与目标微件完全独立,因此信息展示不受目标微件尺寸的限制,较为灵活,可以完整展示目标微件的错误信息,实现较佳的页面展示效果。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种页面展示方法、装置、存储介质及电子设备。
背景技术
用户界面(UI)通常可以由各种微件(Widget)组成。例如,基于谷歌开发的Flutter这个跨平台移动用户界面框架实现的用户界面,就是由各种微件(Widget)组成。
在Flutter框架下,检测到用户界面呈现的页面中包括的Widget发生错误时,Flutter会以ErrorWidget来替换发生错误的Widget,并通过ErrorWidget展示该Widget的错误信息。
针对上述页面展示方式,ErrorWidget的尺寸大小受限于发生错误的Widget本身的尺寸,可能无法展示完整的错误信息,导致出现用户可能无法看到完整的错误信息的问题,该种页面展示方式的效果较差。
发明内容
本公开提供一种页面展示方法、装置、存储介质及电子设备,由于新建的新页面不依赖于目标微件,与目标微件完全独立,因此信息展示不受目标微件尺寸的限制,较为灵活,可以完整展示目标微件的错误信息,实现较佳的页面展示效果。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种页面展示方法,包括:
检测到用户界面中包括的目标微件发生错误,获取所述目标微件的错误信息,其中,所述用户界面由多个微件组成;
新建一个独立于所述目标微件的新页面;
通过所述新页面展示所述目标微件的错误信息。
在一种可能的实现方式中,所述目标微件的错误信息包括:所述目标微件发生错误时的调用栈信息;所述方法还包括:
调用预设的第一页面构建工具,获取用户输入的自定义页面内容;其中,所述自定义页面内容用于指示所述目标微件发生错误;
以覆盖所述调用栈信息的展示形式,通过所述新页面展示所述自定义页面内容。
在一种可能的实现方式中,所述通过所述新页面展示所述目标微件的错误信息,包括:
响应于所接收的全屏展示指令,将所述新页面进行全屏展示;通过全屏展示的所述新页面展示所述错误信息;或,
响应于所接收的悬浮展示指令,以置于顶层的显示方式,将所述新页面在电子设备的显示屏上的指定区域进行悬浮展示;通过悬浮展示的所述新页面展示所述错误信息。
在一种可能的实现方式中,所述方法还包括:
在与所述用户界面对应的目标应用中,设置异常检测模块;所述异常检测模块被设置于所述目标应用的入口函数对应的代码模块中;
在所述目标应用运行过程中,通过所述异常检测模块检测确定所述目标微件。
在一种可能的实现方式中,所述获取所述目标微件的错误信息,包括:
通过所述异常检测模块中包括的异常捕获函数,获取所述目标微件的错误信息。
在一种可能的实现方式中,所述通过所述新页面展示所述目标微件的所述错误信息,包括:
获取电子设备的显示屏尺寸;
根据所述错误信息的数据量以及所述显示屏尺寸,确定所述新页面的尺寸;
按照确定的尺寸在所述电子设备的显示屏上展示所述新页面;
其中,所述新页面上展示有所述目标微件发生错误时生成的完整错误信息。
在一种可能的实现方式中,所述新建一个独立于所述目标微件的新页面,包括:
调用预设的页面启动函数,新建一个独立于所述目标微件的新页面;
其中,所述页面启动函数通过预设的第二页面构建工具创建所述新页面,并通过导航工具的推送函数控制页面跳转至所述新页面。
根据本公开实施例的第二方面,提供一种页面展示装置,包括:
第一获取单元,被配置为检测到用户界面中包括的目标微件发生错误,获取所述目标微件的错误信息,其中,所述用户界面由多个微件组成;
创建单元,被配置为新建一个独立于所述目标微件的新页面;
展示单元,被配置为通过所述新页面展示所述目标微件的错误信息。
在一种可能的实现方式中,所述目标微件的错误信息包括:所述目标微件发生错误时的调用栈信息;所述装置还包括:
第二获取单元,被配置为调用预设的第一页面构建工具,获取用户输入的自定义页面内容;其中,所述自定义页面内容用于指示所述目标微件发生错误;
所述展示单元,还被配置为以覆盖所述调用栈信息的展示形式,通过所述新页面展示所述自定义页面内容。
在一种可能的实现方式中,所述展示单元,被配置为响应于所接收的全屏展示指令,将所述新页面进行全屏展示;通过全屏展示的所述新页面展示所述错误信息;或,响应于所接收的悬浮展示指令,以置于顶层的显示方式,将所述新页面在电子设备的显示屏上的指定区域进行悬浮展示;通过悬浮展示的所述新页面展示所述错误信息。
在一种可能的实现方式中,所述装置还包括:
检测单元,被配置为在与所述用户界面对应的目标应用中,设置异常检测模块;所述异常检测模块被设置于所述目标应用的入口函数对应的代码模块中;在所述目标应用运行过程中,通过所述异常检测模块检测确定所述目标微件。
在一种可能的实现方式中,所述第一获取单元,被配置为通过所述异常检测模块中包括的异常捕获函数,获取所述目标微件的错误信息。
在一种可能的实现方式中,所述展示单元,被配置为获取电子设备的显示屏尺寸;根据所述错误信息的数据量以及所述显示屏尺寸,确定所述新页面的尺寸;按照确定的尺寸在所述电子设备的显示屏上展示所述新页面;其中,所述新页面上展示有所述目标微件发生错误时生成的完整错误信息。
在一种可能的实现方式中,所述创建模块,被配置为调用预设的页面启动函数,新建一个独立于所述目标微件的新页面;
其中,所述页面启动函数通过预设的第二页面构建工具创建所述新页面,并通过导航工具的推送函数控制页面跳转至所述新页面。
根据本公开实施例的第三方面,提供一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如上述第一方面所述的页面展示方法。
根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如上述第一方面所述的页面展示方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,所述计算机程序产品中的指令由电子设备的处理器执行时,使得电子设备能够执行如上述第一方面所述的页面展示方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
检测到用户界面中包括的目标微件发生错误时,本公开实施例会新建一个独立于目标微件的新页面,并通过该新页面来展示目标微件的错误信息。由于该新页面不依赖于目标微件,与目标微件完全独立,因此信息展示不受目标微件尺寸的限制,较为灵活,可以完整展示目标微件的错误信息,实现较佳的页面展示效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种页面展示方法涉及的实施环境的示意图。
图2是根据一示例性实施例示出的一种页面展示方法的流程图。
图3是根据一示例性实施例示出的一种页面展示方法的流程图。
图4是根据一示例性实施例示出的一种页面示意图。
图5是根据一示例性实施例示出的一种页面展示方法的流程图。
图6是根据一示例性实施例示出的一种页面示意图。
图7是根据一示例性实施例示出的一种页面展示装置的框图。
图8是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本公开所涉及的用户信息可以为经用户授权或者经过各方充分授权的信息。
在对本公开实施例进行详细地解释说明之前,先对本公开实施例可能涉及到的一些缩略语或术语进行介绍。
Widget:可以称之为微件或组件。
其中,Flutter是谷歌开发的一款跨平台移动UI框架,可以快速在ios操作***和Android操作***上构建高质量的原生用户界面,由于Flutter可以媲美原生的性能,因此已经逐渐被应用到项目中,比如用户利用Flutter可以高效构建多平台精美应用。
Flutter的中心思想是用Widget构建UI。即,Flutter的核心设计思想便是一切即是Widget。在Flutter的世界里,包括视图(View)、控制器(Controller)、活动(Activity)、应用(Application)、布局(Layout)等在内的概念都建立在Widget之上。
其中,从Flutter的架构图中可以看出Widget是整个视图描述的基础。即,Widget是Flutter功能的抽象描述,是视图的配置信息,同样也是数据的映射,是Flutter开发框架中最基本的概念。与其他将View、Controller、Activity、Application和Layout等属性分离的框架不同,在Flutter中这些都是Widget。
示例性地,Widget可以被定义为:一个结构元素(如按钮);一个文本样式元素(如字体或颜色等)等等,本公开实施例对此不进行具体限定。
下面对本公开实施例提供的页面展示方法涉及的实施环境进行介绍。
参见图1,该实施环境包括:用户101和电子设备102。
其中,电子设备102用于执行本公开实施例提供的页面展示方法。示例性地,电子设备102可以为具有显示屏的计算机设备。
示例性地,电子设备102通常情况下可以为移动式终端。
在一种可能的实现方式中,移动式终端包括但不限于:智能手机、平板电脑、笔记本电脑、电子阅读器、MP3播放器(MovingPicture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器等,本公开实施例对此不进行具体限定。
基于上述的实施环境,本公开实施例提供了一种个性化的页面展示方案,即当用户界面中包括的Widget发生错误时,该方案会新建一个新页面,且该新页面独立于发生错误的Widget,所以该新页面的尺寸大小完全不受发生错误的Widget的尺寸大小限制,这解决了相关技术中在使用ErrorWidget替换发生错误的Widget时,由于ErrorWidget的尺寸大小受发生错误的Widget限制,即ErrorWidget的最大尺寸等于发生错误的Widget本身的尺寸,如果出错的Widget尺寸很小,那么ErrorWidget可能无法展示完整的错误信息的问题。另外,该新页面上展示的内容还支持用户进行自由的个性化定制。另外,该新页面的展示形式也支持用户进行自由的个性化定制,例如全屏展示或者中间悬浮展示等,以达到提升用户体验的目的。
下面通过以下实施例对本公开实施例提供的页面展示方案进行详细地解释说明。
图2是根据一示例性实施例示出的一种页面展示方法的流程图,如图2所示,该方法用于图1所示的电子设备中,包括以下步骤。
在步骤201中,检测到用户界面中包括的目标微件发生错误,获取目标微件的错误信息,其中,该用户界面由多个微件组成。
在步骤202中,新建一个独立于目标微件的新页面。
在步骤203中,通过该新页面展示目标微件的错误信息。
本公开实施例提供的方法,检测到用户界面中包括的目标微件发生错误时,本公开实施例会新建一个独立于目标微件的新页面,并通过该新页面来展示目标微件的错误信息。由于该新页面不依赖于目标微件,与目标微件完全独立,因此信息展示不受目标微件尺寸的限制,较为灵活,可以完整展示目标微件的错误信息,实现较佳的页面展示效果。
在一种可能的实现方式中,所述目标微件的错误信息包括:所述目标微件发生错误时的调用栈信息;所述方法还包括:
调用预设的第一页面构建工具,获取用户输入的自定义页面内容;其中,所述自定义页面内容用于指示所述目标微件发生错误;
以覆盖所述调用栈信息的展示形式,通过所述新页面展示所述自定义页面内容。
在一种可能的实现方式中,所述通过所述新页面展示所述目标微件的错误信息,包括:
响应于所接收的全屏展示指令,将所述新页面进行全屏展示;通过全屏展示的所述新页面展示所述错误信息;或,
响应于所接收的悬浮展示指令,以置于顶层的显示方式,将所述新页面在电子设备的显示屏上的指定区域进行悬浮展示;通过悬浮展示的所述新页面展示所述错误信息。
在一种可能的实现方式中,所述方法还包括:
在与所述用户界面对应的目标应用中,设置异常检测模块;所述异常检测模块被设置于所述目标应用的入口函数对应的代码模块中;
在所述目标应用运行过程中,通过所述异常检测模块检测确定所述目标微件。
在一种可能的实现方式中,所述获取所述目标微件的错误信息,包括:
通过所述异常检测模块中包括的异常捕获函数,获取所述目标微件的错误信息。
在一种可能的实现方式中,所述通过所述新页面展示所述目标微件的所述错误信息,包括:
获取电子设备的显示屏尺寸;
根据所述错误信息的数据量以及所述显示屏尺寸,确定所述新页面的尺寸;
按照确定的尺寸在所述电子设备的显示屏上展示所述新页面;
其中,所述新页面上展示有所述目标微件发生错误时生成的完整错误信息。
在一种可能的实现方式中,所述新建一个独立于所述目标微件的新页面,包括:
调用预设的页面启动函数,新建一个独立于所述目标微件的新页面;
其中,所述页面启动函数通过预设的第二页面构建工具创建所述新页面,并通过导航工具的推送函数控制页面跳转至所述新页面。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再赘述。
图3是根据一示例性实施例示出的一种页面展示方法的流程图,如图3所示,该方法用于图1所示的电子设备中,包括以下步骤。
在步骤301中,在与用户界面对应的目标应用中,设置异常检测模块;其中,该异常检测模块被设置于目标应用的入口函数对应的代码模块中;在目标应用运行过程中,通过该异常检测模块检测到用户界面中包括的目标微件发生错误。
在本公开实施例中,将发生错误的微件称之为目标微件。上述目标应用指代Flutter应用程序,该目标应用在运行时用于启动用户界面。其中,Flutter启动的用户界面通常是由多个Widget组成,这些Widget通常以一个树形结构(Widget树)来进行组织,当任意一个Widget发生错误时,Flutter会通过异常检测模块来捕获这种异常,并通过展示页面展示错误信息的方式来提醒用户,并帮助用户定位错误原因。
即,该目标应用中设置有异常检测模块,示例性地,该异常检测模块被设置于该目标应用的入口函数对应的代码模块中;这样,在目标应用运行过程中,便可以通过该异常检测模块来检测确定发生错误的目标微件。本公开通过在目标应用中设置异常检测模块,可以精准地检测到用户界面上发生错误的微件,即能够精准地捕获异常,为用户定位错误原因提供了便利。
在一种可能的实现方式中,该目标应用的入口函数是main函数,该异常检测模块是runZoned()方法,即可以将main函数的内部代码全部包含在runZoned()方法里面,以用于捕获异常。其中,runZoned()方法可以给执行对象指定一个Zone。而Zone表示一个代码执行的环境范围。为了方便理解,可以将Zone类比为一个代码执行沙箱,不同沙箱的之间是隔离的,沙箱可以捕获、拦截或修改一些代码行为,如Zone可以捕获所有未处理的异常。
在步骤302中,通过异常检测模块中包括的的异常捕获函数,获取目标微件的错误信息。
示例性地,该异常捕获函数是runZoned()方法的onError函数。即,目标应用在运行时产生的错误会被runZoned()方法的onError函数所捕获到,即onError函数会捕获到目标微件的错误信息。在一种可能的实现方式中,上述错误信息可以包括出错的各种信息,例如目标微件发生错误时的调用栈信息,以帮助用户定位错误原因,本公开实施例对此不进行具体限定。本公开通过异常检测模块中包括的异常捕获函数,可以精准地获取到发生错误的微件的错误信息,为用户定位错误原因提供了便利。
在步骤303中,新建一个独立于目标微件的新页面。
在本公开实施例中,当Widget发生错误时,即当onError函数捕获到错误信息时,会新建一个新页面CustomErrorPage。需要说明的是,由于新建的新页面完全独立于目标微件,因此该新页面的尺寸大小完全不受目标微件的尺寸大小限制,所以通过该新页面便可以展示完整的错误信息,那么用户也将能看到完整的错误信息,可以协助用户快速以及精确地定位错误原因。
作为一个示例,新建一个独立于目标微件的新页面,包括:调用预设的页面启动函数,新建一个独立于目标微件的新页面;其中,该页面启动函数通过预设的第二页面构建工具创建新页面,并通过导航工具的推送函数控制页面跳转至新页面。
示例性地,预设的页面启动函数可以是launchCustomePage函数,预设的第二页面构建工具可以是Material PageRoute函数的builder,导航工具可以为Navigator,该高航工具的推送函数即为Navigator.push函数,本公开实施例对此不进行具体限定。
其中,Material PageRoute函数可以创建用户想要显示在用户界面上的任何内容,而Navigator.push函数可以导航到新页面。
在步骤304中,通过该新页面展示目标微件的错误信息。
在一种可能的实现方式中,目标微件的错误信息包括:目标微件发生错误时的调用栈信息;即,CustomErrorPage默认展示目标微件发生错误时的调用栈信息,其中,图4为CustomErrorPage默认的一种展示形式。另外,如图4所示,该新页面上除了包括发生错误时的调用栈信息即错误堆栈之外,还可以包括错误简述,即显示在错误堆栈上面部分的内容,本公开实施例对此不进行具体限定。
需要说明的第一点是,本公开实施例可以支持用户进行自由的个性化定制,比如在页面展示形式上可以实现个性化定制。即,在一种可能的实现方式中,通过新页面展示目标微件的错误信息,包括但不限于如下两种方式:
3041、响应于所接收的全屏展示指令,将新页面进行全屏展示;通过全屏展示的新页面展示目标微件的错误信息。
针对该种方式,即用户触发了全屏展示操作,进而该新页面在电子设备的显示屏上进行全屏展示。
3042、响应于所接收的悬浮展示指令,以置于顶层的显示方式,将新页面在电子设备的显示屏上的指定区域进行悬浮展示;通过悬浮展示的新页面展示目标微件的错误信息。
针对该种方式,即用户触发了悬浮展示操作,进而该新页面在电子设备的显示屏上进行悬浮展示。其中,置于顶层的显示方式的含义是:在前端显示时,该新页面显示在所有图层的最前端,没有被任何图层所遮挡。另外,指定区域可以是电子设备的显示屏的中间部分或者上半部分或者下半部分,本公开实施例对此不进行具体限定。
基于以上描述可知,本公开实施例支持用户对该新页面的页面展示形式进行个性化定义,丰富了页面展示方式,用户体验佳。
需要说明的第二点是,为了使得该新页面既可以完整地展示错误信息,又避免该新页面对电子设备的显示屏进行过多的占用,还可以采取下述方式来计算该新页面的尺寸大小。即,在一种可能的实现方式中,通过新页面展示目标微件的错误信息,包括:获取电子设备的显示屏尺寸;根据目标微件的错误信息的数据量以及显示屏尺寸,确定该新页面的尺寸;按照确定的尺寸在电子设备的显示屏上展示该新页面;其中,该新页面上展示有目标微件发生错误时生成的完整错误信息。
通过该种措施,既可以使得该新页面能够完整地展示错误信息,又可以避免该新页面对电子设备的显示屏进行过多的占用,效果较佳。
本公开实施例提供的方法,检测到用户界面中包括的目标微件发生错误时,本公开实施例会新建一个独立于目标微件的新页面,并通过该新页面来展示目标微件的错误信息。由于该新页面不依赖于目标微件,与目标微件完全独立,因此信息展示不受目标微件尺寸的限制,较为灵活,可以完整展示目标微件的错误信息,实现较佳的页面展示效果。
在另一个实施例中,除了该新页面的页面展示形式支持用户进行个性化定制之外,本公实施例还支持用户对该页面的页面内容进行自由的个性化定制。换一种表达方式,本公实施例支持用户重新定义CustomErrorPage.builder,以覆盖如图4所示的默认页面内容(即错误信息),来实现自定义页面内容,以确保用户体验,使得页面对用户友好。即,在一种可能的实现方式中,在新建一个独立于目标微件的新页面之后,参见图5,本公开实施例还包括下述步骤305:
305、调用预设的第一页面构建工具,获取用户输入的自定义页面内容;其中,该自定义页面内容用于指示目标微件发生错误;以覆盖目标微件的调用栈信息的展示形式,通过该新页面展示自定义页面内容。
示例性地,上述预设的第一页面构建者工具为CustomErrorPage.builder。作为一个示例,自定义页面内容可以为诸如图6所示的“Flutter出错了”,本公开实施例对此不进行具体限定。
本公开实施例提供的方法,可以对该新页面展示的页面内容进行个性化定义,丰富了页面的展示方式。
图7是根据一示例性实施例示出的一种页面展示装置的框图。参照图7,该装置包括第一获取单元701,创建单元702,展示单元703。
第一获取单元701,被配置为检测到用户界面中包括的目标微件发生错误,获取所述目标微件的错误信息,其中,所述用户界面由多个微件组成;
创建单元702,被配置为新建一个独立于所述目标微件的新页面;
展示单元703,被配置为通过所述新页面展示所述目标微件的错误信息。
本公开实施例提供的装置,检测到用户界面中包括的目标微件发生错误时,会新建一个独立于目标微件的新页面,并通过该新页面来展示目标微件的错误信息。由于该新页面不依赖于目标微件,与目标微件完全独立,因此信息展示不受目标微件尺寸的限制,较为灵活,可以完整展示目标微件的错误信息,实现较佳的页面展示效果。
在一种可能的实现方式中,所述目标微件的错误信息包括:所述目标微件发生错误时的调用栈信息;所述装置还包括:
第二获取单元,被配置为调用预设的第一页面构建工具,获取用户输入的自定义页面内容;其中,所述自定义页面内容用于指示所述目标微件发生错误;
所述展示单元,还被配置为以覆盖所述调用栈信息的展示形式,通过所述新页面展示所述自定义页面内容。
在一种可能的实现方式中,所述展示单元,被配置为响应于所接收的全屏展示指令,将所述新页面进行全屏展示;通过全屏展示的所述新页面展示所述错误信息;或,响应于所接收的悬浮展示指令,以置于顶层的显示方式,将所述新页面在电子设备的显示屏上的指定区域进行悬浮展示;通过悬浮展示的所述新页面展示所述错误信息。
在一种可能的实现方式中,所述装置还包括:
检测单元,被配置为在与所述用户界面对应的目标应用中,设置异常检测模块;所述异常检测模块被设置于所述目标应用的入口函数对应的代码模块中;在所述目标应用运行过程中,通过所述异常检测模块检测确定所述目标微件。
在一种可能的实现方式中,所述第一获取单元,被配置为通过所述异常检测模块中包括的异常捕获函数,获取所述目标微件的错误信息。
在一种可能的实现方式中,所述展示单元,被配置为获取电子设备的显示屏尺寸;根据所述错误信息的数据量以及所述显示屏尺寸,确定所述新页面的尺寸;按照确定的尺寸在所述电子设备的显示屏上展示所述新页面;其中,所述新页面上展示有所述目标微件发生错误时生成的完整错误信息。
在一种可能的实现方式中,所述创建模块,被配置为调用预设的页面启动函数,新建一个独立于所述目标微件的新页面;
其中,所述页面启动函数通过预设的第二页面构建工具创建所述新页面,并通过导航工具的推送函数控制页面跳转至所述新页面。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图8示出了本公开一个示例性实施例提供的一种电子设备800的结构框图。通常,设备800包括有:处理器801和存储器802。
处理器801可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器801可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器801可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器801还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器802中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器801所执行以实现本公开中方法实施例提供的页面展示方法。
在一些实施例中,设备800还可选包括有:***设备接口803和至少一个***设备。处理器801、存储器802和***设备接口803之间可以通过总线或信号线相连。各个***设备可以通过总线、信号线或电路板与***设备接口803相连。具体地,***设备包括:显示屏805和电源808。
***设备接口803可被用于将I/O(Input/Output,输入/输出)相关的至少一个***设备连接到处理器801和存储器802。在一些实施例中,处理器801、存储器802和***设备接口803被集成在同一芯片或电路板上;在一些其他实施例中,处理器801、存储器802和***设备接口803中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
显示屏804用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏804是触摸显示屏时,显示屏804还具有采集在显示屏804的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器801进行处理。此时,显示屏804还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏804可以为一个,设置设备800的前面板;显示屏804可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
电源805用于为设备800中的各个组件进行供电。电源805可以是交流电、直流电、一次性电池或可充电电池。当电源805包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
本领域技术人员可以理解,图8中示出的结构并不构成对设备800的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器,上述指令可由电子设备800的处理器执行以完成上述页面展示方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品,所述计算机程序产品中的指令由电子设备800的处理器执行时,使得电子设备800能够执行如上述方法实施例中的页面展示方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种页面展示方法,其特征在于,所述方法包括:
检测到用户界面中包括的目标微件发生错误,获取所述目标微件的错误信息,其中,所述用户界面由多个微件组成;
新建一个独立于所述目标微件的新页面;
通过所述新页面展示所述目标微件的错误信息。
2.根据权利要求1所述的页面展示方法,其特征在于,所述目标微件的错误信息包括:所述目标微件发生错误时的调用栈信息;所述方法还包括:
调用预设的第一页面构建工具,获取用户输入的自定义页面内容;其中,所述自定义页面内容用于指示所述目标微件发生错误;
以覆盖所述调用栈信息的展示形式,通过所述新页面展示所述自定义页面内容。
3.根据权利要求1所述的页面展示方法,其特征在于,所述通过所述新页面展示所述目标微件的错误信息,包括:
响应于所接收的全屏展示指令,将所述新页面进行全屏展示;通过全屏展示的所述新页面展示所述错误信息;或,
响应于所接收的悬浮展示指令,以置于顶层的显示方式,将所述新页面在电子设备的显示屏上的指定区域进行悬浮展示;通过悬浮展示的所述新页面展示所述错误信息。
4.根据权利要求1所述的页面展示方法,其特征在于,所述方法还包括:
在与所述用户界面对应的目标应用中,设置异常检测模块;所述异常检测模块被设置于所述目标应用的入口函数对应的代码模块中;
在所述目标应用运行过程中,通过所述异常检测模块检测确定所述目标微件。
5.根据权利要求4所述的页面展示方法,其特征在于,所述获取所述目标微件的错误信息,包括:
通过所述异常检测模块中包括的异常捕获函数,获取所述目标微件的错误信息。
6.根据权利要求1所述的页面展示方法,其特征在于,所述通过所述新页面展示所述目标微件的所述错误信息,包括:
获取电子设备的显示屏尺寸;
根据所述错误信息的数据量以及所述显示屏尺寸,确定所述新页面的尺寸;
按照确定的尺寸在所述电子设备的显示屏上展示所述新页面;
其中,所述新页面上展示有所述目标微件发生错误时生成的完整错误信息。
7.根据权利要求1所述的页面展示方法,其特征在于,所述新建一个独立于所述目标微件的新页面,包括:
调用预设的页面启动函数,新建一个独立于所述目标微件的新页面;
其中,所述页面启动函数通过预设的第二页面构建工具创建所述新页面,并通过导航工具的推送函数控制页面跳转至所述新页面。
8.一种页面展示装置,其特征在于,所述装置包括:
第一获取单元,被配置为检测到用户界面中包括的目标微件发生错误,获取所述目标微件的错误信息,其中,所述用户界面由多个微件组成;
创建单元,被配置为新建一个独立于所述目标微件的新页面;
展示单元,被配置为通过所述新页面展示所述目标微件的错误信息。
9.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至7中任一项所述的页面展示方法。
10.一种存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1至7中任一项所述的页面展示方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010635734.2A CN111796897A (zh) | 2020-07-03 | 2020-07-03 | 页面展示方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010635734.2A CN111796897A (zh) | 2020-07-03 | 2020-07-03 | 页面展示方法、装置、存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111796897A true CN111796897A (zh) | 2020-10-20 |
Family
ID=72810186
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010635734.2A Pending CN111796897A (zh) | 2020-07-03 | 2020-07-03 | 页面展示方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111796897A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113190370A (zh) * | 2021-05-08 | 2021-07-30 | 京东数字科技控股股份有限公司 | 一种应用的应急响应方法及装置 |
CN114217717A (zh) * | 2021-11-22 | 2022-03-22 | 阿里巴巴新加坡控股有限公司 | 一种信息处理方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104461233A (zh) * | 2014-10-14 | 2015-03-25 | 惠州Tcl移动通信有限公司 | 一种微件widget显示应用的方法及移动终端 |
WO2016045547A1 (zh) * | 2014-09-28 | 2016-03-31 | 阿里巴巴集团控股有限公司 | 一种信息显示方法、装置和移动设备 |
CN105893219A (zh) * | 2016-03-31 | 2016-08-24 | 广州酷狗计算机科技有限公司 | 一种显示错误信息的方法和装置 |
CN106528136A (zh) * | 2016-10-27 | 2017-03-22 | 北京京东尚科信息技术有限公司 | 基于微件的显示方法、装置以及终端设备 |
CN108829311A (zh) * | 2017-04-27 | 2018-11-16 | 北京京东尚科信息技术有限公司 | 一种基于Widget展示数据的方法和装置 |
CN110399275A (zh) * | 2019-07-18 | 2019-11-01 | 口碑(上海)信息技术有限公司 | 异常展示方法及装置 |
CN111309606A (zh) * | 2020-02-10 | 2020-06-19 | 广州虎牙科技有限公司 | 页面异常处理方法、装置、计算机设备及存储介质 |
-
2020
- 2020-07-03 CN CN202010635734.2A patent/CN111796897A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016045547A1 (zh) * | 2014-09-28 | 2016-03-31 | 阿里巴巴集团控股有限公司 | 一种信息显示方法、装置和移动设备 |
CN104461233A (zh) * | 2014-10-14 | 2015-03-25 | 惠州Tcl移动通信有限公司 | 一种微件widget显示应用的方法及移动终端 |
CN105893219A (zh) * | 2016-03-31 | 2016-08-24 | 广州酷狗计算机科技有限公司 | 一种显示错误信息的方法和装置 |
CN106528136A (zh) * | 2016-10-27 | 2017-03-22 | 北京京东尚科信息技术有限公司 | 基于微件的显示方法、装置以及终端设备 |
CN108829311A (zh) * | 2017-04-27 | 2018-11-16 | 北京京东尚科信息技术有限公司 | 一种基于Widget展示数据的方法和装置 |
CN110399275A (zh) * | 2019-07-18 | 2019-11-01 | 口碑(上海)信息技术有限公司 | 异常展示方法及装置 |
CN111309606A (zh) * | 2020-02-10 | 2020-06-19 | 广州虎牙科技有限公司 | 页面异常处理方法、装置、计算机设备及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113190370A (zh) * | 2021-05-08 | 2021-07-30 | 京东数字科技控股股份有限公司 | 一种应用的应急响应方法及装置 |
CN114217717A (zh) * | 2021-11-22 | 2022-03-22 | 阿里巴巴新加坡控股有限公司 | 一种信息处理方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10990257B2 (en) | Object displaying method, terminal device, and computer storage medium | |
US10558322B2 (en) | Method and apparatus for displaying objects and a background image on a display screen | |
RU2606055C2 (ru) | Система рабочего стола и способ и устройство для взаимодействия с интерфейсом для мобильного терминала | |
CN115097982B (zh) | 处理内容的方法及其电子设备 | |
CN109446832B (zh) | 一种截屏方法及装置 | |
KR20160025905A (ko) | 터치 감응 디스플레이를 포함하는 전자 장치 및 이 전자 장치를 동작하는 방법 | |
US10296184B2 (en) | Webpage navigation method, mobile terminal using the same, and volatile storage medium recording the same | |
US20160018909A1 (en) | Method and apparatus of controlling a smart device | |
US20200257443A1 (en) | Method and Terminal for Displaying a Plurality of Content Cards | |
US9575620B2 (en) | Method, apparatus and computer program product for graphically enhancing the user interface of a device | |
CN108984089B (zh) | 触控操作方法、装置、存储介质及电子设备 | |
EP3032394A1 (en) | Method and apparatus for inputting information by using on-screen keyboard | |
CN111796897A (zh) | 页面展示方法、装置、存储介质及电子设备 | |
US10409478B2 (en) | Method, apparatus, and recording medium for scrapping content | |
US9990912B2 (en) | Electronic device and method for reproducing sound in the electronic device | |
CN105700845A (zh) | 一种在文档中显示数字运算结果的方法及装置 | |
CN112230781B (zh) | 字符推荐方法、装置及存储介质 | |
CN105094331A (zh) | 一种信息处理方法及电子设备 | |
CN105468227A (zh) | 一种网页中信息展示方法和装置 | |
US20150325254A1 (en) | Method and apparatus for displaying speech recognition information | |
KR102130361B1 (ko) | 시나리오에 따라 그래픽 처리 해상도를 변경하기 위한 방법 및 휴대용 전자 디바이스 | |
EP2827256A2 (en) | Method for editing object and electronic device therefor | |
CN112653788B (zh) | 一种用户界面显示方法、移动终端及存储介质 | |
CN105808379A (zh) | 一种终端备份方法和终端 | |
CN105808067A (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 |