刚知道 Flutter 是没法打包静态库来隐藏部分闭源模块的是吗?

2023-11-22 18:33:51 +08:00
 AoEiuV020JP
flutter 学习中,
找到一个 flutter 跨平台使用 adb 连接安卓手机实现一些功能的项目,
https://github.com/nightmare-space/adb_kit
我想研究研究自己加点功能,

结果发现这项目居然是部分开源的, 闭源的部分要自己手动删除相关依赖和代码,这就有点难受了,
问了下 ChatGPT ,居然是 Flutter 自身压根没有办法实现依赖闭源模块, 这就有点坑了吧,

大家有没有什么替代方案?就是一个开源 flutter 项目,依赖一个闭源模块,怎么处理能让别人没有闭源模块的代码也能编译运行起来,
一种是运行起来包含闭源模块功能的,类似 c++的静态库方案,
一种是运行起来不包含闭源模块功能的, 但至少不要手动修改配置和代码,
1184 次点击
所在节点    Flutter
2 条回复
AoEiuV020JP
2023-11-22 18:45:44 +08:00
不得不想念 android 的 gradle ,工程配置文件直接是个编程语言,想读取判断什么都好办,
AoEiuV020JP
251 天前
第二点可以实现,
yaml override
可以创建一个 git 忽略的 pubspec_overrides.yaml 文件,里面覆盖掉 pubspec.yaml 中的某些依赖, 比如改成本地闭源的版本,开源只提供一个空壳 api ,
简单的可以用 melos ,封装好了,还能方便多库之间依赖和发布,

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/994267

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX