一种基于Flutter&Native混合开发模式下的APP网络请求框架构建方法技术

技术编号:38102099 阅读:10 留言:0更新日期:2023-07-06 09:21
本发明专利技术涉及软件开发技术领域,尤其为一种基于Flutter&Native混合开发模式下的APP网络请求框架构建方法,包括请求头信息封装、网络接口请求返回数据异常情况逻辑封装、Flutter&Native信息传递。本发明专利技术,通过使得Flutter端无需实现网络接口请求头(header)中各参数的获取和网络接口请求返回数据基础数据的逻辑处理,无论是Flutter端还是Native端,网络请求头信息中各参数的获取均在Native端实现,这样就保证了混合开发过程中网络接口请求头信息的一致性,从而提高应用在使用过程中的稳定性,降低了Flutter端代码维护成本。降低了Flutter端代码维护成本。降低了Flutter端代码维护成本。

【技术实现步骤摘要】
一种基于Flutter&Native混合开发模式下的APP网络请求框架构建方法


[0001]本专利技术涉及软件开发
,具体为一种基于Flutter&Native混合开发模式下的APP网络请求框架构建方法。

技术介绍

[0002]目前大多数开发者会采用第三方混合开发框架(如Flutter Boost、Thrio、QFlutter等)进行混合开发。第三方混合开发框架大都提供了混合路由栈管理、生命周期监听、路由相关事件通知机制等基础交互能力,但对于混合式网络请求框架的探索较少。在构建Flutter&Native混合开发模式下的网络请求框架时,目前大多采用以下两种方式:
[0003]1.在混合开发模式中封装两套网络请求框架,在Native代码中使用Native代码封装的网络请求框架,在Flutter代码中使用Dart代码封装的网络请求框架;
[0004]2.是通过第三方混合开发框架提供的数据传递机制,实现对网络请求框架的封装。
[0005]但是上述方法存在以下缺点:
[0006]1.增加了代码维护成本,当有网络接口请求逻辑发生变更时,需要同时维护两端的网络请求框架代码;
[0007]2.可能会出现网络接口请求时原生和flutter端请求头信息不同步的问题,给应用的稳定性带来极大挑战。
[0008]因此,针对上述问题提出一种基于Flutter&Native混合开发模式下的APP网络请求框架构建方法。

技术实现思路

[0009]本专利技术的目的在于提供一种基于Flutter&Native混合开发模式下的APP网络请求框架构建方法,以解决上述
技术介绍
中提出的问题。
[0010]为实现上述目的,本专利技术提供如下技术方案:
[0011]一种基于Flutter&Native混合开发模式下的APP网络请求框架构建方法,包括请求头信息封装、网络接口请求返回数据异常情况逻辑封装、Flutter&Native信息传递,具体包括如下步骤:
[0012]S1、在Native端实现对网络接口请求头(header)信息获取方法的封装;
[0013]S2、在Native端实现对网络接口请求返回数据异常情况的逻辑处理方法的封装;
[0014]S3、通过MethodChannel构建Flutter和Native之间通信通道:
[0015]S4、在Flutter端通过MethodChannel通道发起通信,实现从Native端获取网络接口请求头(header)信息;
[0016]S5、在Flutter端通过MethodChannel通道发起通信,实现对Flutter端网络接口请求返回数据异常情况的逻辑处理。
[0017]作为一种优选方案,所述MethodChannel用于Flutter与Native端相互调用,调用后返回结果,具体用于Native端主动调用及Flutter主动调用。
[0018]作为一种优选方案,步骤S1

S5中,使用code作为网络接口请求成功或失败的标识,code值为200表示网络接口请求成功,返回业务层数据,否则表示网络接口请求异常,根据code值进行相应的异常处理。
[0019]作为一种优选方案,所述Native端网络请求框架基于retrofit框架实现。
[0020]作为一种优选方案,所述Flutter模块网络请求框架基于dio框架实现。
[0021]由上述本专利技术提供的技术方案可以看出,本专利技术提供的一种基于Flutter&Native混合开发模式下的APP网络请求框架构建方法,有益效果是:通过使得Flutter端无需实现网络接口请求头(header)中各参数的获取和网络接口请求返回数据基础数据的逻辑处理,无论是Flutter端还是Native端,网络请求头信息中各参数的获取均在Native端实现,这样就保证了混合开发过程中网络接口请求头信息的一致性,从而提高应用在使用过程中的稳定性,降低了Flutter端代码维护成本。
附图说明
[0022]图1为本专利技术一种基于Flutter&Native混合开发模式下的APP网络请求框架构建方法结构示意图。
具体实施方式
[0023]为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。
[0024]为了更好地理解上述技术方案,下面将结合说明书附图以及具体实施方式对上述技术方案进行详细的说明。
[0025]如图1所示,本专利技术实施例提供一种基于Flutter&Native混合开发模式下的APP网络请求框架构建方法,使Flutter端的网络请求框架可以间接采用Native端封装的网络接口请求头信息和网络接口请求返回数据异常情况的逻辑处理方法,包括:请求头信息封装、网络接口请求返回数据异常情况逻辑封装、Flutter&Native信息传递。
[0026]本方法的实现分为以下几步:
[0027]1)在Native端实现对网络接口请求头(header)信息获取方法的封装;
[0028]2)在Native端实现对网络接口请求返回数据异常情况的逻辑处理方法的封装;
[0029]3)通过MethodChannel构建Flutter和Native之间通信通道;
[0030]4)在Flutter端通过MethodChannel通道发起通信,实现从Native端获取网络接口请求头(header)信息;
[0031]5)在Flutter端通过MethodChannel通道发起通信,实现对Flutter端网络接口请求返回数据异常情况的逻辑处理;
[0032]通过本专利技术使得Flutter端无需实现网络接口请求头(header)中各参数的获取和网络接口请求返回数据基础数据的逻辑处理,无论是Flutter端还是Native端,网络请求头信息中各参数的获取均在Native端实现,这样就保证了混合开发过程中网络接口请求头信
息的一致性,从而提高应用在使用过程中的稳定性,降低了Flutter端代码维护成本。
[0033]下面将结合附图对本专利技术实施例作进一步地详细描述:
[0034]请参阅图1,其中:
[0035]MethodChannel:Flutter与Native端相互调用,调用后可以返回结果,可以Native端主动调用,也可以Flutter主动调用,属于双向通信;
[0036]code:网络接口请求成功或失败的标识,可以自定义。一般使用code值为200表示网络接口请求成功,返回业务层数据,否则表示网络接口请求异常,根据code值进行相应的异常处理;
[0037]图1右侧部分为Native端的实现方式,包含Native网络请求框架实现、网络接口请求头信息封装、网络请求返回数据的封装;
[0038]Native端网络请求本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Flutter&Native混合开发模式下的APP网络请求框架构建方法,其特征在于:包括请求头信息封装、网络接口请求返回数据异常情况逻辑封装、Flutter&Native信息传递,具体包括如下步骤:S1、在Native端实现对网络接口请求头(header)信息获取方法的封装;S2、在Native端实现对网络接口请求返回数据异常情况的逻辑处理方法的封装;S3、通过MethodChannel构建Flutter和Native之间通信通道:S4、在Flutter端通过MethodChannel通道发起通信,实现从Native端获取网络接口请求头(header)信息;S5、在Flutter端通过MethodChannel通道发起通信,实现对Flutter端网络接口请求返回数据异常情况的逻辑处理。2.根据权利要求1所述的一种基于Flutter&Native混合开发模式下的APP网络请求框架构建方法,其特征在于:所述...

【专利技术属性】
技术研发人员:范贺魁
申请(专利权)人:厦门最有料数字科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1