CN113127130A - 页面跳转方法、装置及存储介质 - Google Patents

页面跳转方法、装置及存储介质 Download PDF

Info

Publication number
CN113127130A
CN113127130A CN202110502058.6A CN202110502058A CN113127130A CN 113127130 A CN113127130 A CN 113127130A CN 202110502058 A CN202110502058 A CN 202110502058A CN 113127130 A CN113127130 A CN 113127130A
Authority
CN
China
Prior art keywords
page
component
proxy
target
applet
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
CN202110502058.6A
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.)
Guangzhou Kugou Computer Technology Co Ltd
Original Assignee
Guangzhou Kugou Computer 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 Guangzhou Kugou Computer Technology Co Ltd filed Critical Guangzhou Kugou Computer Technology Co Ltd
Priority to CN202110502058.6A priority Critical patent/CN113127130A/zh
Publication of CN113127130A publication Critical patent/CN113127130A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Abstract

本申请实施例公开了一种页面跳转方法、装置及存储介质,属于应用程序技术领域。在本申请实施例中,在从小程序页面跳转至与其不属于同一个任务栈的目标页面时,可以将目标页面的视图添加至小程序页面所在的任务栈中的代理页面组件中。这样,由于代理页面组件能够装载从第一任务栈的小程序页面所要跳转至的、页面组件不在该第一任务栈中的页面的视图,因此,当从该任务栈中的任一个小程序页面跳转至任意一个处于其他任务栈中的目标页面时,均能够将该目标页面添加至该任务栈中的代理页面组件中,以实现页面的无缝切换,通用性好,操作简便,处理效率更高。

Description

页面跳转方法、装置及存储介质
技术领域
本申请涉及应用程序技术领域,特别涉及一种页面跳转方法、装置及存储介质。
背景技术
小程序是一种不需要下载安装即可使用的应用。由于小程序具有免安装、易使用的特点,因此,一经推出,就受到了广大用户的欢迎。目前,对于任一小程序而言,该小程序的小程序页面处于该小程序的任务栈中。这样,当从该小程序页面跳转至处于其他任务栈中的页面时,将会由于任务栈的切换而出现两个页面切换时存在较长时间间隔、切换不顺畅的问题,基于此,本申请实施例提供了一种页面跳转方法,以实现小程序页面与其他任务栈中的页面的无缝切换。
发明内容
本申请实施例提供了一种页面跳转方法、装置及存储介质,可以实现小程序页面与其他任务栈中的页面的无缝切换,通用性好,处理效率高。所述技术方案如下:
一方面,提供了一种页面跳转方法,所述方法包括:
当在当前显示的小程序页面中检测到跳转至目标页面的页面跳转指令时,获取所述目标页面的视图,所述小程序页面的页面组件所处的第一任务栈与所述目标页面的页面组件所处的第二任务栈不同;
将所述目标页面的视图添加至所述第一任务栈的代理页面组件中,所述代理页面组件用于装载从所述小程序页面所要跳转至的、页面组件不在所述第一任务栈中的页面的视图;
加载所述代理页面组件,以显示所述目标页面。
可选地,所述获取所述目标页面的视图之前,还包括:
创建所述代理页面组件,并将所述代理页面组件的任务关联属性的属性值设置为所述第一任务栈的栈名;
根据所述代理页面组件的任务关联属性的属性值,将所述代理页面组件启动至所述第一任务栈中。
可选地,所述方法还包括:
在所述代理页面组件中创建用于进行页面内容展示的多种容器组件。
可选地,所述多种容器组件包括播放条组件和视图翻页组件,所述播放条组件用于多媒体资源的播放,所述视图翻页组件用于多个视图的切换。
可选地,所述目标页面为所述小程序页面所对应的小程序所在的宿主应用的任一应用页面。
可选地,所述加载所述代理页面组件,以显示所述目标页面之后,还包括:
当在所述目标页面中检测到页面返回指令时,从所述代理页面组件中移除所述目标页面的视图;
从所述第一任务栈中移除所述代理页面组件,并重新加载所述小程序页面的页面组件,以退回显示所述小程序页面。
另一方面,提供了一种页面跳转装置,所述装置包括:
获取模块,用于当在当前显示的小程序页面中检测到跳转至目标页面的页面跳转指令时,获取所述目标页面的视图,所述小程序页面的页面组件所处的第一任务栈与所述目标页面的页面组件所处的第二任务栈不同;
添加模块,用于将所述目标页面的视图添加至所述第一任务栈的代理页面组件中,所述代理页面组件用于装载从所述小程序页面所要跳转至的、页面组件不在所述第一任务栈中的页面的视图;
加载模块,用于加载所述代理页面组件,以显示所述目标页面。
可选地,所述装置还包括:
创建模块,用于创建所述代理页面组件,并将所述代理页面组件的任务关联属性的属性值设置为所述第一任务栈的栈名;
启动模块,用于根据所述代理页面组件的任务关联属性的属性值,将所述代理页面组件启动至所述第一任务栈中。
可选地,所述创建模块还用于:
在所述代理页面组件中创建用于进行页面内容展示的多种容器组件。
可选地,所述多种容器组件包括播放条组件和视图翻页组件,所述播放条组件用于多媒体资源的播放,所述视图翻页组件用于多个视图的切换。
可选地,所述目标页面为所述小程序页面所对应的小程序所在的宿主应用的任一应用页面。
可选地,所述装置还包括:
移除模块,用于当在所述目标页面中检测到页面返回指令时,用于从所述代理页面组件中移除所述目标页面的视图;
所述加载模块,从所述第一任务栈中移除所述代理页面组件,并重新加载所述小程序页面的页面组件,以退回显示所述小程序页面。
另一方面,提供了一种页面跳转装置,所述装置包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器执行所述存储器中的可执行指令来执行上述页面跳转方法。
另一方面,提供了一种计算机可读存储介质,所述存储介质内存储有计算机程序,所述计算机程序被计算机执行时实现上述所述页面跳转方法的步骤。
另一方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述的页面跳转方法的步骤。
本申请实施例提供的技术方案带来的有益效果至少包括:
在本申请实施例中,在从小程序页面跳转至与其不属于同一个任务栈的目标页面时,可以将目标页面的视图添加至小程序页面所在的任务栈中的代理页面组件中。这样,由于代理页面组件和小程序页面的页面组件处于同一个任务栈,因此,通过加载代理页面组件中的目标页面的视图来显示目标页面时,将不会发生任务栈切换的问题。并且,由于该代理页面组件能够装载从第一任务栈的小程序页面所要跳转至的、页面组件不在该第一任务栈中的页面的视图,因此,当从该第一任务栈中的任一个小程序页面跳转至任意一个处于其他任务栈中的目标页面时,均能够将该目标页面的视图添加至该代理页面组件中,以实现页面的无缝切换,通用性好,操作简便,处理效率更高。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种页面跳转方法流程图;
图2是本申请实施例提供的一种用户在小程序页面执行跳转显示宿主应用的应用页面的操作的示意图;
图3是本申请实施例提供的一种从小程序页面跳转至目标页面,再从目标页面返回小程序页面的示意图;
图4是本申请实施例提供的一种页面跳转过程中任务栈的示意图;
图5是本申请实施例提供的一种页面跳转装置的结构示意图;
图6是本申请实施例提供的一种终端设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在对本申请实施例进行详细的解释说明之前,先对本申请实施例涉及的应用场景进行介绍。
小程序是一种依赖于宿主应用运行的应用。用户只需要安装宿主应用,即能够在宿主应用中根据需求使用各种各样的小程序。例如,在某些音乐应用中,用户可以使用诸如标签找歌、猜歌达人等小程序,以实现音乐的更多玩法。
其中,在使用小程序的过程中,用户可能需要从当前正在显示的小程序页面跳转至宿主应用的某个应用页面,或者是,用户可能需要从当前正在显示的小程序A的页面跳转至小程序B的页面。由于所要跳转的页面与当前正在显示的小程序页面不是同一个小程序的页面,因此,两个页面的页面组件将处于不同的任务栈中。在这种情况下,终端设备需要切换至所要跳转的目标页面的页面组件所在的任务栈,加载目标页面的页面组件,如此,将会由于任务栈的切换而导致页面跳转过程中出现较长时间间隔、切换不顺畅的问题。需要说明的是,任务栈是一个用于维护管理一个或多个页面组件的栈。其中,对于任一个小程序,该小程序的所有小程序页面的页面组件将位于同一个任务栈中,换句话说,一个小程序将对应一个任务栈。另外,对于小程序所在的宿主应用,该宿主应用的应用页面的页面组件所在的任务栈和小程序对应的任务栈也不是同一个任务栈。
为了解决由于任务栈切换导致的页面切换存在较长时间间隔、切换不顺畅的问题,相关技术在进行页面跳转时,会针对性的为所要跳转的目标页面创建新的页面组件,并将创建的页面组件的任务关联属性(也即TaskAffinity属性)设置为当前正在显示的小程序页面的页面组件所在的任务栈的栈名。这样虽然能够解决页面跳转过程中的切栈问题,但是,由于需要在每次页面跳转时,均要针对性的为所要跳转的目标页面创建对应的页面组件,因此,操作较为繁琐,处理效率低下。并且,在采用该种方法跳转至目标页面之后,用户想要再从目标页面退回上一页时,将无法返回之前的小程序页面。基于此,本申请实施例提供了一种页面跳转方法,只需将所要跳转的目标页面的视图添加至一个公共的代理页面组件,通过加载该代理页面组件即能够实现页面跳转,不需要针对性的为每个要跳转的目标页面创建对应的页面组件,通用性好,而且操作简单,提高了处理效率。同时,在跳转至目标页面之后,由于装载该目标页面的代理页面组件和小程序页面的页面组件处于同一个任务栈中,因此,还能够根据用户的页面返回操作,切换回之前的小程序页面进行显示。
接下来对本申请实施例提供的页面跳转方法进行介绍。
图1是本申请实施例提供的一种页面跳转方法。该方法可以应用于终端设备中。如图1所示,该方法包括以下步骤:
步骤101:当在当前显示的小程序页面中检测到跳转至目标页面的页面跳转指令时,获取目标页面的视图,该目标页面的页面组件所处的第一任务栈与小程序页面的页面组件所处的第二任务栈不同。
在本申请实施例中,用户在打开宿主应用之后,可以点击宿主应用中的小程序,从而进入小程序页面。在进入小程序页面之后,在一些可能的场景中,用户可能需要从小程序页面跳转至宿主应用的某个应用页面进行显示。在这种情况下,用户可以在当前显示的小程序页面中执行指定页面跳转操作以触发页面跳转指令。其中,该指定页面跳转操作可以是针对小程序页面中用于返回宿主应用的某个应用页面的按键执行的点击操作。
例如,图2示出了一种用户在小程序页面执行跳转显示宿主应用的应用页面的操作的示意图。如图2所示,终端设备当前显示的是跑步专区小程序的页面。在该小程序页面中包含有多个不同的歌单选项。其中,每个歌单选项均对应有宿主应用中的一个歌单页面。在这种情况下,用户可以点击多个歌单选项中的任一歌单选项,例如,如图2所示,用户可以点击“有氧跑步机音乐”这个歌单选项,以触发页面跳转指令,以便后续跳转至宿主应用中该歌单选项对应的歌单页面。
可选地,在另一些可能的场景中,在进入某个小程序的页面之后,用户可能会想要打开其他小程序的页面。在这种情况下,用户可以对当前显示的小程序页面中的指定选项按钮执行点击操作,以显示其他小程序的标识,之后,用户可以点击其他小程序的标识,以触发页面跳转指令进而进行页面跳转,此时,用户点击其他小程序的图标的操作即为一种页面跳转操作。
终端设备在检测到页面跳转指令,可以获取该页面跳转指令中包括的所要跳转的页面的页面参数。其中,该页面参数中包括所要跳转的页面的页面标识。
需要说明的是,由于用户触发的页面跳转指令也有可能是用于跳转至与小程序页面处于同一任务栈中的页面的指令,因此,终端设备在获取到页面跳转指令中的页面参数之后,可以根据该页面参数判断所要跳转的页面的页面组件与当前显示的小程序页面的页面组件是否在不同的任务栈中,也即判断当前所要跳转的页面是否为与小程序页面处于不同任务栈的目标页面。
由前述介绍可知,页面跳转指令包括的页面参数中包括所要跳转的页面的页面标识。基于此,在本申请实施例中,终端设备可以获取页面参数中包含的所要跳转的页面的页面标识,并在当前显示的小程序页面的页面组件所在的第一任务栈中查找是否存在该页面标识。如果第一任务栈中不存在所要跳转的页面的页面标识,则可以确定当前所要跳转的页面的页面组件不在第一任务栈中,也即当前所要跳转的页面为与当前显示的小程序页面处于不同任务栈的目标页面。
需要说明的是,本申请实施例所提到的页面组件可以是指安卓系统中的活动组件,也即Activity(活动)。Activity是安卓系统中的四大组件之一,主要用于与用户进行交互。其中,一个Activity可以提供一个单独的页面,在该页面上可以显示一些控件,也可以监听并处理用户的操作事件,以对其作出响应。需要说明的是,页面组件也可以是指其他的用于提供用户界面以与用户进行交互的组件,本申请实施例对此不做限定。
在确定当前所要跳转的页面为与当前显示的小程序页面处于不同任务栈的目标页面之后,终端设备根据从页面跳转指令中获取的页面参数,获取该目标页面的视图。
其中,终端设备首先根据页面参数中包括的目标页面的页面标识,确定目标页面所处的第二任务栈。之后,终端设备从第二任务栈中包括的目标页面的页面组件中获取该目标页面的视图。其中,该视图可以是指目标页面的一个或多个Fragment。
需要说明的是,Fragment(片段)是为了应用适配不同尺寸的显示屏、支持动态和灵活的UI(User Interface,用户界面)设计所提供的一个组件。Fragment可以作为Activity的一个组成部分,一个Activity中可以包含有多个Fragment,每个Fragment相当于一个迷你的Activity,其具有自己的生命周期、布局以及接收和处理事件的能力,能够呈现自己需要显示的数据,并对自身所要显示的数据进行刷新等。换句话说,Fragment能够实现对页面数据的管理。
可选地,本申请实施例中提到的目标页面的视图也可以是指诸如view等其他能够用于进行页面数据管理的组件,本申请实施例对此不做限定。
步骤102:将目标页面的视图添加至第一任务栈的代理页面组件中,该代理页面组件用于装载从小程序页面所要跳转至的、且页面组件不在第一任务栈中的页面的视图。
在获取到目标页面的视图之后,终端设备将目标页面的视图添加至第一任务栈的代理页面组件中。
需要说明的是,在本申请实施例中,预先创建一个代理页面组件,也即代理Activity。在创建代理页面组件之后,终端设备将该代理页面组件的任务关联属性的属性值,也即TaskAffinity属性的属性值,设置为第一任务栈的栈名,以此来规定该代理页面组件所属的任务栈。由于该代理页面组件的TaskAffinity属性的属性值被设置为了第一任务栈的栈名,因此,该代理页面组件启动后将被添加至第一任务栈中。这样,当根据页面跳转指令获取到目标页面的视图之后,终端设备可以将该视图直接添加至位于第一任务栈的代理页面组件中。
需要说明的是,在本申请实施例中,创建的代理页面组件中可以不包含有具体的页面内容,这样,当终端设备检测到页面跳转指令之后,再将所要跳转的目标页面的视图添加至该代理页面组件中。
可选地,在一些可能的实现方式中,在创建代理页面组件时,还可以在代理页面组件中创建一个或多个用于进行页面内容展示的容器组件,以便后续对加入到该代理页面组件中的Fragment中的页面内容进行展示。
示例性地,该一个或多个容器组件可以为播放条(bar)组件、视图翻页(viewpager)组件等,本申请实施例对此不做限定。其中,播放条组件能够用于多媒体资源的播放,例如视频、音频的播放,视图翻页组件能够用于提供多个视图切换的效果,例如,目标页面中的某个窗口中多张图片轮播的效果。
步骤103:加载该代理页面组件,以显示目标页面。
在将目标页面的视图添加至代理页面组件之后,终端设备可以加载该代理页面组件,进而加载该代理页面组件中的目标页面的视图,从而显示目标页面。
由于代理页面组件就位于小程序页面的页面组件所处的第一任务栈中,也即,代理页面组件和小程序页面的页面组件在同一个任务栈中,因此,在将目标页面的视图添加至代理页面组件中之后,终端设备再加载代理页面组件中的目标页面的视图,实际上就是在与小程序页面的页面组件所在的任务栈中加载目标页面的视图。这样,就不存在页面跳转时切换任务栈的问题,自然也就不会出现由于切换任务栈所带来的页面闪现问题。并且,在本申请实施例中,由于预先创建了代理页面组件,并通过指定代理页面组件的TaskAffinity属性的属性值将代理页面组件归属于小程序页面所在的任务栈,因此,当从该任务栈中的任一个小程序页面跳转至任意一个处于其他任务栈中的目标页面时,均能够将该目标页面添加至该任务栈的代理页面组件中,以实现页面的无缝切换,通用性好,操作简便,处理效率更高。
需要说明的是,在加载代理页面组件中目标页面的视图时,终端设备还可以根据目标页面显示的需要,加载预先在代理页面组件中的创建的诸如播放条、视图翻页组件等容器组件,以保证目标页面的正常显示。
进一步地,在显示目标页面之后,用户在浏览目标页面后可能需要重新返回至跳转之前的小程序页面。在这种情况下,用户可以在目标页面中执行返回操作以触发页面返回指令。
示例性地,目标页面中可以显示有返回键,用户可以点击该返回键以触发页面返回指令。或者,用户可以在目标页面中执行返回手势操作,以触发页面返回指令。或者,用户可以点击终端设备上的用于页面后退的物理按键,以触发页面返回指令。其中,返回手势操作可以为从目标页面的右边界开始向左滑动的操作,或者,也可以为其他操作,本申请实施例对此不做限定。
终端设备在检测到用户触发的页面返回指令后,从代理页面组件中移除目标页面的视图,从第一任务栈中移除代理页面组件,并重新加载跳转之前的小程序页面的页面组件,以返回显示该小程序页面。
需要说明的是,终端设备在加载第一任务栈中的代理页面组件之后,该代理页面组件将位于第一任务栈的栈顶,而之前显示的小程序页面的页面组件仍然处于该第一任务栈中且位于代理页面组件之后。这样,当在目标页面中检测到页面返回指令之后,终端设备首先移除位于栈顶的代理页面组件中的目标页面的视图,以便后续再跳转其他与小程序页面处于不同任务栈的目标页面时进行使用。之后,将该代理页面组件从第一任务栈中移除。此时,之前显示的小程序页面的页面组件将重新回到第一任务栈的栈顶,因此,终端设备可以继续重新加载该程序页面的页面组件,从而显示该小程序页面。
由此可见,在本申请实施例中,由于是通过代理页面组件来装载所要跳转的目标页面的视图,而代理页面组件与跳转前的小程序页面的页面组件在同一任务栈中,因此,在加载代理页面组件以显示目标页面之后,终端设备仍能够重新加载与该代理页面组件处于同一任务栈中的小程序页面的页面组件,从而无缝返回显示小程序页面。
图3是本申请实施例提供的一种从小程序页面跳转至目标页面,再从目标页面返回小程序页面的示意图。如图3中最下面的第一幅图所示,终端设备上显示有运行在某个音乐应用中跑步专区小程序的页面301。在该小程序页面301中包含有多个歌单选项。当用户点击某个歌单选项时,例如,如图3中的第一幅图所示,当用户点击“有氧跑步机音乐”这个歌单选项302时,触发页面跳转指令。该页面跳转指令中携带有“有氧跑步机音乐”这个歌单选项所对应的歌单页面的页面标识。
终端设备在检测到页面跳转指令之后,通过前述实施例中介绍的方法,根据该歌单页面的页面标识获取该歌单页面的视图,进而将该歌单页面的视图添加至跑步专区小程序的任务栈中的代理页面组件中,加载该代理页面组件,从而跳转显示“有氧跑步机音乐”这个歌单选项所对应的歌单页面303。此时,如图3的中间图所示,显示的该歌单页面303是该音乐应用中的原生应用页面。
在显示歌单页面303之后,用户通过浏览该歌单页面303可能会发现不喜欢这个歌单里的歌曲,需要返回跑步专区小程序的页面301。在这种情况下,如图3的中间图所示,用户可以通过点击“有氧跑步机音乐”这个歌单页面中的返回键304来触发页面返回指令。终端设备在检测到该页面返回指令后,可以重新加载跑步专区小程序的任务栈中的小程序页面301的页面组件,从而如图3中最上面的一幅图所示,返回显示小程序页面301。
图4是本申请实施例基于图3所示的页面跳转过程所提供的页面跳转过程中任务栈的示意图。如图4所示,当终端设备从小程序页面301跳转至歌单页面303时,终端设备根据代理页面组件的任务关联属性的属性值,将代理页面组件402启动至第一任务栈中,之后,将获取的歌单页面303的视图添加至代理页面组件402中,并加载该代理页面组件402。后续,当终端设备检测到页面返回指令时,终端设备移除第一任务栈中的代理页面组件402,并重新加载小程序页面301的页面组件401,以返回显示小程序页面301。
在本申请实施例中,在从小程序页面跳转至与其不属于同一个任务栈的目标页面时,可以将目标页面的视图添加至小程序页面所在的任务栈中的代理页面组件中。这样,由于代理页面组件和小程序页面的页面组件处于同一个任务栈,因此,通过加载代理页面组件中的目标页面的视图来显示目标页面时,将不会发生任务栈切换的问题。并且,由于预先创建了代理页面组件,并通过指定代理页面组件的TaskAffinity属性的属性值将代理页面组件归属于小程序页面所在的任务栈,因此,当从该任务栈中的任一个小程序页面跳转至任意一个处于其他任务栈中的目标页面时,均能够将该目标页面添加至该任务栈中的代理页面组件中,以实现页面的无缝切换,通用性好,操作简便,处理效率更高。
另外,在本申请实施例中,由于是通过代理页面组件来装载所要跳转的目标页面的视图,而代理页面组件与跳转前的小程序页面的页面组件在同一任务栈中,因此,在加载代理页面组件以显示目标页面之后,仍能够重新加载与该代理页面组件处于同一任务栈中的小程序页面的页面组件,从而无缝返回小程序页面进行显示。
接下来,对本申请实施例提供的页面跳转装置进行介绍。
参见图5,本申请实施例提供了一种页面跳转装置500,该装置500包括:
获取模块501,用于当在当前显示的小程序页面中检测到跳转至目标页面的页面跳转指令时,获取目标页面的视图,小程序页面的页面组件所处的第一任务栈与目标页面的页面组件所处的第二任务栈不同;
添加模块502,用于将目标页面的视图添加至第一任务栈的代理页面组件中,代理页面组件用于装载从小程序页面所要跳转至的、页面组件不在第一任务栈中的页面的视图;
加载模块503,用于加载代理页面组件,以显示目标页面。
可选地,该装置500还包括:
创建模块,用于创建代理页面组件,并将代理页面组件的任务关联属性的属性值设置为第一任务栈的栈名;
启动模块,用于根据代理页面组件的任务关联属性的属性值,将代理页面组件启动至第一任务栈中。
可选地,创建模块还用于:
在代理页面组件中创建用于进行页面内容展示的多种容器组件。
可选地,多种容器组件包括播放条组件和视图翻页组件,播放条组件用于多媒体资源的播放,视图翻页组件用于多个视图的切换。
可选地,目标页面为小程序页面所对应的小程序所在的宿主应用的任一应用页面。
可选地,该装置还包括:
移除模块,用于当在目标页面中检测到页面返回指令时,从代理页面组件中移除目标页面的视图;
加载模块,用于从第一任务栈中移除代理页面组件,并重新加载小程序页面的页面组件,以退回显示小程序页面。
综上所述,在本申请实施例中,在从小程序页面跳转至与其不属于同一个任务栈的目标页面时,可以将目标页面的视图添加至小程序页面所在的任务栈中的代理页面组件中。这样,由于代理页面组件和小程序页面的页面组件处于同一个任务栈,因此,通过加载代理页面组件中的目标页面的视图来显示目标页面时,将不会发生任务栈切换的问题。并且,由于预先创建了代理页面组件,并通过指定代理页面组件的TaskAffinity属性将代理页面组件归属于小程序页面所在的任务栈,因此,当从该任务栈中的任一个小程序页面跳转至任意一个处于其他任务栈中的目标页面时,均能够将该目标页面添加至该任务栈中的代理页面组件中,以实现页面的无缝切换,通用性好,操作简便,处理效率更高。
需要说明的是,上述实施例提供的页面跳转装置在进行页面跳转时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的页面跳转装置与页面跳转方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图6是根据一示例性实施例示出的一种终端设备600的结构框图。上述实施例中的终端设备即可通过该终端设备600来实现。其中,该终端设备600可以是智能手机、平板电脑等。
通常,终端设备600包括有:处理器601和存储器602。
处理器601可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器601可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器601也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器601可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器601还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器602可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器602还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器602中的非暂态的计算机可读存储介质用于存储至少一个指令,其中,该至少一个指令用于被处理器601所执行以实现本申请中方法实施例提供的页面跳转方法。
在一些实施例中,终端设备600还可选包括有:外围设备接口603和至少一个外围设备。处理器601、存储器602和外围设备接口603之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口603相连。具体地,外围设备包括:射频电路604、显示屏605、摄像头组件606、音频电路607、定位组件608和电源609中的至少一种。
外围设备接口603可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器601和存储器602。在一些实施例中,处理器601、存储器602和外围设备接口603被集成在同一芯片或电路板上;在一些其他实施例中,处理器601、存储器602和外围设备接口603中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路604用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路604通过电磁信号与通信网络以及其他通信设备进行通信。射频电路604将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路604包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路604可以通过至少一种无线通信协议来与其它终端设备进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路604还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏605用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏605是触摸显示屏时,显示屏605还具有采集在显示屏605的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器601进行处理。此时,显示屏605还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏605可以为一个,设置终端设备600的前面板;在另一些实施例中,显示屏605可以为至少两个,分别设置在终端设备600的不同表面或呈折叠设计;在再一些实施例中,显示屏605可以是柔性显示屏,设置在终端设备600的弯曲表面上或折叠面上。甚至,显示屏605还可以设置成非矩形的不规则图形,也即异形屏。显示屏605可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。需要说明的是,在本申请实施例中,当该终端设备600为横屏终端设备时,该终端设备600的显示屏的宽高比大于1,例如,该终端设备600的显示屏的宽高比可以为16:9或4:3。当该终端设备600为竖屏终端设备时,则该终端设备600的显示屏的宽高比小于1,例如,该终端设备600的显示屏的宽高比可以为9:18或3:4等。
摄像头组件606用于采集图像或视频。可选地,摄像头组件606包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端设备的前面板,后置摄像头设置在终端设备的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件606还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路607可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器601进行处理,或者输入至射频电路604以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端设备600的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器601或射频电路604的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路607还可以包括耳机插孔。
定位组件608用于定位终端设备600的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件608可以是基于GPS(Global PositioningSystem,全球定位系统)、北斗系统或伽利略系统的定位组件。
电源609用于为终端设备600中的各个组件进行供电。电源609可以是交流电、直流电、一次性电池或可充电电池。当电源609包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端设备600还包括有一个或多个传感器610。该一个或多个传感器610包括但不限于:加速度传感器611、陀螺仪传感器612、压力传感器613、指纹传感器614、光学传感器615以及接近传感器616。
加速度传感器611可以检测以终端设备600建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器611可以用于检测重力加速度在三个坐标轴上的分量。处理器601可以根据加速度传感器611采集的重力加速度信号,控制显示屏605以横向视图或纵向视图进行用户界面的显示。加速度传感器611还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器612可以检测终端设备600的机体方向及转动角度,陀螺仪传感器612可以与加速度传感器611协同采集用户对终端设备600的3D动作。处理器601根据陀螺仪传感器612采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器613可以设置在终端设备600的侧边框和/或显示屏605的下层。当压力传感器613设置在终端设备600的侧边框时,可以检测用户对终端设备600的握持信号,由处理器601根据压力传感器613采集的握持信号进行左右手识别或快捷操作。当压力传感器613设置在显示屏605的下层时,由处理器601根据用户对显示屏605的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器614用于采集用户的指纹,由处理器601根据指纹传感器614采集到的指纹识别用户的身份,或者,由指纹传感器614根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器601授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器614可以被设置终端设备600的正面、背面或侧面。当终端设备600上设置有物理按键或厂商Logo时,指纹传感器614可以与物理按键或厂商Logo集成在一起。
光学传感器615用于采集环境光强度。在一个实施例中,处理器601可以根据光学传感器615采集的环境光强度,控制显示屏605的显示亮度。具体地,当环境光强度较高时,调高显示屏605的显示亮度;当环境光强度较低时,调低显示屏605的显示亮度。在另一个实施例中,处理器601还可以根据光学传感器615采集的环境光强度,动态调整摄像头组件606的拍摄参数。
接近传感器616,也称距离传感器,通常设置在终端设备600的前面板。接近传感器616用于采集用户与终端设备600的正面之间的距离。在一个实施例中,当接近传感器616检测到用户与终端设备600的正面之间的距离逐渐变小时,由处理器601控制显示屏605从亮屏状态切换为息屏状态;当接近传感器616检测到用户与终端设备600的正面之间的距离逐渐变大时,由处理器601控制显示屏605从息屏状态切换为亮屏状态。
也即是,本申请实施例不仅提供了一种终端设备,包括处理器和用于存储处理器可执行指令的存储器,其中,处理器被配置为执行图1所示的页面跳转方法,而且,本申请实施例还提供了一种计算机可读存储介质,该存储介质内存储有计算机程序,该计算机程序被处理器执行时可以实现图1所示的页面跳转方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述图1所示实施例提供的页面跳转方法。
以上所述并不用以限制本申请实施例,凡在本申请实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请实施例的保护范围之内。

Claims (10)

1.一种页面跳转方法,其特征在于,所述方法包括:
当在当前显示的小程序页面中检测到跳转至目标页面的页面跳转指令时,获取所述目标页面的视图,所述小程序页面的页面组件所处的第一任务栈与所述目标页面的页面组件所处的第二任务栈不同;
将所述目标页面的视图添加至所述第一任务栈的代理页面组件中,所述代理页面组件用于装载从所述小程序页面所要跳转至的、页面组件不在所述第一任务栈中的页面的视图;
加载所述代理页面组件,以显示所述目标页面。
2.根据权利要求1所述的方法,其特征在于,所述获取所述目标页面的视图之前,还包括:
创建所述代理页面组件,并将所述代理页面组件的任务关联属性的属性值设置为所述第一任务栈的栈名;
根据所述代理页面组件的任务关联属性的属性值,将所述代理页面组件启动至所述第一任务栈中。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在所述代理页面组件中创建用于进行页面内容展示的多种容器组件。
4.根据权利要求3所述的方法,其特征在于,所述多种容器组件包括播放条组件和视图翻页组件,所述播放条组件用于多媒体资源的播放,所述视图翻页组件用于多个视图的切换。
5.根据权利要求1所述的方法,其特征在于,所述目标页面为所述小程序页面所对应的小程序所在的宿主应用的任一应用页面。
6.根据权利要求1-5任一所述的方法,其特征在于,所述加载所述代理页面组件,以显示所述目标页面之后,还包括:
当在所述目标页面中检测到页面返回指令时,从所述代理页面组件中移除所述目标页面的视图;
从所述第一任务栈中移除所述代理页面组件,并重新加载所述小程序页面的页面组件,以退回显示所述小程序页面。
7.一种页面跳转装置,其特征在于,所述装置包括:
获取模块,用于当在当前显示的小程序页面中检测到跳转至目标页面的页面跳转指令时,获取所述目标页面的视图,所述小程序页面的页面组件所处的第一任务栈与所述目标页面的页面组件所处的第二任务栈不同;
添加模块,用于将所述目标页面的视图添加至所述第一任务栈的代理页面组件中,所述代理页面组件用于装载从所述小程序页面所要跳转至的、页面组件不在所述第一任务栈中的页面的视图;
加载模块,用于加载所述代理页面组件,以显示所述目标页面。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
创建模块,用于创建所述代理页面组件,并将所述代理页面组件的任务关联属性的属性值设置为所述第一任务栈的栈名;
启动模块,用于根据所述代理页面组件的任务关联属性的属性值,将所述代理页面组件启动至所述第一任务栈中。
9.一种页面跳转装置,其特征在于,所述装置包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器执行所述存储器中的可执行指令来执行权利要求1-6任一项所述的页面跳转方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被计算机执行时实现权利要求1-6任一项所述页面跳转方法。
CN202110502058.6A 2021-05-08 2021-05-08 页面跳转方法、装置及存储介质 Pending CN113127130A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110502058.6A CN113127130A (zh) 2021-05-08 2021-05-08 页面跳转方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110502058.6A CN113127130A (zh) 2021-05-08 2021-05-08 页面跳转方法、装置及存储介质

Publications (1)

Publication Number Publication Date
CN113127130A true CN113127130A (zh) 2021-07-16

Family

ID=76781227

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110502058.6A Pending CN113127130A (zh) 2021-05-08 2021-05-08 页面跳转方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN113127130A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113687892A (zh) * 2021-07-30 2021-11-23 阿里巴巴新加坡控股有限公司 页面处理方法、装置及计算机程序产品
CN113805962A (zh) * 2021-08-31 2021-12-17 北京百度网讯科技有限公司 应用页面的显示方法、装置以及电子设备
CN114741149A (zh) * 2022-04-15 2022-07-12 北京因数健康科技有限公司 单页应用的页面切换方法及装置、存储介质和电子设备
CN114779996A (zh) * 2022-04-07 2022-07-22 厦门大学 一种设备运行参数获取装置和设备控制机
CN117130692A (zh) * 2023-10-23 2023-11-28 成都赛力斯科技有限公司 应用管理方法、装置、电子设备及存储介质
CN113687892B (zh) * 2021-07-30 2024-05-03 阿里巴巴创新公司 页面处理方法、装置及计算机程序产品

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016146056A1 (zh) * 2015-03-19 2016-09-22 阿里巴巴集团控股有限公司 一种页面切换方法及装置
CN109669736A (zh) * 2018-12-18 2019-04-23 北京城市网邻信息技术有限公司 一种小程序的加载方法、装置、终端设备和存储介质
CN110209967A (zh) * 2019-04-17 2019-09-06 北京奇艺世纪科技有限公司 页面加载方法、装置、终端设备和计算机可读介质
CN111475246A (zh) * 2020-04-10 2020-07-31 腾讯科技(深圳)有限公司 小程序页面显示方法、装置、终端和存储介质
US20200264743A1 (en) * 2018-01-18 2020-08-20 Tencent Technology (Shenzhen) Company Limited Application procesing method and apparatus, storage medium, and computing device
CN112130937A (zh) * 2019-06-24 2020-12-25 北京京东尚科信息技术有限公司 页面显示方法与装置、存储介质、电子设备
CN112214697A (zh) * 2020-09-16 2021-01-12 金蝶医疗软件科技有限公司 网页处理方法、装置、计算机设备和存储介质
CN112364266A (zh) * 2020-11-11 2021-02-12 平安科技(深圳)有限公司 小程序和宿主应用无缝导航方法、装置、电子设备及介质
CN112417331A (zh) * 2020-11-11 2021-02-26 北京五八信息技术有限公司 页面路由方法及装置、电子设备、计算机可读存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016146056A1 (zh) * 2015-03-19 2016-09-22 阿里巴巴集团控股有限公司 一种页面切换方法及装置
US20200264743A1 (en) * 2018-01-18 2020-08-20 Tencent Technology (Shenzhen) Company Limited Application procesing method and apparatus, storage medium, and computing device
CN109669736A (zh) * 2018-12-18 2019-04-23 北京城市网邻信息技术有限公司 一种小程序的加载方法、装置、终端设备和存储介质
CN110209967A (zh) * 2019-04-17 2019-09-06 北京奇艺世纪科技有限公司 页面加载方法、装置、终端设备和计算机可读介质
CN112130937A (zh) * 2019-06-24 2020-12-25 北京京东尚科信息技术有限公司 页面显示方法与装置、存储介质、电子设备
CN111475246A (zh) * 2020-04-10 2020-07-31 腾讯科技(深圳)有限公司 小程序页面显示方法、装置、终端和存储介质
CN112214697A (zh) * 2020-09-16 2021-01-12 金蝶医疗软件科技有限公司 网页处理方法、装置、计算机设备和存储介质
CN112364266A (zh) * 2020-11-11 2021-02-12 平安科技(深圳)有限公司 小程序和宿主应用无缝导航方法、装置、电子设备及介质
CN112417331A (zh) * 2020-11-11 2021-02-26 北京五八信息技术有限公司 页面路由方法及装置、电子设备、计算机可读存储介质

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113687892A (zh) * 2021-07-30 2021-11-23 阿里巴巴新加坡控股有限公司 页面处理方法、装置及计算机程序产品
CN113687892B (zh) * 2021-07-30 2024-05-03 阿里巴巴创新公司 页面处理方法、装置及计算机程序产品
CN113805962A (zh) * 2021-08-31 2021-12-17 北京百度网讯科技有限公司 应用页面的显示方法、装置以及电子设备
CN113805962B (zh) * 2021-08-31 2023-10-20 北京百度网讯科技有限公司 应用页面的显示方法、装置以及电子设备
CN114779996A (zh) * 2022-04-07 2022-07-22 厦门大学 一种设备运行参数获取装置和设备控制机
CN114779996B (zh) * 2022-04-07 2023-11-21 厦门大学 一种设备运行参数获取装置和设备控制机
CN114741149A (zh) * 2022-04-15 2022-07-12 北京因数健康科技有限公司 单页应用的页面切换方法及装置、存储介质和电子设备
CN114741149B (zh) * 2022-04-15 2024-02-27 北京懿医云科技有限公司 单页应用的页面切换方法及装置、存储介质和电子设备
CN117130692A (zh) * 2023-10-23 2023-11-28 成都赛力斯科技有限公司 应用管理方法、装置、电子设备及存储介质
CN117130692B (zh) * 2023-10-23 2024-01-23 成都赛力斯科技有限公司 应用管理方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
CN110602321B (zh) 应用程序切换方法、装置、电子装置及存储介质
US11200022B2 (en) Method and apparatus of playing audio data
CN110308956B (zh) 一种应用界面显示方法、装置及移动终端
CN109327608B (zh) 歌曲分享的方法、终端、服务器和系统
CN113127130A (zh) 页面跳转方法、装置及存储介质
CN109144346B (zh) 歌曲分享方法、装置及存储介质
CN112181572A (zh) 互动特效展示方法、装置、终端及存储介质
CN109068008B (zh) 铃声设置方法、装置、终端及存储介质
CN110362366B (zh) 一种应用界面显示方法及装置
CN108132790B (zh) 检测无用代码的方法、装置及计算机存储介质
CN110288689B (zh) 对电子地图进行渲染的方法和装置
CN110868636B (zh) 视频素材的截取方法、装置、存储介质及终端
CN113411680A (zh) 多媒体资源播放方法、装置、终端及存储介质
CN108848492B (zh) 用户身份识别卡的启用方法、装置、终端及存储介质
CN111711838A (zh) 视频切换方法、装置、终端、服务器及存储介质
CN111510482A (zh) 失败网络请求的确定方法、装置及计算机存储介质
CN112966130B (zh) 多媒体资源展示方法、装置、终端及存储介质
CN113204672B (zh) 资源展示方法、装置、计算机设备及介质
CN110086814B (zh) 一种数据获取的方法、装置及存储介质
CN109032492B (zh) 一种切歌的方法及装置
CN111464829B (zh) 切换媒体数据的方法、装置、设备及存储介质
CN109189525B (zh) 加载子页面的方法、装置、设备及计算机可读存储介质
CN109101166B (zh) 音频控制方法、装置及存储介质
CN113268234A (zh) 页面生成方法、装置、终端和存储介质
CN108881715B (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