1310-6499-520
今天是:
站内搜索:  
您的当前位置:主页 > 知识博客 > 设计管理 >
联系我们

名称:九分网络科技

联系:13106499520

地址:福建省福州市仓山区金榕南路553号


扫一扫添加微信

移动端路由层设计--九分网络

时间:2020-06-08   分类:设计管理    作者:网络   来源:网络整理   点击:178

什么是移动端路由层:

九分网络

路由层的概念在服务端是指url请求的分层解析,将一个请求分发到对应的应用处理程序。移动端的路由层指的是将诸如App内页面访问、H5与App访问的访问请求和App间的访问请求,进行分发处理的逻辑层。 内容采集来自9fen.net

移动端路由层需要解决的问题:

copyright 9fen.net

对外部提供远程访问的功能,实现跨应用调用响应,包括H5应用调用、其他App应用调用、系统访问调用等 本文来自九分网络

www.9fen.net

原生页面、模块、组件等定义,统称为资源(Resource),在跨应用调用和路由层在不同端实现的业务表现需要一致的前提下,需要对资源进行定义,在路由提供内部请求分发的时候则可以提供不依赖对外进行资源定义的功能

本文来自九分网络

copyright 9fen.net

外部调用如何使用统一标示(Uniform)进行表示资源 内容采集来自9fen.net

copyright 9fen.net

如何在移动端统一定义访问请求的过程,从而达成移动端与web端的统一性

本文来自九分网络

本文来自九分网络

如何更好的兼容iOS、Android的系统访问机制、App链接协议、web端路由机制与前端开发规范等 www.9fen.net

copyright 9fen.net

如何兼容各平台(Android、iOS)App页面导航机制

www.9fen.net

九分网络

如何解决安全访问问题

内容采集来自9fen.net

copyright 9fen.net

移动端在客户端进行动态配置 本文来自九分网络

本文来自九分网络

移动端路由所应用的场景

copyright 9fen.net

本文来自九分网络

H5页面与App原生页面、模块与组件的交互

内容采集来自9fen.net

内容采集来自9fen.net

App与App之间的相互访问

九分网络

copyright 9fen.net

App内部页面跳转、模块调度与组件加载等

内容采集来自9fen.net

九分网络

推送与通知系统解除硬编码的逻辑,动态访问原生资源,更好的支持通过通知和推送完成动态页面访问和逻辑执行

www.9fen.net

www.9fen.net

Extension等动态调用主App的资源 www.9fen.net

本文来自九分网络

App实现更复杂的架构MVVM或者是VIPER架构,提供解除业务相互依赖的能力

内容采集来自9fen.net

内容采集来自9fen.net

以组件化为目的的工程改造,隔离各个业务,以制作单独的组件 九分网络

本文来自九分网络

对外如何定义资源

九分网络

在路由提供对外的资源请求转发的时候,因为要照顾到其他应用的请求表达方式,比如H5应用或者是其他App的应用的访问请求,定义单纯依赖业务的资源定义就显得有些必要了。

copyright 9fen.net

举个例子,一个H5的商品详情页,被用户分享,当其他用户看到这个H5应用的页面的时候,点击,如果该用户装了有对应这个H5商品详情页的App的时候,应该跳转到该App的原生商品详情页,如果没有安装则加载这个H5页面,在这个过程中,H5的页面是通过URL进行标识的,那这个URL的标识也应该对照到App的原生页面,但是要只依赖业务标识而不能依赖App的代码实现,比如说iOS端的App的商品详情页叫做DetailViewController,那这个URL是不能包含这个名字的,Android端可能叫DetailActivity,如果不单纯依赖业务,那H5应用就要根据平台来重新发送不同的资源定义的URL,就造成了硬编码问题,H5应用要依赖App的实现逻辑,如果有一天,原生App的页面代码实现变成了GoodDetailViewController,所有依赖DetailViewController这个资源标示的H5应用都要进行更改,就会出现问题。所以路由层的设计应该具备根据业务定义来映射App内的资源定义。 www.9fen.net

常常在设计路由层的时候,我们会更加关注通信行为的细节、如何改进特定通信机制的表现,常常忽略了一个事实,那就是改变应用程序的互动风格比改变协议对整体的表现有更大的影响。

九分网络

所谓资源,就是一个应用程序提供的不可分割的服务,从这个层面上看,App的资源即是一种实体的存在,可以进行获取和访问,必须进行良好的表示,在有些必要的情况下,必须是独一无二的识别符来表示一个应用程序所提供的服务是什么。表示资源我们更倾向于使用URI进行标示,因为移动端没有一个横跨iOS、Android、Web后端与H5应用的资源标示方式,而URI是web service模式的资源通用表示方式,包括后面将要提到的Android与iOS统一支持的universal link(通用链接)也是借用URI的概念,App路由层所涉及到的资源表示方法还是建议使用URI的标示方式,同时更应该借鉴RESTful风格来架构这一层,原因是App的页面、组件或者说一整套功能性的服务是非常复杂的,相比于H5有更加多与复杂的交互,相比于后端存在更加苛刻的网络环境与多设备多平台的技术考量,所以URI在标示横跨多平台多版本的资源的情况下,能够更好的表示某一个资源实体而不是资源的表现形式。

www.9fen.net

在Android与iOS系统中,均支持URL Scheme,所以资源的标示通常会是这个样子: 九分网络

AppScheme://path www.9fen.net

//例如qq app: 内容采集来自9fen.net

mqq:// www.9fen.net

//支付宝:

本文来自九分网络

支付宝alipay://

copyright 9fen.net

标签: 移动 设计 路由

郑重声明:本文版权归原作者所有,九分网络转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。


九分网络专业提供公众号、小程序、PC及移动端站点搭建!网站程序及服务器维护:13106499520。微信:452570709

----相关文章----