一种App内置浏览器与内嵌网页回退交互的方法技术领域
本发明涉及信息技术领域,特别涉及一种App内置浏览器与内嵌网页回退交互的
方法。
背景技术
随着html5技术的不断发展以及移动端浏览器对html5的支持越来越完善,html5
在移动的使用越来越广泛。同时html5的跨平台优势,一套html5代码可以兼容android、ios
等主流系统,于是就产生了手机app的webview加载html5网页的混合开发模式(即
HybirdApp)。它介于原生应用和网页应用之间,兼具NativeApp的良好用户体验的优势和
WebApp跨平台开发的优势。现有技术中,手机App内嵌网页的功能跳转后的回退机制比较混
乱,回退跳转加载网页速度慢、浪费用户流量,回退操作不能跟手机物理返回键绑定。
发明内容
针对现有技术的上述缺陷,本发明提供了一种App内置浏览器与内嵌网页回退交
互的方法,包括:
S101、登陆手机App,访问内嵌网页;
S102、用户在App内打开内嵌网页T,其中T页面为初始页面,即入口页面,url地址
存储在sessionStorage中;
S103、用户访问第一内嵌网页,将该页面url和参数记录在sessionStorage中;
S104、用户访问第二内嵌网页,将该页面url和参数记录在sessionStorage中,
S105、用户访问第三内嵌网页,浏览后触发回退功能,执行回退操作。
优选地,当每访问一个页面时,都会将该页面url和参数记录在sessionStorage
中。
优选地,所述S105、用户访问第三内嵌网页,浏览后触发回退功能,执行回退操作
进一步包括:
S201、用户在某个页面触发物理回退键或者导航的回退键;
S202、判断该页面地址是否与T页面地址一致,如果一致,则前往S203;
S203、判断为入口页面,执行跳出手机端内嵌浏览器并清空sessionStorage,返回
至App原生界面,回退结束。
优选地,如果S202中判断该页面地址是否与T页面地址不一致,则去往步骤S204;
S204、判断该页面地址是否有配置的回退父级页面;如果有配置,则去往S205;
S205、根据访问历史和配置文件进行回退地址的计算;
S206、消除历史记录中该区段间的访问记录,去往S207;
S207、回退到所配置的页面。
优选地,步骤S204中判断该页面地址没有配置的回退父级页面,则去往S207;
根据本发明的一个具体实施方式,根据具体业务的需要,某个功能页面的父级页
面可以多个,通过配置文件的方式设置,在不同的应用场景下自动选择回退到特定父级页
面;
S208、直接触发浏览器的返回,使用缓存打开页面;
S209、回退上一页面。
根据本发明的一个具体实施方式,根据具体业务的需要,同一功能页面设置多个
父级页面,通过配置文件的方式设置,在不同的应用场景下自动选择回退到特定父级页面。
配置各个网页功能块的返回路径,本地存储访问的历史路径,达到从那来回那去;回退使用
页面缓存,访问速度快,节省网络流量;同时,通过智能算法计算每次回退的地址,通过跟手
机原生客户端定义的JS接口,回退操作绑定手机的返回键盘,让用户感受到所有的操作跟
原生开发的App效果一模一样,极大的提升了用户的体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所
需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一
些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的与手机客户端交互接口以及网页内部处理跳转的方法
流程图;
图2是本发明实施例提供的内嵌网页回退交互方法。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例的方案,下面结合附图和实施
方式对本发明实施例作进一步的详细说明。
缩略语和关键术语定义
App(Application,应用程序):安装在手机上的软件。
Html5:是对HTML(Hyper Text Markup Language,即超文本标记语言)标准的第五
次修订。其主要的目标是将互联网语义化,以便更好地被人类和机器阅读,并同时提供更好
地支持各种媒体的嵌入。
Webview(网络视图):能加载显示网页,可以将其视为一个浏览器。使用智能手机
中内置的高性能的webkit内核浏览器显示网页,在SDK中封装为一个叫做WebView组件。
SessionStorage:html5中的存储方式。用于本地存储一个会话(session)中的数
据,这些数据只有在同一个会话中的页面才能访问并且当会话结束后数据也随之销毁。
根据本发明的一个具体实施方式,一种App内置浏览器与内嵌网页回退交互的方
法,当用户使用手机App使用内置浏览器访问内嵌网页时,记录用户浏览记录,并储存于
sessionStorage中,当用户需要执行回退操作,即触发手机物理返回键或App返回导航时,
依赖于手机App与网页端约定的交互接口,使其保持一致的行为,根据用户访问历史记录以
及网页页面间父级子级关系计算出应该返回的场景,即回退至某一指定页面或者关闭内置
浏览器,使内嵌网页表现出与App同样的场景切换效果且实现了将网页内部场景切换的控
制权全部放置在网页端。
如图1所示,本发明的一个具体实施方式提供了一种与手机客户端交互接口以及
网页内部处理跳转的方法,具体流程如下:
S101、登陆手机App,访问内嵌网页;
S102、用户在App内打开内嵌网页T,其中T页面为初始页面,即入口页面,url地址
存储在sessionStorage中;
S103、用户访问第一内嵌网页,将该页面url和参数记录在sessionStorage中;
S104、用户访问第二内嵌网页,将该页面url和参数记录在sessionStorage中,
S105、用户访问第三内嵌网页,浏览后触发回退功能,执行回退操作。
其中的第一内嵌网页,第二内嵌网页以及第三内嵌网页仅是示例说明,在具体实
施过程中不限制内嵌网页的个数。
根据本发明的一个具体实施方式,
S101’、用户登陆手机App,访问内嵌网页;
S102’、用户在App内打开内嵌网页T,其中T页面为初始页面,即入口页面,url地址
存储在sessionStorage中;
S103’、用户访问内嵌网页a,当每访问一个页面时,都会将该页面url和参数记录
在sessionStorage中;
S104’、用户访问内嵌网页b;
S105’、用户访问内嵌网页c,浏览后触发回退功能,执行回退操作。
如图2所示,根据本发明的一个具体实施方式,当用户访问任何内嵌网页功能时,
需要退出网页功能,都按照如下步骤执行。
S201、用户在某个页面触发物理回退键或者导航的回退键;
S202、判断该页面地址是否与T页面地址一致,如果一致,则前往S203,如果不一
致,则去往步骤S204;
S203、判断为入口页面,执行跳出手机端内嵌浏览器并清空sessionStorage,返回
至App原生界面,所有回退结束;
S204、判断该页面地址是否有配置的回退父级页面;如果有配置,则去往S205;如
果未配置,则去往S207;
根据本发明的一个具体实施方式,根据具体业务的需要,某个功能页面的父级页
面可以多个,通过配置文件的方式设置,在不同的应用场景下自动选择回退到特定父级页
面;
S205、根据访问历史和配置文件进行回退地址的计算;
S206、消除历史记录中该区段间的访问记录,去往S207;
S207、回退到所配置的页面;
S208、直接触发浏览器的返回,使用缓存打开页面;
S209、回退上一页面。
根据本发明的一个具体实施方式,
S201’、用户在浏览c页面时触发物理回退键或者导航的回退键;
S202’、判断该页面地址是否与T页面地址一致;
S203’、如果一致,判断为入口页面,执行跳出手机端内嵌浏览器并清空
sessionStorage,返回至App原生界面,所有回退结束;如果不一致,则去往步骤S204’;
S204’、判断c页面地址是否有配置的回退父级页面;如果有配置,则去往S205’;如
果未配置,则去往S207’;
根据本发明的一个具体实施方式,当前该配置中c页面的父级页面为a页面;
S205’、根据访问历史和配置文件进行回退地址的计算,计算得到当前回退页面;
优选地,S205’还可以读取本地存储的地址库及当前地址的配置信息,在地址库中
查找是否有这个地址,如果有,回退到配置地址,清除该地址后面所有的地址信息,得到最
新的地址库并更新地址库,如果没有查找到,直接跳转到配置地址,同时记录到地址库中,
更新地址库。
优选地,地址库以数组的形式存储,例如:[url1,url2,url3,url5,url7,url8,
url10,url13];地址的配置信息以json的数据格式存储:{‘url5’:{‘k1’:[url2]},’
url13’:{‘k1’:[url7]}};如果当前页面是url13,在配置里面存在url13的配置url7,而且
在现有的地址库中查找存在url7的地址,回退直接到url7,清除url7地址后面的所有的信
息,即地址库信息变更为:[url2,url3,url5,url7]。如果当前的地址库为[url1,url2,
url3,url5,url6,url8,url13];当前地址为url13,但是当前地址库中没有找到他的配置
url7,直接回退到地址url7,新的地址库变为[url1,url2,url3,url5,url6,url8,url13,
url7],更新地址库。
S206’、消除历史记录中该区段间,即a页面之后的访问记录,去往S207;
S207’、回退到所配置的页面;
S208’、直接触发浏览器的返回,使用缓存打开页面;
S209’、回退上一页面,即b页面。
通过实施本发明所提供的方法,用户使用手机App使用内置浏览器访问内嵌网页
时,程序记录用户浏览记录,并储存于sessionStorage中,当用户需要执行回退操作,即触
发手机物理返回键或App返回导航时,依赖于手机App与网页端约定的交互接口,使其保持
一致的行为,根据用户访问历史记录以及网页页面间父级子级关系计算出应该返回的场
景,即回退至某一指定页面或者关闭内置浏览器,使内嵌网页表现出与App同样的场景切换
效果且实现了将网页内部场景切换的控制权全部放置在网页端,提升了开发协作性并实现
了将内置浏览器端页面的可管理性。
本发明的访问方式既可以支持跟原生App的执行方式一样,从那来回那去,也可以
特定的配置某个操作的跳转到指定的地方,非常灵活方便。同时使用到内置浏览器的缓存
机制,返回直接走缓存页面,速度快,同时也节省流量。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部
分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。本领域普通技术
人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和
原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。