flutter 路由 生成给 native 使用

发现问题:

发现

-> 目前使用flutter 开发 大部分应该是混合工程,一般会把 flutter 打包成为 aar,native 依赖使用,通过路由进行原生启动flutter 页面.

问题

-> flutter 端这边注册 register(‘main/login’,xxxMoudule()), 打成 aar,
原生这边依赖 启动 flutter 页面 navigator.push(‘main/login’). 这样的情况写起来也麻烦,也要不断确认 增加了bug的风险.

解决
-> 通过 flutter 这边 routerCofig 类似配置文件生成 ios/android 这样的代码。

实现方案:

  1. 新建一flutter_plugin(xxxxPlugin) 并且依赖于 将要打为aar项目。
  2. 定义 能够执行 flutter pub run xxx 项目
    1. 阅读 https://dart.dev/tools/dart-run 弄清楚 如何通过命令启动 main()
    2. 通过 ast 解析 routerConfig 文件字段
    3. 通过主项目.dart/package_config.json 得到 xxxxPlugin 插件的存放位置
    4. 把解析到字段 放入到模板代码 合成文件 放入到 xxxxPlugin ios/android目录下
  3. 打包 aar (项目已经支持 远程依赖和本地依赖)

效果:

dart:

在这里插入图片描述

android

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值