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

212 天前
 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

截图:

1922 次点击
所在节点    分享创造
10 条回复
jy00566722
212 天前
好东西。
bihui
212 天前
666
bestie
212 天前
我最近开发的桌面软件最开始也尝试用 Tauri ,可是 rust 我实在学不懂,后来使用了 golang 后端的 wails ,相对来说好写好多,原理上和 Tauri 是一样的。
lufengd3
212 天前
@bestie 是的,rust 是个问题,我也不太会,基本是边搜索边写😂
lsk569937453
211 天前
@bestie 没记错的话,tauri 是支持用 js 操作底层逻辑的。即前端(vue/react)+底层(js)
lufengd3
211 天前
@lsk569937453 对,tauri 提供了一些基础的底层能力封装,比如文件系统、消息通知、窗口之类的,但要比如要设置个壁纸、开启启动还是要写 rust 实现;除非有人写好了发个 tauri plugin ,注册为 command 给 js 调用
chenxishen
210 天前
大佬没有发布吗,需要自己运行项目是吗?
chenxishen
210 天前
请忽略,看错了
lufengd3
209 天前
@chenxishen 可以试试安装包能用么,不行的话 clone 下来自己构建,有 rust 和 node 环境就行
bestie
209 天前
@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