V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
69partner
V2EX  ›  程序员

框架选型问题 React Native、Flutter、uniappx?

  •  
  •   69partner · 2025 年 8 月 19 日 · 7153 次点击
    这是一个创建于 149 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我们想做一款 App ,功能就是基础页面功能的添加会有部分动画效果 看 b 站视频,flutter 从各种层面上数据都是优于 rn 的,但是招聘的角度上看,国内环境 flutter 是否好招人 uniapp 好像 ios 依然会打包成 web 的方式,操作起来应该就不太丝滑 请路过的 v 友们留下你们对这两个框架的看法

    87 条回复    2026-01-04 18:24:26 +08:00
    chaxus
        1
    chaxus  
       2025 年 8 月 20 日   ❤️ 1
    求稳来说 RN ,目前截止 2025 ,生态比另外两个好太多。遇到问题问 AI 或者搜索都更容易解决。flutter 感觉大金主 google 不咋上心支持,只能说未来可期吧。
    niubee1
        2
    niubee1  
       2025 年 8 月 20 日   ❤️ 1
    老实说,现在都 AI 开发了,干脆原生算了
    BeiChuanAlex
        3
    BeiChuanAlex  
       2025 年 8 月 20 日
    嗯....如果我推荐原生,不是有点大逆不道了。
    Ketteiron
        4
    Ketteiron  
       2025 年 8 月 20 日
    大部分情况下 flutter 性能更佳,写前端更费劲点,Dart 表达画面的能力被 CSS 吊打; RN 性能稍差,前端部分更好实现,但是样式在不同平台不一致。硬要比就是半斤八两,确实很难抉择。uniapp 也不是不行,除此之外还有 KMM/KMP 也可以看看。
    尝试过 Tauri mobile ,完全生产不可用,只能作为内部工具使用。
    如果你们有 react 的历史包袱,或者更注重开发效率,那就选 RN ,如果 java 仔多,或者愿意仔细打磨产品就 flutter 。
    不过当下原生或许是个更佳选择。
    wakarimasen
        5
    wakarimasen  
       2025 年 8 月 20 日
    那你为什么不先开两个岗位收一波简历再砍掉其中一个(
    dearmymy
        6
    dearmymy  
       2025 年 8 月 20 日
    对性能没有特别高要求,就 rn 。招人肯定也好招。
    9ki
        7
    9ki  
       2025 年 8 月 20 日
    对动画有要求就别考虑 uniapp

    RN:多端不统一,需要找一个经验丰富的开发领导,相比 flutter 开发效率高点

    Flutter:多端统一,开发效率不如 RN ,性能方面下限高

    在 AI 时代 RN 的历史积累开发上会更具备优势
    donotquestion
        8
    donotquestion  
       2025 年 8 月 20 日
    我会 ios 中的 oc 、swift ,安卓中的 kotlin + jetpack ,和 RN 、flutter ,每个技术栈都有至少两个成熟的商业项目验证。
    RN 代码清晰但是单线程技术性能有瓶颈
    flutter ,代码逻辑混乱,但是性能好
    qianji201712
        9
    qianji201712  
       2025 年 8 月 20 日
    Flutter 其他不考虑
    iOCZS
        10
    iOCZS  
       2025 年 8 月 20 日
    其实都行,如果不行,早就死了
    yb2313
        11
    yb2313  
       2025 年 8 月 20 日
    嗯,, 听说 tauri-v2 也可以做 app 了?
    bg7lgb
        12
    bg7lgb  
       2025 年 8 月 20 日
    Flutter 把代码组织好,也挺方便的。

    不过有一点不爽的经常是先写好了,效果出来后,再重构组件。
    kakki
        13
    kakki  
       2025 年 8 月 20 日
    为什么会认为自己有的选...明明只有 Flutter.
    但是我更推荐原生, 都 AI 写代码了.
    Manweill
        14
    Manweill  
       2025 年 8 月 20 日
    说 RN 多端不统一的,必定是没实际在项目中应用过 RN 。但是有 RN 的实际项目都不至于这样说。目前这三只推荐 RN ,除非你要搞游戏
    kongkx
        15
    kongkx  
       2025 年 8 月 20 日 via iPhone
    RN 起步, 优化到最后还是原生
    caiyuan
        16
    caiyuan  
       2025 年 8 月 20 日
    @Manweill 我也在想,为啥老说 RN 多端不统一?不统一在哪? alert 弹窗?这玩意儿会用到? UI 不都是自己设计的吗?写的时候都按照 UI 去写样式了,不统一啥?
    fms86
        17
    fms86  
       2025 年 8 月 20 日
    如果不是国内客户明确要求 uniapp ,那就优先选 RN ,而且国外有 expo 这种 RN 框架开发成本更低,成熟度也更高
    seven123
        18
    seven123  
       2025 年 8 月 20 日
    RN 方便,效率高,flutter 比 RN 性能稍好一点,长期跨端看好 KMP ,上面很多都推荐原生,我也知道原生好,但是每个端都要实现,没有那么多人力。
    murmur
        19
    murmur  
       2025 年 8 月 20 日
    @caiyuan rn 只是看着像前端,很多属性,比如阴影渐变什么的,需要按照 ios 和 android 写分平台属性
    LimLim
        20
    LimLim  
       2025 年 8 月 20 日   ❤️ 1
    推荐 Flutter ,按你的描述来看没啥问题。
    另外,如果不纠结跨平台,其实原生的工作量也没差多少的,画页面啥的 AI 都能干。
    murmur
        21
    murmur  
       2025 年 8 月 20 日   ❤️ 1
    @Manweill 我之前调研过 rn ,分卷打包就给我劝退了,用 h5 做分卷跟玩一样,各种方案闭着眼睛用

    expo 支持分卷,但是他的路由和插件封装,还有那套编译又给我劝退了

    而且 rn 还一个问题,就是他插件太依赖 c++代码了,我都怕哪天版本升级突然就编译不过

    vision camera 不就是么,新架构好久才支持的
    Nyeshuai
        22
    Nyeshuai  
       2025 年 8 月 20 日
    最近的项目用的就是 expo 53 ,ios 搭完环境后续体验算得上良好,没有太多依赖问题,真机和模拟器所见所得程度挺高的。安卓就还是一坨狗屎,会在你觉得正常实现的地方点不动,表现瑕疵,更别提 gradle 这贵物了。
    flutter 本体上手还好,加上生态选择的话完全从零成本真挺高的。现在安卓 google play 没有了上架简单的优势,个人项目真 ios 原生 + 其他全 webview 套壳算了。
    Orangeee
        23
    Orangeee  
       2025 年 8 月 20 日
    不说自己技术背景不好给推荐,如果熟练 JS/TS ,RN + expo 是最佳选择,expo 让 RN 开发体验好很多;
    如果熟悉 dart ,flutter 是最佳选择;
    目前不推荐 uniapp ,光文档质量和上面都不是一个级别。
    lukailun
        24
    lukailun  
       2025 年 8 月 20 日
    RN 和 Flutter 都可以,上面说 RN 性能不行的,那是之前,现在 RN 性能能优化到接近原生了。
    boyzhang
        25
    boyzhang  
       2025 年 8 月 20 日
    uniapp
    qweruiop
        26
    qweruiop  
       2025 年 8 月 20 日
    个人项目,反正都是 ai 写,最近 flutter 和 rn 都各写了一个。
    whj929159021
        27
    whj929159021  
       2025 年 8 月 20 日
    不考虑小程序,flutter 跨端最优选
    XTTX
        28
    XTTX  
       2025 年 8 月 20 日   ❤️ 1
    我写惯了 React+Tailwind , 没有 React Native 基础。 上手 Expo+React native+nativewind, 两个半月。
    https://streamable.com/ejdsri
    我没有用过 Flutter.
    React Native 代码仓多, 生态健全, 动态效果 lib 有 reanimated+skia. Expo 各种 plugin 需要一个个坑踩过去, 做一些简单的 ios widget 连 xcode 都不用打开就能做了。
    poiz
        29
    poiz  
       2025 年 8 月 20 日
    我司的 rn 已经是一座 x 山了。
    jeffords
        30
    jeffords  
       2025 年 8 月 20 日
    rn ,小程序可以用京东的 taro ,uniapp 纯 gs
    Manweill
        31
    Manweill  
       2025 年 8 月 20 日
    @murmur 确实,遇到 c++相关编译不过是挺难处理的,当时我们也是卡着没有继续迭代,只能做其他工作。但是他整个 TurboModule 演进计划都还算平稳,毕竟用爱发电谁都不容易, 。

    expo 的路由本质还是 react-navigation ,基于文件路径注册,总比团队里面的人乱起名字然后还找不到出处的好。分卷这个,我以前应用的版本比较旧,一直没有切换 expo 去深入使用,所以这个我也不太了解,主要还是自己搭建架构的为主
    Manweill
        32
    Manweill  
       2025 年 8 月 20 日
    我们现在没有用 expo 的路由,是自己改了个 babel 插件来实现基于 react-navigation 的按文件名自动注册路由
    Saigut
        33
    Saigut  
       2025 年 8 月 20 日   ❤️ 1
    ios flutter 的列表滚动、点击,总感觉有延迟、不跟手,没有 rn 丝滑。你们没有这个感觉吗,还是只是我的错觉?
    SchwarzeR
        34
    SchwarzeR  
       2025 年 8 月 20 日
    RN 要看对当前技术栈好不好平移
    flutter 战未来
    uniapp 糊弄事找外包专属,上限低一个档次,有追求的绕着走比较好
    Saigut
        35
    Saigut  
       2025 年 8 月 20 日   ❤️ 1
    ios flutter ,从一个列表点进去,然后返回,接着马上划动列表,此时列表必然划不动。
    试了几个 app 都这样,感觉至少要等个几百毫秒才能滑动。rn 就没这个问题
    ifbluethen
        36
    ifbluethen  
       2025 年 8 月 20 日
    RN 生态全,不知道全在哪里,UI 库都没一个能真正开箱即用的,有些 package 基于 native 组件,放上来不好调整样式...如果公司有比较标准的团队,然后自己写组件库到是还不错。不然有些公司为了节省成本,只有一个人写,真的难搞,说的就是我...
    wwwcg
        37
    wwwcg  
       2025 年 8 月 20 日
    起码 Flutter 和 uniappx 别用了,iOS26 液态玻璃一上这俩都要凉
    XTTX
        38
    XTTX  
       2025 年 8 月 20 日
    @ifbluethen https://reactnativereusables.com/getting-started/introduction/ https://nativewindui.com/ 选型的时候我就买了,主要还是看它样式怎么做到统一的。 成熟的组件都会接受 style/color. 你把自己的颜色丢进去就行了
    zhengfan2016
        39
    zhengfan2016  
       2025 年 8 月 20 日
    @ifbluethen

    react native paper: ?
    tamagui: ¿

    开箱即用肯定有,要像 shadcn 同等高度自由定制确实没有
    Manweill
        40
    Manweill  
       2025 年 8 月 20 日
    @XTTX 我现在也在基于 nativewind & tailwindcss 写一套 UI ,不过进度略慢。也在弄一个项目模板(类似于 admin ,或者 boot 之类的),脚手架等,有生之年系列

    @caiyuan @murmur 是的 但是总还是能够统一 UI 风格的,而且只是国内偏好统一风格,外面还是喜欢各自平台各自特色的
    XTTX
        41
    XTTX  
       2025 年 8 月 20 日
    @Manweill nativewind 这个钱 75 美金不能省, 对我入坑 react native 提速很大。基本样式有了以后可以让 Claude Code 左脚踩右脚。

    expo 的脚手架太难搞了,这两个多月加入太多东西,powersync, i18n, 谷歌登录,revenuecat, auth, 还要对 ios\android 之间还有不同的 plugin 。
    ifbluethen
        42
    ifbluethen  
       2025 年 8 月 20 日
    @zhengfan2016 这两个都不行,paper 推荐确实挺多的,但样式是 material design 就很麻烦。tamagui 试用过,不记得为啥没用了。
    ifbluethen
        43
    ifbluethen  
       2025 年 8 月 20 日
    @XTTX 感谢推荐,第二个当时没有见到过。
    lightattractbugs
        44
    lightattractbugs  
       2025 年 8 月 20 日
    我最近写了两套,都是局域网扫描设备,0 经验,Flutter 使用起来很丝滑(也有 android 底子的原因),导完生成模板直接就是干,RN 那个配置给我整的脑瓜子大了,光是创建项目和跑起来就用 cursor 耗费了一个下午
    realpg
        45
    realpg  
    PRO
       2025 年 8 月 20 日
    AI 开发 建议 flutter
    这玩意特性过于稳定 AI 写 flutter 准确率高 第三方库支持好
    realpg
        46
    realpg  
    PRO
       2025 年 8 月 20 日
    @wwwcg #37
    什么时候 app 是靠 ui 风格抢用户的了?
    ninjaJ
        47
    ninjaJ  
       2025 年 8 月 20 日
    @dssxzuxc Tauri Mobile 能详细分享下经验不,有哪些坑?我用 Tauri 写桌面端爽到了,正考虑移动端呢。
    XTTX
        48
    XTTX  
       2025 年 8 月 20 日
    @ifbluethen 就是 rnr, nativewind 团队 搞的一个收费 ui 组件。 上手足够快, 不够再去 rnr 捞几个。基本上,我能用到的通用组件就够了。 material design 对比 ios 就是丑一点,两个端, 还要针对 android 进行微调。
    boileryao
        49
    boileryao  
       2025 年 8 月 20 日
    专门做 App ,对动态能力要求不高,直接选 Flutter 。招人还好,会 vibe coding 慢慢上手也行,嘎嘎猛。
    1. Flutter 性能很好,接近原生;
    2. KMP/RN/uniapp 做不到 UI 一致;
    3. 弄个勉强能用的桌面版/Web 版,Flutter 也可以。
    dabinDev
        50
    dabinDev  
       2025 年 8 月 20 日
    推荐 flutter 双端效果一致
    xkeyC
        51
    xkeyC  
       2025 年 8 月 20 日
    @wwwcg https://pub.dev/packages/liquid_glass_renderer

    flutter 可以直接调用 gpu 绘图,跑个 shader 什么的轻轻松松
    rockddd
        52
    rockddd  
       2025 年 8 月 20 日
    flutter 啊,我们现在全员都能在 ai 的帮助下写,效果还挺好
    ndxxx
        53
    ndxxx  
       2025 年 8 月 20 日
    楼主这种简单需求,AI + flutter 。
    推荐 AI + 原生是怎么想的我没搞懂。
    SiuRayyy
        54
    SiuRayyy  
       2025 年 8 月 20 日
    看来大家意见还不统一呢
    Ketteiron
        55
    Ketteiron  
       2025 年 8 月 20 日
    @ninjaJ tauri2.0 稳定版对移动端的支持依旧非常差,很多人连构建一个安卓/IOS 的 helloworld 都会失败。rust/js 对移动端没有多少可用的 api ,很多功能只能写原生代码,web 端和移动端复用逻辑非常困难。一堆构建失败的 issue 都没有解决,碰上了毫无办法。
    0x0x
        56
    0x0x  
       2025 年 8 月 20 日 via Android
    最近准备搞个 app ,已经计划 AI+flutter 了。
    rrubick
        57
    rrubick  
       2025 年 8 月 20 日 via iPhone
    写过 rn flutter
    结论:不推荐跨平台的。不然等你升级连带着第三方,各种 api 变动那种酸爽。。。
    ninjaJ
        58
    ninjaJ  
       2025 年 8 月 20 日
    @dssxzuxc #55 感谢佬
    dreamk
        59
    dreamk  
       2025 年 8 月 20 日
    XTTX
        60
    XTTX  
       2025 年 8 月 20 日
    @dreamk "哪李贵了, 一直...." 你买 3 个月的, 把代码存一份. 后面项目赚钱了再说吧.
    streamrx
        61
    streamrx  
       2025 年 8 月 20 日 via iPhone
    选 rn
    lovekernel
        62
    lovekernel  
       2025 年 8 月 20 日
    我 all in flutter 了
    Ainnlly
        63
    Ainnlly  
       2025 年 8 月 20 日 via Android
    @niubee1 我现在就是用老技术写的原生,别害人,等到看到上千行的拼接 js 拼接 html 就知道想死了
    Ainnlly
        64
    Ainnlly  
       2025 年 8 月 20 日 via Android
    @Ainnlly 额,app 啊,对不起,没看清
    AvilCore
        65
    AvilCore  
       2025 年 8 月 20 日 via Android
    兄弟你调研过吗,你想做第三方 b 站客户端就没想过看看社区的第三方是怎么做的,为什么 pilipala 会用 flutter ,为什么没有 rn 做的第三方视频 app

    rn-video 和 expo-video 这两个视频组件应该都不支持分别的音轨和视频轨,就这一个薄纱视频站第三方应用,因为不碰原生代码根本做不出来

    如果你能做出来这个问题,那么 flutter 和 rn 的主要差距就是需不需要原生渲染-ios26 液态玻璃,其他问题都可以用钱实现

    如果你还有钱方面的考量,去 boss 搜搜 flutter 和 rn 薪资不比葛这问准多了
    uuundefined
        66
    uuundefined  
       2025 年 8 月 21 日
    只做 IOS 还不如原生。 安卓和 IOS 都做的话 uni 有点老旧,react 其实开发成本挺高的,比较新,老旧设备兼容性差别大。flutter 反倒是最简单的。 开发起来稍微费力点,但是 flutter 相当于自带加密, 节省很多后期成本,APP 加固很贵的
    Hansee
        67
    Hansee  
       2025 年 8 月 21 日
    我们 all in Flutter
    AvilCore
        68
    AvilCore  
       2025 年 8 月 21 日 via Android
    大晚上眼睛不好瞎了,这个看 b 站视频原来是看别人的介绍视频。。。

    还是建议按产品需求做调研 没有官方第三方 sdk 要自己写就懵逼了

    比如要做音乐播放器 audio_service 比 expo-audio 领先好几个身位
    RightHand
        69
    RightHand  
       2025 年 8 月 21 日 via Android
    很简单,需要小程序那就 uni ,有 rn 经验选 rn ,其他无脑选 flutter
    Akay47
        70
    Akay47  
       2025 年 8 月 21 日
    rn 和 uniapp 都使用过, rn 开发体验很差, 非常不建议使用, uniapp 只适合写小程序, uniappx 也是一样, 这三者之间根本没得选, 只有 flutter 适合正常开发 app, 而且上手非常简单, 就是得稍微注意下代码嵌套, 同样可以写的很优雅
    debuggeeker
        71
    debuggeeker  
       2025 年 8 月 21 日
    你来这里问,大部分人推荐你跨平台,如果你要打造很好的用户体验,原生是最好的,但是在这里就是不认同的
    Stephen7zz
        72
    Stephen7zz  
       2025 年 8 月 21 日
    如果你考虑上架应用商店 , 并且打算长期运营你的 app , 就不要考虑 uniapp .

    https://ask.dcloud.net.cn/question/183590
    Stephen7zz
        73
    Stephen7zz  
       2025 年 8 月 21 日   ❤️ 1
    如果你考虑上架应用商店 , 并且打算长期运营你的 app , 就不要考虑 uniapp .

    https://ask.dcloud.net.cn/question/183590

    2023 年就已经出现的问题 , 到现在还依然存在 , 官方压根不管 , uniapp 官方给出的解决方案就是 , 使用官方推荐的加固 , 加固一次 600 块 , 而且 app 提审并不是百分百通过 , 如果这次加固提审没有通过 , 那 600 块就是打水漂 , 你还得再加固再提审.

    而且用 360 加固也解决不了问题 .

    我现在无比后悔当初为了偷懒选了 uniapp , 现在都打算用原生重新写个了
    Manweill
        74
    Manweill  
       2025 年 8 月 21 日
    @dreamk 支付一定成本快速启动项目是一个不错的选择,有一定技术能力也可以自己去写一些组件,或者一起在社区内做一些开源项目。

    目前我基于 rn+native+tailwind+tv 写了一套基础组件,然后在整合部分原生组件中,等差不多了就可以丢出来
    gam2046
        75
    gam2046  
       2025 年 8 月 21 日
    根据有限的经验,除非你有充足的理由,否则不要考虑 uniapp ,当你需要一些与特定平台功能的时候,会比较痛苦。
    niubee1
        76
    niubee1  
       2025 年 8 月 21 日
    @Ainnlly 我用 cursor 写 APP 就几乎一行代码没写啊,都上架了,就是左一鞭子右一鞭子的抽,比较累。说什么上千行拼接 js ,你描述有问题而已,现在用 AI 开发就跟开车用智能辅助一样的,你要大撒把,撞车了能怪谁
    zenghaojim33
        77
    zenghaojim33  
       2025 年 8 月 21 日
    在外企,服務過兩個大甲方,都是 React Native 。目前現在的項目有 50+頁面,還是感覺大部分情況下和原生的一樣的流暢
    ala2008
        78
    ala2008  
       2025 年 8 月 21 日
    flutter 大厂背书,感觉可以的
    bojue
        79
    bojue  
       2025 年 8 月 21 日
    @BeiChuanAlex 类似拼多多大金主选择没问题,一切都是利弊触发
    maxmax4max
        80
    maxmax4max  
       2025 年 8 月 21 日
    对于简单的 app 性能上差不多;
    开发效率 flutter ,rn 差不多;
    团队原生多用 flutter ,web 开发多用 rn ;
    只考虑双端用 flutter ,考虑三端及以上用 rn ;
    不考虑热更用 flutter ,考虑热更用 rn 。
    Ainnlly
        81
    Ainnlly  
       2025 年 8 月 21 日 via Android
    @niubee1 不好意思,看错看错,app 端,主要是工作方面各种 js 拼接 html ,让我属实有点。。不好意思,不好意思
    NewTab12138
        82
    NewTab12138  
       2025 年 8 月 22 日
    说开发 flutter 卡顿的大部分都是自己水平太菜导致的, 大部分人的 flutter 都是半路出家,只会写写样式,完全不懂如何优化,一个最简单的 setState 他能放在整个跟布局调用。

    现在除非非常复杂的业务场景 flutter 会卡,正常场景 flutter 完全不卡的好么。
    69partner
        83
    69partner  
    OP
       2025 年 8 月 22 日
    非常感谢各位留下的认真评论
    wwwcg
        84
    wwwcg  
       2025 年 8 月 25 日
    @xkeyC 实际体验在 UI 和交互细节方面和原生液态玻璃还是差不少,尤其是 Tabbar 这种复杂的组件上。小 App 对 UI 要求不严格的情况下能这么模拟,中大型 APP 感觉过的了 UI 这关
    wwwcg
        85
    wwwcg  
       2025 年 8 月 25 日
    @xkeyC 实际体验在 UI 和交互细节方面和原生液态玻璃还是差不少,尤其是 Tabbar 这种复杂的组件上。小 App 对 UI 要求不严格的情况下能这么模拟,中大型 APP 感觉过不了 UI 这关
    Saigut
        86
    Saigut  
       2025 年 8 月 25 日
    移动端还是 react native 这种路线比较好。flutter 这种自己实现的,相比系统自带的 ui 引擎,性能、效果很难做的很好,还增加资源消耗。
    PC 端 flutter 路线就还不错,PC 应用风格本来就是千奇百怪的,而且系统限制相对较少,系统资源也比较充裕,利于 flutter 发挥。不过毕竟还是魔改的/新造的 ui 轮子,坑应该比传统的 ui 引擎要多不少。
    laoona
        87
    laoona  
       12 天前
    哥们,最后选择哪个了?我也遇到选型问题了,RN 和 Flutter 极限二选一
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2940 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 43ms · UTC 11:00 · PVG 19:00 · LAX 03:00 · JFK 06:00
    ♥ Do have faith in what you're doing.