基于 Tauri 开发的壁纸软件 [跨平台、AI、Web3 畅想]

2023-10-22 11:07:47 +08:00
 lufengd3

当前壁纸软件的一些问题:

为了解决上述问题,壁纸软件技术选型:

  1. 支持 Webview ,软件内打开网站,从无穷无尽的壁纸网站中获取素材
  2. 排除 Electron 的技术方案都可以,但综合考虑研发成本,UI 层希望基于 Web 技术栈开发,当前比较有潜力的是各种语言基于 Webview 的 Hybrid 封装,先选比较或的 Tauri 试试
  3. 多设备同步,简单看是有个中心服务器中转即可,但考虑防火墙等问题,理想情况是构建 P2P 网络传输图片

结合到 AI 与 Web3 进一步解决素材与存储分发问题:

再下一步:


好了,YY 了这么多,回到最初的目的:PC 应用跨平台方案调研... 无论移动端还是 PC 端,研发成本作为高优决策条件时,一定是选择 Web Base 的方案,当前桌面端主流且成熟的方案是 Electron 及 CEF ,但他们的优缺点都很明显; Windows 的 Webview2 、Rust 语言的出现逐步改变这种情况。 Webview2 自不用说,微软 Teams 的重构已经能说明问题。再说到框架封装,Rust 阵营各种 GUI 框架层出不穷,Tauri 作为 Webview 结合方案代表,对比 Electron 以 10MB VS 100MB 的包大小优势吸粉无数,可能是受限于投入资源,进展感觉还比较慢,生态也一般,目前没看到企业级应用落地,可以作为潜力股持续观察,但对于小型应用已足够,主要门槛在于 Rust 。

最后,再说壁纸软件,基于 Tauri 开发,初步实现了上述 1 2 3 的想法,欢迎一起学习交流: https://github.com/lufengd3/wallpaper-player

截图:

2173 次点击
所在节点    分享创造
10 条回复
jy00566722
2023-10-22 12:26:46 +08:00
好东西。
bihui
2023-10-22 14:03:32 +08:00
666
bestie
2023-10-22 15:10:19 +08:00
我最近开发的桌面软件最开始也尝试用 Tauri ,可是 rust 我实在学不懂,后来使用了 golang 后端的 wails ,相对来说好写好多,原理上和 Tauri 是一样的。
lufengd3
2023-10-22 16:07:52 +08:00
@bestie 是的,rust 是个问题,我也不太会,基本是边搜索边写😂
lsk569937453
2023-10-23 09:00:45 +08:00
@bestie 没记错的话,tauri 是支持用 js 操作底层逻辑的。即前端(vue/react)+底层(js)
lufengd3
2023-10-23 10:14:25 +08:00
@lsk569937453 对,tauri 提供了一些基础的底层能力封装,比如文件系统、消息通知、窗口之类的,但要比如要设置个壁纸、开启启动还是要写 rust 实现;除非有人写好了发个 tauri plugin ,注册为 command 给 js 调用
chenxishen
2023-10-24 14:51:26 +08:00
大佬没有发布吗,需要自己运行项目是吗?
chenxishen
2023-10-24 14:54:08 +08:00
请忽略,看错了
lufengd3
2023-10-25 08:48:48 +08:00
@chenxishen 可以试试安装包能用么,不行的话 clone 下来自己构建,有 rust 和 node 环境就行
bestie
2023-10-25 13:54:01 +08:00
@lufengd3
@lsk569937453
是的,除非你的应用知识 web 套个壳,没有什么原生操作,或者是只用 tauri 封装好的几个 api 就足够了。不然的话,还是需要学习 rust 的。相对来说我更愿意学 golang ,更简单一点。wails 和 tauri 用起来其实没太大区别。

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

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

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

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

© 2021 V2EX