掌桥专利:专业的专利平台
掌桥专利
首页

路由跳转方法、装置及存储介质

文献发布时间:2024-04-18 20:00:50


路由跳转方法、装置及存储介质

技术领域

本申请涉及通信技术领域,尤其涉及一种路由跳转方法、装置及存储介质。

背景技术

路由组件是应用路由管理的基础组件。为支撑企业应用业务运转,企业应用路由均通过自研路由组件实现应用路由管理。一般路由组件通过读取路由配置信息中的路由地址、路由参数、自动进行路由分类及参数传递,实现快捷路由跳转及信息管理。

目前,iOS常用路由框架是JL Router、HH Router、MGJ Router,但上述这些路由库都各有不足,首先是JL Router,用不到的功能繁多,而且基于遍历查找URL,效率低下,其次是HH Router耦合程度太高,过度依赖View Controller。因此,如何高效的实现业务路由之间的跳转交互是目前亟待解决的问题。

发明内容

本申请提供一种路由跳转方法、装置及存储介质,能够高效的实现业务路由之间的跳转交互。

为达到上述目的,本申请采用如下技术方案:

第一方面,本申请提供一种路由跳转方法,所述方法包括:接收用户设备的路由请求,确定第一页面的源路由控制器;所述路由请求包括第二页面的路由参数;所述第一页面为原生页面或web网页页面;基于所述路由请求,确定所述第二页面的目的路由控制器;所述第二页面为原生页面或web网页页面;向所述目的路由控制器发起路由跳转。

结合第一方面,在一种可能的实现方式中,向所述目的路由控制器发起路由跳转之前,还包括:确定所述路由参数的类型;所述路由参数的类型包括原生路由参数和网页路由参数;所述向所述目的路由控制器发起路由跳转,包括:在所述路由参数的类型为所述原生路由参数的情况下,通过路由表向所述目的路由控制器发起路由跳转;在所述路由参数的类型为所述网页路由参数的情况下,通过浏览器向所述目的路由控制器发起路由跳转。

结合第一方面,在一种可能的实现方式中,在所述路由参数的类型为所述原生路由参数的情况下,所述方法,还包括:在所述路由表中不存在所述路由参数的情况下,在所述路由表中添加所述路由参数。

结合第一方面,在一种可能的实现方式中,所述确定第一页面的源路由控制器,包括:基于所述第一页面的视图堆栈,确定栈顶页面控制器;在所述栈顶页面控制器存在导航控制器的情况下,将所述导航控制器作为所述源路由控制器;在所述栈顶页面控制器不存在所述导航控制器的情况下,将所述栈顶页面控制器作为所述源路由控制。

第二方面,本申请提供一种路由跳转装置,所述装置包括:处理单元和通信单元;所述通信单元,用于接收用户设备的路由请求;所述处理单元,用于确定第一页面的源路由控制器;所述路由请求包括第二页面的路由参数;所述第一页面为原生页面或web网页页面;所述处理单元,还用于基于所述路由请求,确定所述第二页面的目的路由控制器;所述第二页面为原生页面或web网页页面;所述处理单元,还用于向所述目的路由控制器发起路由跳转。

结合第二方面,在一种可能的实现方式中,所述处理单元,还用于:确定所述路由参数的类型;所述路由参数的类型包括原生路由参数和网页路由参数;所述处理单元,具体用于:在所述路由参数的类型为所述原生路由参数的情况下,通过路由表向所述目的路由控制器发起路由跳转;在所述路由参数的类型为所述网页路由参数的情况下,通过浏览器向所述目的路由控制器发起路由跳转。

结合第二方面,在一种可能的实现方式中,在所述路由参数的类型为所述原生路由参数的情况下,所述处理单元,还用于:在所述路由表中不存在所述路由参数的情况下,在所述路由表中添加所述路由参数。

结合第二方面,在一种可能的实现方式中,所述处理单元,具体用于:基于所述第一页面的视图堆栈,确定栈顶页面控制器;在所述栈顶页面控制器存在导航控制器的情况下,将所述导航控制器作为所述源路由控制器;在所述栈顶页面控制器不存在所述导航控制器的情况下,将所述栈顶页面控制器作为所述源路由控制。

第三方面,本申请提供了一种路由跳转装置,该装置包括:处理器和通信接口;通信接口和处理器耦合,处理器用于运行计算机程序或指令,以实现如第一方面和第一方面的任一种可能的实现方式中所描述的路由跳转方法。

第四方面,本申请提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当指令在终端上运行时,使得终端执行如第一方面和第一方面的任一种可能的实现方式中描述的路由跳转方法。

在本申请中,上述路由跳转装置的名字对设备或功能模块本身不构成限定,在实际实现中,这些设备或功能模块可以以其他名称出现。只要各个设备或功能模块的功能和本申请类似,属于本申请权利要求及其等同技术的范围之内。

本申请的这些方面或其他方面在以下的描述中会更加简明易懂。

基于上述技术方案,一种路由跳转方法,通过接收用户设备的路由请求,确定第一页面的源路由控制器和第二页面的目的路由控制器,实现页面路由的灵活跳转,进而实现原生页面和网页页面的无障碍拉起,能够高效的保证业务路由之间的跳转交互。

此外,在第一页面和第二页面之间的跳转方式可以选择快捷跳转或者从路由列表跳转,以此使路由管理功能更加完善灵活,并且本申请实施例具备列表持久化、同时可以预配路由列表、修改路由列表、并具有临时注册路由项目的功能,实现对路由管理的灵活安全性,路由跳转装置还可以选择临时参数、半永久参数以及永久参数,解决了传统Url传参,页面刷新及二级页面间跳转时参数丢失的痛点,可省去传统持久化参数需手动处理参数生命周期的问题。

附图说明

图1为本申请提供的一种通信系统的结构示意图;

图2为本申请提供的一种路由跳转装置的结构示意图;

图3为本申请提供的一种路由跳转方法的流程图;

图4为本申请提供的另一种路由跳转方法的流程图;

图5为本申请提供的另一种路由跳转方法的流程图;

图6为本申请提供的另一种路由跳转装置的结构示意图。

具体实施方式

下面结合附图对本申请实施例提供的路由跳转方法及装置进行详细地描述。

本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。

本申请的说明书以及附图中的术语“第一”和“第二”等是用于区别不同的对象,或者用于区别对同一对象的不同处理,而不是用于描述对象的特定顺序。

此外,本申请的描述中所提到的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括其他没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

需要说明的是,本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。

路由组件是应用路由管理的基础组件。为支撑企业应用业务运转,企业应用路由均通过自研路由组件实现应用路由管理。一般路由组件通过读取路由配置信息中的路由地址、路由参数、自动进行路由分类及参数传递,实现快捷路由跳转及信息管理。并且,路由组件是提供路由参数配置、传递、网页及原生路由快捷跳转功能的组件,一般应用于原生页面之间的跳转、网页与原生页面之间的相互跳转及传参场景。路由组件通过注册路由地址、路由参数配置、自动路由归类实现各类页面间的跳转及数据交互。

路由组件是提供多种页面跳转及返回、参数传递、跳转方式、跳转动画、页面层级控制、路由管理功能的组件,一般路由过定义传参、跳转方式、动画方式、路由地址等实现各类页面、各种交互形式的跳转和通信。通过注册路由列表实现路由的管理。

目前iOS常用路由框架是JLRouter、HHRouter、MGJRouter。但是这些路由库都各有不足,首先是JLRouter,用不到的功能繁多,而且基于遍历查找URL,效率低下。HHRouter耦合程度太高,过度依赖ViewController。而MGJRouter功能过于简单,例如对于原生api跳转:逻辑繁琐,代码冗余量大,开发效率低,无法大规模统一管理路由,无法自动处理原生及网页相互跳转。以及使用现有开源框架:无法满足业务需求,流程变更时,更新不便;开源框架系统安全性、逻辑安全性无法得到保证。

为了解决现有技术中的问题,本申请实施例提供一种路由跳转方法,通过接收用户设备的路由请求,确定第一页面的源路由控制器和第二页面的目的路由控制器,实现页面路由的灵活跳转,进而实现原生页面和网页页面的无障碍拉起,能够高效的保证业务路由之间的跳转交互。

此外,在第一页面和第二页面之间的跳转方式可以选择快捷跳转或者从路由列表跳转,以此使路由管理功能更加完善灵活,并且本申请实施例具备列表持久化、同时可以预配路由列表、修改路由列表、并具有临时注册路由项目的功能,实现对路由管理的灵活安全性,路由跳转装置还可以选择临时参数、半永久参数以及永久参数,解决了传统Url传参,页面刷新及二级页面间跳转时参数丢失的痛点,可省去传统持久化参数需手动处理参数生命周期的问题。

如图1所示为本申请实施例提供一种通信系统100的结构示意图,该通信系统100包括:通用浏览器模块101、MS js接口文件102、以及YH Router路由管理器103。

通用浏览器模块101主要为web页面的展示提供载体,web页面通过WK Web View提供的系统js/原生交互通道与YH Router实现通信。在通用浏览器创建成功时,YH Router调用系统api向通用浏览器注册js交互通道,并实现系统api的js交互代理方法,在代理方法中处理web页面向原生发起的交互请求。原生页面也可以通过调用通用浏览器的系统api向web页面发起js交互请求。web页面可以通过引用用MS文件,并调用MS文件封装好的功能接口向原生侧发起交互请求。

MS js接口文件102为web页面和YH Router通信定义通信接口协议,web页面可以通过引用MS文件调用MS定义好的各个功能接口。其中,MS文件在路由功能中提供的主要接口有注册路由接口、删除路由接口、路由跳转接口、路由返回接口、路由参数读取接口、以及路由返回参数读取接口。同时,MS定义了各个功能接口的交互参数格式,各接口以对象键值对的格式来进行参数传递。例如,MS接口交互参数包括但不限于接口名称、接口调用方式(同步/异步)、以及业务参数。MS注册/删除路由接口参数包括但不限于路由名称、路由地址、适用版本、是否需要登录环境。MS路由跳转接口参数包括但不限于路由名称、路由地址、路由参数、路由方式。MS路由返回接口参数包括但不限于返回层级数、返回业务参数。MS文件可以封装向原生侧通信的能力,MS通过调用通用浏览器的js交互系统api向原生侧发起交互请求。

YH Router路由管理器103主要提供注册、删除路由,路由跳转、返回、匹配及创建能力的作用,并且可以进行参数处理、以及源控制器的匹配。YH Router路由管理器103能够采用通用浏览器的js交互代理方法,web页面发起的交互请求及携带的参数会在该代理方法中返回。在YH Router路由管理器103收到代理方法的交互请求的情况下,YH Router路由管理器103可以将携带的参数解析为原生侧的字典(键值对)。以下对YH Router路由管理器103可以实现的具体功能进行详细介绍。

1、YH Router路由管理器103可以通过解析字典参数中的接口名称来区分web侧要调用的功能,YH Router路由管理器103还可以通过解析字典参数中的接口调用方式,来区分功能接口的调用方式。

2、YH Router路由管理器103可以实现动态注册路由的功能,在收到注册路由请求的情况下,YH Router路由管理器103可以根据路由名称去本地路由列表中查找,若该路由已添加过,则直接替换更新本地路由库。若还未添加则将该路由保存到本地路由列表中。

3、YH Router路由管理器103可以实现删除路由的功能,在收到删除路由请求的情况下,YH Router路由管理器103可以根据路由名称去本地路由列表中查找,并且直接从库中删除该路由。

4、YH Router路由管理器103可以实现源控制器匹配的功能。

5、YH Router路由管理器103可以实现目的路由匹配及创建的功能,YH Router路由管理器103以路由接口参数中的路由名称到本地路由列表中获取路由数据。获取到路由数据后,通过判断路由地址的前缀来区分目的路由类型。若地址前缀为原生路由前缀,则以路由地址对应的原生控制器类别来创建路由对象,作为目的路由。若地址前缀为web路由前缀,则以路由Url创建通用浏览器对象,作为目的路由。若路由列表表中未匹配到接口路由名称参数所对应的路由,且接口路由地址参数为web类型时,则以此路由地址创建通用浏览器控制器作为目的路由控制器;若接口路由地址参数为原生类型,且路由列表中未匹配到,则返回接口参数异常错误信息。

6、YH Router路由管理器103具有路由跳转/返回参数的处理(写入/读取)能力,YHRouter路由管理器103收到路由跳转/返回请求后,会匹目的路由对象,并将路由跳转/返回参数,运用Run Time的属性动态绑定能力将参数存储到目的路由对象内存中,存储参数的key使用当前时间戳+目的路由的类名+随机盐值生成,确保key值的唯一性和路由参数的安全存储。当目的路由对象中的web页面发起读取路由参数时,YH Router路由管理器103可以通过读取目的路由内存中路由参数通过读取回调方法返回给web页面。如此便实现了同一目的路由浏览器中的不同web页面实现参数共享。省去了同一容器的不同页面反复相互传参的流程。

7、YH Router路由管理器103具有路由跳转的能力,在YH Router路由管理器103收到路由跳转请求的情况下,确定源控制器,再确定目的路由控制器,使用路由参数处理能力将路由参数写入目的路由控制器的内存中,最后使用源控制器以业务指定的路由方式实施路由跳转。

8、YH Router路由管理器103具有路由返回的能力,YH Router路由管理器103通过判断宿主应用顶层控制器是否为通用浏览器控制器,来区分发起路由的是web页面还是原生页面。YH Router路由管理器103收到web页面的路由返回请求后,使用路由参数处理能力将路由返回参数写入当前web页面所在的通用浏览器的内存中。

随后,根据返回参数的返会层级数,通过当前web页面所在的通用浏览器提供的系统api实施返回指定层级功能,若当前浏览器中web页面层级数小于指定的返回层级数,则通过宿主应用视图层级堆栈找到当前web所在的浏览器控制器的上一层控制器作为返回目标控制器,并将返回参数写入返回目标控制器内存中,最后通过系统方法弹出当前web所在的浏览器控制器。

9、YH Router路由管理器103收到原生页面的路由返回请求后,可以根据指定的返回层级数,在宿主应用的视图层级堆栈中找到对应的目的路由控制器,并将返回参数使用参数处理能力写入到目的路由控制器内存中,最后通过系统api将视图层级返回到目的路由控制器。

一种示例中,图2为本申请实施例提供的一种路由跳转装置的结构示意图。该路由跳转装置包括至少一个处理器201,通信线路202,以及至少一个通信接口204,还可以包括存储器203。其中,处理器201,存储器203以及通信接口204三者之间可以通过通信线路202连接。

处理器201可以是一个中央处理器(central processing unit,CPU),也可以是特定集成电路(application specific integrated circuit,ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路,例如:一个或多个数字信号处理器(digital signalprocessor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA)。

通信线路202可以包括一通路,用于在上述组件之间传送信息。

通信接口204,用于与其他设备或通信网络通信,可以使用任何收发器一类的装置,如以太网,无线接入网(radio access network,RAN),无线局域网(wireless localarea networks,WLAN)等。

存储器203可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于包括或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。

一种可能的设计中,存储器203可以独立于处理器201存在,即存储器203可以为处理器201外部的存储器,此时,存储器203可以通过通信线路202与处理器201相连接,用于存储执行指令或者应用程序代码,并由处理器201来控制执行,实现本申请下述实施例提供的网络质量确定方法。又一种可能的设计中,存储器203也可以和处理器201集成在一起,即存储器203可以为处理器201的内部存储器,例如,该存储器203为高速缓存,可以用于暂存一些数据和指令信息等。

作为一种可实现方式,处理器201可以包括一个或多个CPU,例如图2中的CPU0和CPU1。作为另一种可实现方式,路由跳转装置200可以包括多个处理器,例如图2中的处理器201和处理器207。作为再一种可实现方式,路由跳转装置200还可以包括输出设备205和输入设备206。

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将网络节点的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,模块和网络节点的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

如图3所示,为本申请实施例提供的一种路由跳转方法的流程图,本申请实施例提供的路由跳转方法可以应用于如图1所示的通信系统中,本申请实施例提供的设备定位方法可以通过以下步骤实现。

S301、接收用户设备的路由请求,确定第一页面的源路由控制器。

其中,路由请求包括第二页面的路由参数,第一页面为当前页面,当前页面可以为原生页面或web网页页面,路由跳转装置可以为YH Router路由管理器。

在一种可能的实现方式中,路由跳转装置响应于用户的操作,接收到用户设备的路由请求,根据第一页面的视图堆栈,确定栈顶页面控制器;在栈顶页面控制器存在导航控制器的情况下,将导航控制器作为源路由控制器。

一种示例,用户点击某金融应用APP,进入该金融应用APP的首页页面,该首页页面即为原生页面,出于用户的某些需求,需要进入该金融应用APP的其他页面,进而金融应用APP响应于用户的操作,则路由跳转装置接收到用户设备的路由请求,获取当前页面应用的视图堆栈,进行逐级遍历确定栈顶页面的控制器,在栈顶页面的控制器中存在导航控制器的情况下,将该导航控制器作为源路由控制器,例如,金融应用APP的首页上的导航栏可以理解为导航控制器。具体的,路由参数如下表1所示。

表1参数列表

在又一种可能的实现方式中,在栈顶页面控制器不存在导航控制器的情况下,将栈顶页面控制器作为源路由控制。

又一种示例,在金融应用APP的首页上未存在导航栏的情况下,将栈顶页面控制器作为源路由控制。

S302、基于路由请求,确定第二页面的目的路由控制器。

其中,第二页面为目的页面,目的页面可以为原生页面或web网页页面。

作为一种可能的实现方式,路由跳转装置解析路由请求,确定路由参数、跳转方式、转场动画、以及路由地址,进而确定第二页面的目的路由控制器。

S303、确定路由参数的类型。

其中,路由参数的类型包括原生路由参数和网页路由参数。

作为一种可能的实现方式,路由跳转装置接收到路由请求后,且解析该路由请求确定路由地址的情况下,可以通过判断路由地址的前缀区分目的路由的类型。

一种示例,若路由地址的前缀为原生路由的前缀,则以路由地址对应的原生控制器类别创建路由对象,作为目的路由,也即是说第二页面为原生页面的情况。

又一种示例,若路由地址的前缀为web路由的前缀,则以路由Url创建通用浏览器对象,作为目的路由,也即是说第二页面为网页页面的情况。

S304、向目的路由控制器发起路由跳转。

在一种可能的实现方式中,在路由参数的类型为原生路由参数的情况下,通过路由表向目的路由控制器发起路由跳转。

结合S303中的示例,路由跳转装置确定路由请求的类型为原生路由、已解析出的路由地址存在于路由表中,进而路由跳转装置可以直接进行快捷跳转。

在又一种可能的实现方式中,在路由参数的类型为原生路由参数的情况下,且路由表中不存在路由参数,则路由跳转装置返回接口参数异常错误信息,并在路由表中添加路由参数,在通过路由表向目的路由控制器发起路由跳转。

在又一种可能的实现方式中,在路由参数的类型为网页路由参数的情况下,通过浏览器向目的路由控制器发起路由跳转。

又一种示例,若路由表的表中未匹配到接口路由名称参数所对应的路由(路由请求中的路由参数),且接口路由地址参数为网页路由参数时,则以此路由地址创建通用浏览器控制器进行跳转。

基于图3的技术方案,本申请实施例提供一种路由跳转方法,通过接收用户设备的路由请求,确定第一页面的源路由控制器和第二页面的目的路由控制器,实现页面路由的灵活跳转,进而实现原生页面和网页页面的无障碍拉起,能够高效的保证业务路由之间的跳转交互。

此外,在第一页面和第二页面之间的跳转方式可以选择快捷跳转或者从路由列表跳转,以此使路由管理功能更加完善灵活,并且本申请实施例具备列表持久化、同时可以预配路由列表、修改路由列表、并具有临时注册路由项目的功能,实现对路由管理的灵活安全性,路由跳转装置还可以选择临时参数、半永久参数以及永久参数,解决了传统Url传参,页面刷新及二级页面间跳转时参数丢失的痛点,可省去传统持久化参数需手动处理参数生命周期的问题。

综上,传统的路由发起侧跳转需要确认当前的源控制器、跳转携带的参数、目的地址。流程较为繁琐且限制性较大,本路由则无需关注发起的源控制器或页面,只需确定路由目的页面地址及所需携带的参数,即可发起路由跳转。路由管理器会通过路由堆栈匹配技术,自动获取当前应用中顶层活跃的控制器,作为源控制器。根据路由地址及参数自动区分目的页面为原生/网页,根据路由列表自动匹配路由目的对象、自动拼装路由参数实现快捷跳转及参数传递。从而实现模块儿间的解偶目的,并有效突破原生与web间的无障碍通信。

同时,web传参更加灵活安全,支持传统的url传参实现便捷一次性传参。同时支持简单明了的对象键值对传参,路由管理对象可以自动实现参数解析与拼接传递。支持web页面内部跳转多页面共享参数,省去了内部多页面反复传参的繁琐,路由对象可根据路由参数配置自动识别参数管理方式,通过iOS强大的运行时机制动态与目的路由对象绑定参数,从而实现同一浏览器与多页面之前的参数共享。当路由根页面弹出时路由浏览器与参数会自动销毁。各子页面无需关注参数的生存周期,只需在使用时获取即可。从而更加便捷安全高效的实现多页面间的参数共享。

以下对本申请实施例提供的另一种路由跳转方法的总体流程进行介绍,如图4所示。

S401、配置路由参数/跳转方式/转场动画等参数。

S402、在第一页面为原生页面的情况下,接收用户设备的路由请求。

S403、匹配第一页面的源控制器。

S404、解析路由请求。

S405、确定路由表中是否存在路由请求的路由参数,并根据路由参数确定第二页面为原生页面/网页页面。

S406、在路由表中存在路由参数,且第二页面为原生页面的情况下,确定目的路由控制器。

S407、进行快捷跳转。

S408、在路由表中不存在路由参数,且第二页面为原生页面的情况下,在路由表中注册路由参数,并确定目的路由控制器。

S409、通过路由表进行跳转。

S410、在第二页面为网页页面的情况下,以路由Url创建通用浏览器对象,确定目的路由控制器。

S411、通过通用浏览器进行跳转。

以下对本申请实施例提供的另一种路由跳转方法的总体流程进行介绍,如图5所示。

S501、配置路由参数/跳转方式/转场动画等参数。

S502、在第一页面为网页页面的情况下,接收用户设备的路由请求。

S503、匹配第一页面的源控制器。

S504、解析路由请求。

S505、根据路由参数确定第二页面为原生页面/网页页面。

S506、在第二页面为原生页面的情况下,确定目的路由控制器。

S507、进行快捷跳转。

S508、在第二页面为网页页面的情况下,以路由Url创建通用浏览器对象,确定目的路由控制器。

S509、通过通用浏览器进行跳转。

本申请实施例可以根据上述方法示例对路由跳转装置进行功能模块或者功能单元的划分,例如,可以对应各个功能划分各个功能模块或者功能单元,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块或者功能单元的形式实现。其中,本申请实施例中对模块或者单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

如图6所示,为本申请实施例提供的一种路由跳转装置的结构示意图,装置包括:处理单元601和通信单元602;通信单元602,用于接收用户设备的路由请求;处理单元601,用于确定第一页面的源路由控制器;路由请求包括第二页面的路由参数;第一页面为原生页面或web网页页面;处理单元601,还用于基于路由请求,确定第二页面的目的路由控制器;第二页面为原生页面或web网页页面;处理单元601,还用于向目的路由控制器发起路由跳转。

在一种可能的实现方式中,处理单元601,还用于:确定路由参数的类型;路由参数的类型包括原生路由参数和网页路由参数;处理单元601,具体用于:在路由参数的类型为原生路由参数的情况下,通过路由表向目的路由控制器发起路由跳转;在路由参数的类型为网页路由参数的情况下,通过浏览器向目的路由控制器发起路由跳转。

在一种可能的实现方式中,在路由参数的类型为原生路由参数的情况下,处理单元601,还用于:在路由表中不存在路由参数的情况下,在路由表中添加路由参数。

在一种可能的实现方式中,处理单元601,具体用于:基于第一页面的视图堆栈,确定栈顶页面控制器;在栈顶页面控制器存在导航控制器的情况下,将导航控制器作为源路由控制器;在栈顶页面控制器不存在导航控制器的情况下,将栈顶页面控制器作为源路由控制。

在通过硬件实现时,本申请实施例中的通信单元602可以集成在通信接口上,处理单元601可以集成在处理器上。以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。

相关技术
  • 环卫车的路面清扫方法及环卫车、环卫车控制设备
  • 环卫车用驻车制动系统及环卫车
技术分类

06120116541953