感叹! rustdesk 真的好用,也开源了服务端这些东西,感谢社区的贡献!
我自己在用的时候需要多端设备同步,但是 rustdesk 并没有开源出 api 服务相关代码。
诚然,社区有大佬已经根据客户端写出了可用的 api 服务端代码。
不过我自己本着挑战的目的自己撸了一个 api 服务端出来。
地址:https://github.com/lantongxue/rustdesk-api-server
基于 Yii2 框架开发,目前编写了大部分主要的接口,已经完全实现了设备的管理和标签管理。
各个端都能正常使用,iOS 、Android 、Windows 、Linux 、macOS 。
说明:仅在 rustdesk 1.2.3 上测试通过,更低版本未作适配,请大家配合最新版本的 rustdesk 食用。
使用方法请参考 readme 。
一些收获:在做这个项目的时候,本来是想参考大佬已经开源的 api 代码做一个轮子,后来还是决定通过分析 rustdesk 源代码来实现 api ,在这个过程中,rust 部分我完全看不懂[抱拳],只能靠猜;到了 flutter 部分相对好一些了,之前撸过 flutter ,所以很快就能根据接口调用分析出数据结构。在这个过程中对 flutter 和 rust 的结合有了新的认知,比我想象中的强大! ffi 真的屌,flutter 部分上的核心基本上都是通过调用 ffi 实现的,而 ffi 这部分是 rust 编写的。
后面的一些想法:
最后:欢迎各位 star 、PR
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.