V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
unt
V2EX  ›  程序员

目前最强的 ios android 跨端框架是 flutter 吗,它发展前景是不是很美好,有没有经过时间的验证

  •  
  •   unt · 303 天前 · 7897 次点击
    这是一个创建于 303 天前的主题,其中的信息可能已经有所发展或是发生改变。

    想从前端转 flutter ,可行性怎样

    72 条回复    2022-08-15 08:59:13 +08:00
    kinXdle
        1
    kinXdle  
       303 天前   ❤️ 5
    是 h5
    GreatAuk
        2
    GreatAuk  
       303 天前
    为什么要转呢,不能两个都要吗
    Leonard
        3
    Leonard  
       303 天前
    前端不好吗
    DvorakChen
        4
    DvorakChen  
       303 天前   ❤️ 1
    如果你想做移动端,又懒得学安卓和 IOS ,那么 Flutter 是一个不错的选择,但是 Flutter 不适合做 Web 。如果你想专精移动端那么原生的安卓和 IOS 也是离不开的。
    rbq123456
        5
    rbq123456  
       303 天前
    我司海外项目的 app 都是 flutter ,我们是做阅读类的。
    JHExp
        6
    JHExp  
       303 天前
    纯写 Flutter 可以用 混编的话还不如直接写原生代码 另外前端前景明显更好 转是不划算的 抽空自己写几个玩玩吧
    debuggerx
        7
    debuggerx  
       303 天前   ❤️ 3



    keymao
        8
    keymao  
       303 天前   ❤️ 1
    React Native
    musi
        9
    musi  
       303 天前
    你可以自己先写个 demo 试试
    然后你就被劝退了
    别问我是怎么知道的
    我刚被劝退
    matatabi
        10
    matatabi  
       303 天前
    不做小程序就还好
    Vitta
        11
    Vitta  
       303 天前
    挺好的,比 ionic, quasar 舒服多了。甚至拿 flutter 写过 web ,不咋好
    i979491586
        12
    i979491586  
       303 天前
    前端有啥想不开的想学客户端啊?兄弟路走窄了呀,想学的话为啥不试试 React Native 呢?
    lancelock
        13
    lancelock  
       303 天前
    应该没有一个专门的职位叫 flutter ,有也是客户端开发
    Cat7373
        14
    Cat7373  
       303 天前
    邪教了解一下:Uni-app
    DCELL
        15
    DCELL  
       303 天前
    10 年老移动开发,android ios h5 flutter 都搞;无论 flutter rn ,还是 h5 ,开发只是一种能力,如果你要排除问题,你还是要学习原生知识;我不太看好 flutter ,因为那天 flutter 真的影响到 iOS 原生开发生态,apple 禁止就是一句话的事情。
    coolmint
        16
    coolmint  
       303 天前   ❤️ 1
    我们公司也是 flutter ,我之前做 Android 的,到这边一个人用 flutter 做两端,还是挺舒服的,不过我们的 app 不算复杂,就是常见的这种增删改查的 app ,用 flutter 舒服的很。
    库很多,比如生物识别,一个库搞定两端。
    比如通过 iOS 系统的 Secure Enclave 或安卓的 Keystore 生成硬件加密的私钥公钥,一个库搞定。
    比如两端的开屏图片,通过一个库直接自动生成了。
    flutter 成熟是非常成熟了,至于是否应该从前端转过来,还是得自己分析下发展前景和自身爱好。
    v135ex
        17
    v135ex  
       303 天前   ❤️ 2
    跨端这个东西真的是尴尬,我是 iOS 开发者转前端,跨端始终还是绕不开原生开发内容,无论是集成还是打包。如果你真要搞最终还是要既要懂 iOS 又要懂 Android
    yaphets666
        18
    yaphets666  
       303 天前
    客户端没前途,赶紧转 java
    sobigfish
        19
    sobigfish  
       303 天前   ❤️ 1
    al 的 app 做成那么烂,你说他们是技术问题还是跨平台框架本身地基不稳?
    就说一个选图,就改个头像一堆要相册权限
    iOS 原生的 viewcontroller 不行吗?(不需要权限)
    wpo
        20
    wpo  
       303 天前
    我目前在公司投入用 Flutter 在车载屏和移动 APP ,同时输出 Windows 、Linux 、macOS 的应用,包含 ADB 、蓝牙、Wi-Fi 、USB 转串口通信等上位机功能。
    murmur
        21
    murmur  
       303 天前   ❤️ 1
    国内最强是微信小程序,不要怀疑,app 是减量年代,小程序打市场拿投资,拿下投资才配开发 app
    GreatAuk
        22
    GreatAuk  
       303 天前
    @v135ex +1 ,react native 踩了两年坑,做复杂点的 app, 最好懂 IOS 和 Android 。flutter 同理
    zhuweiyou
        23
    zhuweiyou  
       303 天前   ❤️ 2
    flutter 和 rn 都是垃圾
    murmur
        24
    murmur  
       303 天前
    @Vitta ionic 是 h5 壳子,能拿 flutter 跟 ionic 比你就输了,ionic 可以配 react ,可以配 vue ,人家的目的非常明确就是给 h5 套壳,你 flutter 重写渲染引擎到头来只配跟 ionic 比么
    unt
        25
    unt  
    OP
       303 天前
    @GreatAuk #2
    @Leonard #3 太卷了,开始讨厌了。。。。
    unt
        26
    unt  
    OP
       303 天前
    @musi #9 哈哈~,我看了下 dart,确实和 js 有非常大的不同,所以才没有开始学
    unt
        27
    unt  
    OP
       302 天前
    @DvorakChen #4
    @JHExp #6
    @DCELL #15
    @v135ex #17
    @GreatAuk #22
    谢谢,都说要既懂安卓又懂 ios,我先写 demo 玩玩吧
    nothingistrue
        28
    nothingistrue  
       302 天前
    如果 win10 mobile 活过来的话,应该是 Xamarin
    novaline
        29
    novaline  
       302 天前
    夹在 H5 和 native 之间,尴尬
    flytsuki
        30
    flytsuki  
       302 天前
    app 肯定是 flutter ,如果要做小程序的话还是用 uniapp 好了
    beisilu
        31
    beisilu  
       302 天前
    目前很少专职 flutter 岗位,前端和 flutter 属于两个赛道,学了也不能转。
    exploreexe
        32
    exploreexe  
       302 天前
    还是苟在前端吧,移动开发现在很容易找不到活。。。现在很多公司都不招移动端开发了,太饱和了

    如果业余学学没问题
    MagicLi
        33
    MagicLi  
       302 天前
    就没有人回复如果本来是 java 的话 dart 看着贼舒服吗,( doge ).
    fox0001
        34
    fox0001  
       302 天前 via Android
    用过最成功的 Flutter 案例,应该是“闲鱼”了。不知道淘宝客户端是不是也使用了。

    Flutter 最大的好处是,一套代码兼容 Android 和 iOS ,并且流畅运行。当然,不是 100%兼容或覆盖,会遇到一些需要两边各自处理的问题。
    murmur
        35
    murmur  
       302 天前
    @MagicLi 但是从界面角度 dart 的死亡嵌套就一坨屎,怎么比的上 xml 或者 html 舒服
    v400127
        36
    v400127  
       302 天前
    flutter 转成 web 最大的麻烦在于资源文件的打包,如果能做到以页面为单位从后台抽取元素在前端生成界面就很好了。这个应该会实现的。
    我看代码,不管是 java 还是 xml 都没有我看小说的格式舒服,习惯就好了,程序员干活的痛点本来就不在格式,在于逻辑清晰。况且嵌套好不好,还要看怎么写的。
    去用就好了。
    gesse
        37
    gesse  
       302 天前
    @rbq123456
    国外做阅读类的? 看小说还是啥?
    Hongwu
        38
    Hongwu  
       302 天前
    flutter 现在连大公司都是浅尝辄止,慎重用吧
    belowfrog
        39
    belowfrog  
       302 天前
    RN 很多包已经名存实亡了,几年不更新。还有的包比如 reanimated ,明明很多人在用,还存在非常严重的内存泄漏,多线程导致 crash 的 bug 。
    flutter 据我观察,这两年社区挺活跃的,库挺多的
    unt
        40
    unt  
    OP
       302 天前
    @Hongwu #38 大公司有实力原生开发呀,所有不会用这种,一般小公司才考虑跨端
    xz410236056
        41
    xz410236056  
       302 天前
    @coolmint #16
    机器学习(生物识别)在 iOS 上没有比 Core ML + vision 好用的。
    “比如两端的开屏图片,通过一个库直接自动生成了。”
    iOS 在 assets 里扔个图片就行了,代码都不用写。复杂点的用 lunch screen 直接可视化的画。
    apple 对开发者友好程度比谷歌强多了。
    xz410236056
        42
    xz410236056  
       302 天前
    @fox0001 #34 咸鱼也不用了吧,之前用 flutter 的时候各种白屏,肉眼可见的慢。当然也可能是实验阶段的时候水平不行
    dreamramon
        43
    dreamramon  
       302 天前
    React 吧,网页一起搞了。
    Flutter 的搞网页麻烦。
    fox0001
        44
    fox0001  
       302 天前 via Android
    @xz410236056 #42 究竟闲鱼有没有放弃 Flutter ,真不知道。但搜索“闲鱼 flutter”有很多相关内容,其中还提到闲鱼开源了 fish redux ,是 flutter 相关的东西,具体没看。

    另外,我们用 flutter 做过 app 项目,各种操作是流畅的,跟原生没区别。
    zeal7s
        45
    zeal7s  
       302 天前   ❤️ 1
    难道不是游戏引擎吗?比如 Unity [手动狗头]
    fengfuliu
        46
    fengfuliu  
       302 天前
    @belowfrog reanimated 我看了 github 前两天还在提交代码吧 https://github.com/software-mansion/react-native-reanimated
    HeapOverflow
        47
    HeapOverflow  
       302 天前 via iPhone
    有人感兴趣的话,可以看看我用 flutter 写的 hacker news 客户端( android 端体验可能不是很好): https://github.com/Livinglist/Hacki
    swordne
        48
    swordne  
       302 天前
    @fox0001 闲鱼好像还是 flutter ,关注一个做手机输入法的开发者,反馈过好多次 flutter 的 bug 导致输入法的候选字栏显示异常。
    mmm159357456
        49
    mmm159357456  
       302 天前
    就我的学习经验而言,原生该遇到的坑一个都跑不了
    xiqishow
        50
    xiqishow  
       302 天前
    @zeal7s #45 flutter 的本质也是 2d 渲染引擎 可以理解为一种 2d 游戏引擎[doge]
    CHTuring
        51
    CHTuring  
       302 天前
    React Native 加 EXPO ,功能都能实现。
    kangyan
        52
    kangyan  
       302 天前
    与其纠结兼容性,不如原生学起来
    linroid
        53
    linroid  
       302 天前
    如果要入坑 flutter ,建议买台显微镜来帮助对符号
    iwh718
        54
    iwh718  
       302 天前
    一直用 RN ,挺好的。
    duanxianze
        55
    duanxianze  
       302 天前
    任何跨端框架都有个问题,就是你需求稍微复杂一点就必须会原生开发,对个人或者小公司来说必须至少有三个人或者同时会三个技能的人,算下来没有节省太多的时间和金钱
    youxiachai
        56
    youxiachai  
       302 天前
    @DCELL flutter 怎么可能影响到 ios 的原生生态.....

    你以为用 flutter 开发, 就可以完全不用 ios 的东西啊...
    youxiachai
        57
    youxiachai  
       302 天前
    @fox0001 淘特啊.纯 flutter
    youxiachai
        58
    youxiachai  
       302 天前
    @duanxianze dart::ffi 我一个搞 android,最近都在看 win32...最后 10%的功能真折磨..
    fox0001
        59
    fox0001  
       302 天前 via Android   ❤️ 1
    还是回答一下楼主的问题吧

    1 )前景,我觉得好的。首先是 Google 开发主导的,目前兼容最多平台( Google 的野心不小)的框架。抛开各种需求场景,我不敢说是最优秀或最强,但起码名列前茅,且能安心使用。

    2 )有很多成功案例,包括 Google 和阿里巴巴等。详见 flutter.dev -> Showcase

    3 )前端转过去,感觉没问题,原理跟 VUE 差不多。我反而是弄过 Flutter ,再回过头来看懂 VUE (但是还没深入)。不过 Flutter 有些概念或做法,可能不能一下子弄懂(因人而异吧)。另外,一开始用,会比 web 开发慢,熟悉了就好。
    coolmint
        60
    coolmint  
       302 天前
    @xz410236056 #41 确实,除了工作我不会做 flutter ,哈哈哈,我更愿意做 iOS
    winglight2016
        61
    winglight2016  
       302 天前
    @wpo flutter 直接连上位机?我之前用原生开发,只能用 jni 调用 so 包,真是太痛苦了,一位一位的处理 rambus 消息。如果 flutter 连这些都封装好了,那真的可以代替原生了
    buxudashi
        62
    buxudashi  
       302 天前
    写了几天 flutter,总是感觉离工程化还很远。

    小公司做点小项目,几下搞搞。大公司一般应该不屑于用 flutter 。它更像是过渡品。配菜,成不了正餐。或者说需要再优化下才能变更好。目前还不行。
    belowfrog
        63
    belowfrog  
       302 天前
    @fengfuliu 是在更新,不过说的是它的 bug ,你可以去 issue 中搜下 memory ,oom ,crash ,这些,没见它有啥进度。
    作为一个广泛使用的基础库,太不专业了。
    RN 生态,可见一斑吧。
    reallittoma
        64
    reallittoma  
       302 天前   ❤️ 1
    @winglight2016 #61 想多了,凡是涉及到稍微底层一点的功能(蓝牙、串口等)都离不开原生开发。
    goddoogasidivil
        65
    goddoogasidivil  
       302 天前
    宜家的客户端几乎全量 flutter 写的,在 ios 感觉还可以,xr 上运行还是比较丝滑
    skyrem
        66
    skyrem  
       302 天前
    @Cat7373 #14 uniapp 是真的渣。跨各种小程序可能还可以,指望它跨 ios 和 andriod 就很勉强了,各种原生方法不支持,想调可能还得自己写原生插件
    vivipure
        67
    vivipure  
       302 天前
    为什么是转呢?写 flutter 也是前端呀。跨端框架还是的会原生才行,不然遇到问题头很大。
    LINAICAI
        68
    LINAICAI  
       301 天前
    混编的开发体验极其差,纯 flutter 可以。
    unt
        69
    unt  
    OP
       301 天前
    @LINAICAI #68 你们说的混编是什么意思
    LINAICAI
        70
    LINAICAI  
       301 天前
    @unt 原工程是原生,集成 flutter 模块,或者原工程是 flutter ,集成原生模块,叫混编吧。
    混编解决工程化的问题,各种开发体验就差了。
    wpo
        71
    wpo  
       300 天前 via Android
    @winglight2016 是在 Windows 上位机的程序,Flutter 只做界面和业务代码实现,需要调用的功能用 shell 拉起其他程序通信,随便套一个类似 Flutter 调用原生的数据结构,比如我要做一个低功耗蓝牙,就另外项目打包一个,功能模块要加载就从后台下载回来。
    DCELL
        72
    DCELL  
       299 天前
    @youxiachai 格局小了,诺基亚思想;从软件到硬件必须一手抓
    关于   ·   帮助文档   ·   博客   ·   nftychat   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2413 人在线   最高记录 5634   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 50ms · UTC 04:32 · PVG 12:32 · LAX 21:32 · JFK 00:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.