Flutter集成子module联调的解决方案

这里我们以钱包项目举例

我们先建一个干净的文件夹 Wallets 用来存放所有钱包项目需要联调的 Module 。如下图我们将所有需要联调的 Module 都存放到 Wallets 文件夹中。


image

做好上面的上面的准备后,我们用AS打开Wallets 文件夹,此时AS导航栏侧我们看到所有需要联调的子Module都在这里了

image

这时我们看到AS找不我们的入口文件

image

所以我们需要给AS设置一下,告诉AS我们的入口文件在哪里,点击上图红框选中的部分弹出下面的对话框

image

点击上图中箭头指向的+,弹出下面对话框

image

选择展开所有列表,选中Flutter,如下图所示

image

在弹出的对话框中按图中标注的操作,Name 一般是main.dart, Dart entrypoint 是主工程的main.dart文件

image

在弹出的对话框中按图中标注的操作, Dart SDK path 是flutte安装目录下的 flutter/bin/cache/dart-sdk

image

上面操作都完成之后回到下面的对话框可以看到Fix已经没有了,然后再按下图中所示操作


image

都操作好后就回到了AS开发主界面了,可以看到主界面上的入口文件已经显示了,运行按钮也可以点击了

这里注意,如果是业务module,在pubspec.yaml中,我们一般使用path的方式依赖, 如下:

home:
    path: ../home

如果是基础工具的依赖,在pubspec.yaml中,我们一般使用pub 库的依赖方式, 这里我们自己搭建了私有pub服务, 所有的基础工具依赖都是发布到我们的私有pub服务的,使用方式需要指定私有pub服务的地址和版本,如下:

default:
  url: &URL http://pub.hashkey.com

route_manager:
   hosted:
     name: route_manager
     url: *URL
   version: ^0.0.8

如果没有搭建私有pub服务,又不想把自己的基础工具发布到pub上,那么可以选择git的依赖方式,如下:

   r_scan:
     git: 
       url: https://***/***/stable_qrcode_scanner.git
       path: '如果代码不在仓库主目录中,可以手动指定path'
       ref: '分支名或者tag号' 
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容