用 go 开发桌面 web 软件怎么样,点击运行直接打开浏览器,本地方法通过 go 导出给 js 调用

2019-04-02 22:44:52 +08:00
 qiuxiaojie

优点:

静态打包,不需要额外依赖

跨平台,能在 mac、linux、windows 等主流平台运行

双击运行与本地桌面软件一致

体积小不到 5m 能提供与 electron 一样的功能

缺点:

运行需要本地启动服务器

运行在安装的默认浏览器上

3811 次点击
所在节点    Go 编程语言
16 条回复
faceair
2019-04-02 22:58:16 +08:00
一年前起过个头,思路差不多,调系统 webbiew 的 https://github.com/faceair/hybrid-go
有空再填一下…
qiuxiaojie
2019-04-02 23:07:43 +08:00
@faceair 思路差不多,不过我想的是,不带 webview 这些,系统托盘、菜单等等这些都不要,就只要调用本地方法的能力
faceair
2019-04-02 23:09:10 +08:00
@qiuxiaojie #2 那直接写个 golang web server 就完了...
qiuxiaojie
2019-04-02 23:14:55 +08:00
@faceair 是的,目前有一个小项目用了,做串口通信的,效果不错,打包起来,到处运行
neoblackcap
2019-04-02 23:24:05 +08:00
别人打包是怕环境没有浏览器,你这个大小不就是减掉浏览器的大小嘛
SuperMild
2019-04-02 23:26:27 +08:00
蛮好的,但注定是小众方式,绝大多数普通用户还是只愿意接受独立的软件。
qiuxiaojie
2019-04-02 23:29:57 +08:00
@neoblackcap 有界面的操作系统上面都肯定有浏览器存在着,别人打包是想以本地应用方式运行
twor
2019-04-02 23:32:17 +08:00
@qiuxiaojie 还有兼容性的考虑
blless
2019-04-02 23:32:22 +08:00
fyne ?好像还有个 walk
dai875939260
2019-04-02 23:41:27 +08:00
已经有了啊,lorca,调用本地谷歌浏览器,但是打包还是有 10 几 m 的样子,但是总感觉 webview 的应用卡卡的
Trim21
2019-04-03 00:11:47 +08:00
再加一个系统托盘,双击打开浏览器的同时收到系统托盘,就完美了
faceair
2019-04-03 00:13:59 +08:00
@dai875939260 10 来兆应该是 go runtime 的大小了...
dai875939260
2019-04-03 07:27:34 +08:00
@faceair 静态文件也会打进去,可能排除这个差不多了
zarte
2019-04-03 10:16:40 +08:00
个人觉得既然是弄带界面的程序就直接弄各平台的酷炫界面,要不然就整 web 版。
qiuxiaojie
2019-04-03 10:42:16 +08:00
@zarte 需要用本地的一些方法,但是又不想开发桌面这种这么重的,不知道还有没有什么好方法
no1xsyzy
2019-04-03 13:56:28 +08:00
@qiuxiaojie 其实就是个本地信使,Firefox 有一个 open with 插件(用其他软件打开某个 URL ),也是靠本地信使的。
没毛病。

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

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

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

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

© 2021 V2EX