V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
MrLQX
V2EX  ›  问与答

使用 flutter 开发安卓, iOS, pc 等上位机软件是否可行?

  •  
  •   MrLQX · 2024-06-06 10:33:16 +08:00 · 2357 次点击
    这是一个创建于 461 天前的主题,其中的信息可能已经有所发展或是发生改变。

    公司需要开发针对安卓,iOS ,pc 等蓝牙串口通信的上位机软件,之前都是单独原生开发,现在我想使用 flutter 做一个跨平台框架开发,不知道是否可行?

    18 条回复    2024-06-07 09:50:52 +08:00
    nullico
        1
    nullico  
       2024-06-06 13:25:15 +08:00
    可以。不过你需要知道的是 flutter 解决的只是 ui 层面的事情,你和蓝牙,串口这些打交道,都绕不开原生,如果 flutter 有人做了蓝牙和串口的插件,那你直接就用就行了。安卓应该这些都有插件了,但是 pc 的话大概率没有。不过你们既然都有原生开发,那也不是难事。自己写个插件就行。
    ks2ex
        2
    ks2ex  
       2024-06-06 14:20:41 +08:00
    我觉得 Flutter 还解决了安卓 APP 容易被反编译的痛点。Dart 代码被编译成二进制了,再混淆一下,逆向难度直接和 C 或 Rust 编译出来的程序一样难逆向了。直接节省了各种加固的费用,每年好几万呢。
    MrLQX
        3
    MrLQX  
    OP
       2024-06-06 16:30:43 +08:00
    @nullico 其实我也是考虑 flutter 做 ui 比较方便,其他通信还是原生才行
    MrLQX
        4
    MrLQX  
    OP
       2024-06-06 16:31:15 +08:00
    @ks2ex 这个确实是优点
    nullico
        5
    nullico  
       2024-06-06 17:08:21 +08:00
    @MrLQX #3 看你了哇,前几年我用 flutter 弄过你这一套,当然那会儿没有 pc ,反正方案肯定是可行的。楼上说的被反编译的那个也是优点之一。不知道现在 flutter 的 bug 还多不多了。当年我弄的时候反正是得时不时看他底层实现的,看官方 issue 列表也是常事。其实我倒是觉得如果你们有原生开发,直接内嵌 webview ,然后交互弄成统一 api 不也可以?还没那么多有的没得的坑。
    shilianmlxg
        6
    shilianmlxg  
       2024-06-06 18:36:17 +08:00 via iPhone
    大佬 react native 和 flutter 哪个好呢
    shilianmlxg
        7
    shilianmlxg  
       2024-06-06 18:37:04 +08:00 via iPhone
    @nullico #1 大佬 如果做这个需求,react native 好做吗 比起 flutter 有优势吗
    nullico
        8
    nullico  
       2024-06-06 21:13:13 +08:00
    @shilianmlxg #7 native 没有用过不了解,不过涉及到串口这些跟操作系统/硬件交互的,原生是你永远绕不开的一个坎。跨端方案解决的都是 UI 那一侧的解决方案,如果没有原生开发/懂对应平台的开发,你们就只能指望有对应的插件/拓展,就得接受这些插件/拓展带来的不足甚至是 bug 。
    RightHand
        9
    RightHand  
       2024-06-06 21:19:06 +08:00 via Android
    别用一堆坑,flutter 就是个画 ui 的
    xiaoshan5733
        10
    xiaoshan5733  
       2024-06-06 22:15:23 +08:00
    @shilianmlxg 如果你是前端从业者,我会强烈推荐 reactnative ,不过就像 1 楼大佬说的,你要先调研下 reactnative 能否支持你的特定功能,如果只是 UI 和前后端数据交互那完全没问题。
    1una0bserver
        11
    1una0bserver  
       2024-06-07 01:56:45 +08:00 via Android
    当然可行。但还是考虑下你技术栈比较好,跨平台很多需要自己造轮子,太费功夫就不划算了
    Moyudawang
        12
    Moyudawang  
       2024-06-07 08:07:17 +08:00
    可行,我们公司的产品就是蓝牙、串口通信的,有插件可以直接使用,除了 windows 的蓝牙,这个可能需要自己搞,那些说一堆坑的最好说说有哪些坑
    daysv
        13
    daysv  
       2024-06-07 08:41:11 +08:00
    目前明显 rn 的软件数量和质量要高于 flutter
    上手难度 rn 也是低于 flutter
    chinaqq
        14
    chinaqq  
       2024-06-07 08:48:55 +08:00
    可行的,我这个就是基于 Flutter 开发的,通信都是走蓝牙 BLE ,Android 和 iOS 都正常跑
    https://shop.mtoolstec.com/mifare-classic-tool-for-ios
    wpo
        15
    wpo  
       2024-06-07 08:48:57 +08:00
    我之前回复过,在公司投入用 Flutter 在车载屏和移动 APP ,包含 Windows 、Linux 、macOS 的应用,包含 ADB 、蓝牙、Wi-Fi 、USB 转串口通信等上位机功能,低功耗蓝牙程序就写成 ADB 这样的。
    chinaqq
        16
    chinaqq  
       2024-06-07 08:49:53 +08:00
    BTW, iOS 走不了串口,只能走蓝牙 BLE 。Android 和 PC 走串口和蓝牙 SPP 没问题。
    iMusic
        17
    iMusic  
       2024-06-07 09:45:55 +08:00
    @shilianmlxg #6 在 twitter 上问,RN 推荐的多。RN 貌似有重大升级,开发体验和性能都上来了。
    Vaspike
        18
    Vaspike  
       2024-06-07 09:50:52 +08:00
    我依然推荐 Kotlin compose
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2180 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 16:11 · PVG 00:11 · LAX 09:11 · JFK 12:11
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.