想实现一个跨平台的桌面客户端(win, Linux ,mac),有哪些可选方案? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
kitten23
V2EX    程序员

想实现一个跨平台的桌面客户端(win, Linux ,mac),有哪些可选方案?

  •  
  •   kitten23 2018-01-08 17:54:32 +08:00 9346 次点击
    这是一个创建于 2885 天前的主题,其中的信息可能已经有所发展或是发生改变。

    客户端以嵌入 web 内容为主。web 上做起来麻烦的东西交给客户端,比如视频处理。如果能跨移动端就更好了。
    Qt+CEF+FFMpeg 可以做吗?有哪些方案可以实现?
    现有的桌面端是 c#的,能通过 .net core 再利用吗?
    steam、PhotoShop 这些是怎么做的?

    24 条回复    2018-01-10 08:39:34 +08:00
    pmispig
        1
    pmispig  
       2018-01-08 18:02:00 +08:00
    用 node,参考 vs code
    yxcxx
        2
    yxcxx  
       2018-01-08 18:04:09 +08:00
    Electron
    we000
        3
    we000  
       2018-01-08 18:09:39 +08:00   1
    Electron
    palxie
        4
    palxie  
       2018-01-08 18:10:18 +08:00
    毫无疑问 Electron
    we000
        5
    we000  
       2018-01-08 18:11:27 +08:00
    PS, "web 上做起来麻烦的东西" 用 C++之类的实现吧, UI 用 Electron
    cnnbboy
        6
    cnnbboy  
       2018-01-08 18:50:37 +08:00 via iPhone
    stream 客户端我没记错的话用的就是 Qt
    kitten23
        7
    kitten23  
    OP
       2018-01-08 20:47:30 +08:00
    大家都推荐 Electron 啊,那我去研究研究。
    EyreFree
        8
    EyreFree  
       2018-01-08 20:50:17 +08:00
    # 推荐 Qt 会被打么...逃...
    omph
        9
    omph  
       2018-01-08 20:52:44 +08:00
    干脆用浏览器做客户端
    ashong
        10
    ashong  
       2018-01-08 20:57:19 +08:00
    我是用 c++ local webserver + chromium (Javascript), 通信用 websocket,数据 get、post
    huangunic0rn
        11
    huangunic0rn  
       2018-01-08 21:00:49 +08:00 via Android
    qt
    kevinzhwl
        12
    kevinzhwl  
       2018-01-08 22:33:06 +08:00 via iPhone
    java
    duan602728596
        13
    duan602728596  
       2018-01-08 22:36:56 +08:00 via iPhone
    emmmmm.......react 全家桶+webpack+nwjs 可以满足需求
    hjc4869
        14
    hjc4869  
       2018-01-08 22:47:32 +08:00
    现有客户端是 C#的话,快去踩 Xamarin.Forms 的 macOS 和 gtk 后端的坑
    tanranran
        15
    tanranran  
       2018-01-08 23:01:40 +08:00
    Electron
    nicevar
        16
    nicevar  
       2018-01-09 08:36:32 +08:00
    偏 web 的用 Electron 可以,注重性能的用 Qt,steam 是 Qt 开发的
    kitten23
        17
    kitten23  
    OP
       2018-01-09 09:48:25 +08:00
    看了下文档,准备 Qt、Electron、Xamarin 都试下。以我现在的状况,Xamarin 似乎是最好的方案,现有的 ui 和后台代码都能利用。
    ablegao
        18
    ablegao  
       2018-01-09 09:51:32 +08:00
    Sciter
    ablegao
        19
    ablegao  
       2018-01-09 10:00:22 +08:00
    https://sciter.com
    Sciter 是个 C++的类库, 商业版, 有提供 Linux , Mac , Windows 上使用的免费动态库。
    有多种语言的 SDK , 可以使用 Python , Golang , D , Rust , C# .net , Delphi 开发。
    https://sciter.com/developers/sciter-sdk-bindings/

    遵循的 HTML5 协议规范自己定义的自己的 HTML 引擎,Javascript 层面上,使用的 TScript , 兼容 W3c 标准 Javascript 语法。 渲染性能很好。
    satanandroid
        20
    satanandroid  
       2018-01-09 10:49:22 +08:00
    Electron
    pkaq
        21
    pkaq  
       2018-01-09 11:38:34 +08:00
    Electron
    shenjing023
        22
    shenjing023  
       2018-01-09 15:03:46 +08:00
    qt+qml
    moxiaonai
        23
    moxiaonai  
       2018-01-09 15:14:39 +08:00
    Electron+10086
    findex
        24
    findex  
       2018-01-10 08:39:34 +08:00
    大项目推荐 qt。中小项目推荐 electron。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5187 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 39ms UTC 08:39 PVG 16:39 LAX 00:39 JFK 03:39
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86