大佬们,我打算做一个跨平台的 app, react native 和 flutter 分别如何?

275 天前
 cernard

具体需求如下:

  1. 支持 ios 、android 、windows 、macos
  2. 会有些需要通过原生代码实现的功能,比如兼容外围硬件等等,但是这个可以每个系统写一个驱动,然后通过跨平台方案集成调用
  3. 良好的持续开发的可维护性
  4. 最好一套代码能够支持多个平台,可以少量的改动来兼容不同平台
  5. 风格一致性,但也可以在 pc 端会加入一些对于移动端代码的调整来提供更好的交互体验

rn 和 flutter 我都有所接触,但是没有做过和原生代码的集成以及跨平台编译。 请问下针对上面的需求,这两个方案哪个更好?

flutter 可以直接编译成多平台应用,但 rn 好像不同平台的 framework 是不同组织维护的,react native for windows 这种方案可以直接用移动端的代码吗?我担心不同的组织维护的 framework 代码需要做出比较大的调整。

但从个人角度出发,我更倾向于 rn 的 web 技术栈解决方案,因为库更多也更简单,现有的都比较成熟。flutter 写过一下小应用,嵌套地狱,一眼看过去全是括号,太痛苦了。但是出于上面几点的考虑,不知道哪个更合适

1755 次点击
所在节点    问与答
6 条回复
huijiewei
275 天前
目前推荐 React Native ,更加流行
cernard
275 天前
@huijiewei rn 可以一套代码编译所有平台吗?
Sketch
275 天前
我对 React Native 和 Flutter 的了解都并不深入。但单就 React Native 而言,首先 Windows 和 macOS 的支持都是由社区或是第三方提供的,兼容性和可用性并不一定能满足你的需求,其次 React Native 的 Native 实现在各个平台也需要独立的代码,例如 iOS 和 Android ,可能需要使用 Swift 和 Kotlin 在各自的平台上通过各自的 API 实现。
Jirajine
275 天前
你随便下几个 rn 开发的和 flutter 开发的应用体验一下在各个平台的表现就知道怎么选了。
RightHand
275 天前
flutter ,rn 不知道。就你目前说的问题,作为 ui 来说他俩应该差不多,但是 flutter 有 ffi ,除非特别的各个平台完全不一样的东西比如蓝牙控制。ffi 可以直接 dart+c++,互相调用,减低一部分难度。但是吧新手不一定能掌控,坑有不少
arnosolo
275 天前
Ionic 支持 ios android web. 而且不像 rn 它可以调用所有的浏览器接口, 使用所有的 web UI 框架.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1025899

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX