flutter+go 写了个下载器,全平台可以用,支持 http 和 bt 协议

2022-11-04 12:31:52 +08:00
 monkeyWie

这个技术栈真的挺不错的,go 负责网络,flutter 负责 UI ,桌面端+手机端+Web 端全部一套代码搞定,桌面端 flutter 通过 ffi 调用 go 生成的动态库,移动端 flutter 通过 channel 调用 gomobile 生成的库,感觉浑然一体。

有点要吐槽的是 flutter 写起来还是太麻烦了,没有 js 写 ui 那么方便,但是谁叫它能支持所有平台呢,只能用着了。

附 github: https://github.com/monkeyWie/gopeed

3908 次点击
所在节点    分享发现
31 条回复
buxudashi
2022-11-04 12:34:42 +08:00
抵制 flutter 。

各种环境,版本都有可能 升级或者不兼容。玩段时间你就会发现,想一通百通的东西,还要面对太多复杂的东西。
HoshinoRei
2022-11-04 12:47:52 +08:00
iOS 的呢?
monkeyWie
2022-11-04 13:38:37 +08:00
@HoshinoRei #2 ios bt 协议好像上不了架,先不做了
w88975
2022-11-04 14:23:10 +08:00
@buxudashi 接触过那么多跨平台开发的玩意, 直到我用了 flutter 才知道 UI 交互可以这么统一, 你说的这些缺点跨平台框架都有, 你该抵制的是跨平台开发, 而不是 flutter
likeme
2022-11-04 15:21:15 +08:00
老哥搞了 flutter 多久了
monkeyWie
2022-11-04 15:23:16 +08:00
@likeme 第一个项目,基本可以说是从零开始
Rrrrrr
2022-11-04 15:32:42 +08:00
牛比啊
likeme
2022-11-04 15:54:20 +08:00
@monkeyWie 老哥看什么教程学的 flutter
monkeyWie
2022-11-04 16:04:17 +08:00
@likeme 基本就是看官网啊,然后掘金的一些文章
monkeyWie
2022-11-04 16:05:22 +08:00
@likeme 最主要的是不要试图理解和使用官方推荐的状态库,直接用 GetX ,非常的无脑
pansongya
2022-11-04 16:32:54 +08:00
大佬 go 那块编译不了 没有 mod
monkeyWie
2022-11-04 16:39:04 +08:00
@pansongya 有的呀,要不进 discord 群细聊?
likeme
2022-11-04 16:45:11 +08:00
本来学的好好的,看 bloc 和另外那个状态库给我看傻了。
huohei
2022-11-04 17:06:36 +08:00
@monkeyWie GetX 太全面了, 如果只是要状态管理 Provider 就足够了 https://www.reddit.com/r/FlutterDev/comments/po1bei/why_is_getx_such_a_bad_state_management/
huohei
2022-11-04 17:10:32 +08:00
@likeme bloc 比较复杂,Provider 简单易用并且官方推荐
Trim21
2022-11-04 17:19:02 +08:00
cli 的默认文件保存路径怎么是 ~/go/bin 😂
monkeyWie
2022-11-04 17:27:47 +08:00
@Trim21 默认安装在 GOROOT 目录下的
Trim21
2022-11-04 17:35:47 +08:00
@monkeyWie #17 我知道 go install 默认会把可执行文件安到 GOBIN 下面,这个很正常。但是用 cli 下载的其他文件的默认保存路径也是 GOBIN ,这个很奇怪啊
Trim21
2022-11-04 17:39:39 +08:00
❯❯ ~ gopeed.exe -h
Usage of ~\go\bin\gopeed.exe:
-C int
Concurrent connections. (default 16)
-D string
Store directory. (default "~\\go\\bin")
monkeyWie
2022-11-04 17:51:08 +08:00
@Trim21 那确实是个问题啊,我改改😂

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

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

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

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

© 2021 V2EX