CrazyBoyFeng
V2EX  ›  Electron

electron 替代品求推荐

  •  
  •   CrazyBoyFeng · Jun 17, 2021 via Android · 8654 views
    This topic created in 1818 days ago, the information mentioned may be changed or developed.
    鉴于 electron 恶名在外,我本打算找一下替代方案,但发现还真不好找。
    想要减小运行内存,要么是精简 chromium,要么是用系统浏览器。
    精简 chromium 的我就只找到一个 miniblink,不跨平台。
    用系统浏览器的也基本上都有这样那样的适配问题。
    像 sciter 这样比较成功的 web 桌面框架,不是自由开源的。使用此类框架,既要担心依赖绑定,还要担心弃坑(依赖绑定的其中一种情形)。
    总结一下需求:
    1. 跨平台兼容性高。
    2. 从 web 移植的工作量小。
    3. 比 electron 省内存。
    4. 最好是自由开源的,GPL 也没关系,反正 web 网页本来就是开源的。
    其实要是 electron 有 runtime 模式也不错,多个应用共用框架,能省一些资源。可惜没有 runtime 模式。
    18 replies    2022-06-27 19:10:34 +08:00
    tianxia
        1
    tianxia  
       Jun 17, 2021 via Android
    我也看看有没有
    yyfearth
        2
    yyfearth  
       Jun 17, 2021
    要跨平台而且保持行为一致兼容性好 那只能用 chromium 或者 webkit 并且要自带核心 那自然就小不了 资源占用就一定会大
    本来 Google 出了一个 https://github.com/GoogleChromeLabs/carlo 不错 只要安装 Chrome 就可以了 但是一样也还是弃坑了

    所以要么用系统自带的浏览器内核 要么 electron/nw.js
    有实力的话 自己去精简 chromium 内核
    kawaiidora
        3
    kawaiidora  
       Jun 17, 2021
    electron 就是为了解决平台差异才搞出来的东西,只要开发者在自己机器上弄好了,放到别的系统和机器上不会出大问题。

    electron 相当于桌面应用的 flash (指刚诞生没几年的 flash ),暂时还没有替代品。除非几家巨头达成交易,共同推进一个通用方案。

    替代品可能要过几年才会诞生
    Jirajine
        4
    Jirajine  
       Jun 17, 2021 via Android
    tauri
    banliyaya
        5
    banliyaya  
       Jun 17, 2021
    可以看看网易云音乐,在 mac 上 10M 不到,好像是套壳的 web
    Rwing
        6
    Rwing  
       Jun 17, 2021
    askfermi
        7
    askfermi  
       Jun 17, 2021
    tauri +1
    adeweb
        8
    adeweb  
       Jun 17, 2021
    Qt,除了 web 移植可能性不大,其他都表现不错。
    IvanLi127
        9
    IvanLi127  
       Jun 17, 2021 via Android
    不带完整的浏览器内核,还是别搞了,web 都支持的东西到 app 反倒不支持了。
    supermoonie
        10
    supermoonie  
       Jun 17, 2021 via iPhone
    我用的 jcef 😿
    love
        11
    love  
       Jun 17, 2021
    现在直接用浏览器内核问题不大了吧,就象正常做网站一样
    hazardous
        12
    hazardous  
       Jun 17, 2021
    只做 webserver,然后用本地浏览器做 UI
    TrembleBeforeMe
        13
    TrembleBeforeMe  
       Jun 17, 2021
    PWA ?
    BingoXuan
        14
    BingoXuan  
       Jun 17, 2021 via Android
    pywebview
    EPr2hh6LADQWqRVH
        15
    EPr2hh6LADQWqRVH  
       Jun 17, 2021
    问题不在 Electron 身上,人家 VSCode 那个规模都不卡,你自己随便一个啥卡,问题出在哪自己还没点数么。。。
    CrazyBoyFeng
        16
    CrazyBoyFeng  
    OP
       Jun 17, 2021
    看来大家较多选择的次优方案其实还是调用系统浏览器,包括 pywebview 、tauri 这类都是,localserver 和 pwa ( PC 版小程序快应用)也算。目前 pwa 还不能操作本地文件,需要借助 service-worker,除了跟浏览器结合更紧密,其实跟 localserver 区别不大。

    我也了解了一下 electron runtime,有些 linux 发行版确实是以这种方式进行包管理。但是碎片化十分严重,每个 electron 应用依赖的版本都不同,效果提升并不明显。github 上有关 runtime 的讨论里,electron 官方也认为组件更新迭代太快,发行 runtime 的优势不显。也是因为迭代太快,对 chromium 进行精简也跟不上更新的速度。chromium 本身耦合也非常紧密,拆分成模块是比较困难的工作。( chromium 里其实有很多有很多对于发布应用来说是没用的可以删除的功能,例如打印当前页、pdf 查看和保存为 pdf 、截图、crx 扩展、调试等等,所以能做出来 miniblink 的作者还是很有水平的,至少把 chromium-windows 吃透了)
    a132811
        17
    a132811  
       May 5, 2022
    pwa 可以操作本地文件了
    https://whatpwacando.today/file-system
    datadump
        18
    datadump  
       Jun 27, 2022
    sciter 有开源版啊,几百美金
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1032 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 81ms · UTC 18:48 · PVG 02:48 · LAX 11:48 · JFK 14:48
    ♥ Do have faith in what you're doing.