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

现在开发安卓,是用 Kotlin,fluter, Java 还是 uniapp ?

  •  
  •   buxudashi · 2022-06-26 22:01:42 +08:00 · 22635 次点击
    这是一个创建于 878 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如果重新写一个 app ,该选择哪个?

    有经验的人聊聊。

    请不要说喜欢哪个用哪个这种没有价值的话。毕竟都没用过。对比是为了选择。

    第 1 条附言  ·  2022-06-28 07:05:51 +08:00
    其实主要考虑还有以下几点:

    1 )如 app 使用微信登录,取 openid 这些操作。这些国内第三方的 sdk 一类的支持度。推送啥的。
    2 )尽量一种语言做一整个项目。如果学了 uni 又发现个别地方还要学 java ,那其实学习成本也是成本。划不来呀。
    3 )目前来看,凡是一套代码想发布 N 个平台的都不太现实,多端环境都不一样,所以无非是坑套坑,安卓只做安卓,ios 只做 ios 更明智些吧。
    4 )选择 app 肯定是选择硬件能力的。gps,摄像头,录音时不时的会用上。这是必要功能。
    第 2 条附言  ·  2022-06-29 11:49:31 +08:00
    看来结果只能是 kotlin 了。flutter 次之。
    102 条回复    2022-07-07 17:23:51 +08:00
    1  2  
    111111111111
        1
    111111111111  
       2022-06-26 22:11:48 +08:00
    先把 uniapp 划掉。。。体验真的不好
    目前在用 Kotlin ,感觉一般般,说不上好说不上坏
    观望 fluter
    buxudashi
        2
    buxudashi  
    OP
       2022-06-26 22:17:18 +08:00
    @111111111111 看网上说 flutter 能同时写 ios 和安卓。

    几年前 google 都说要弄个新系统。fuchsia 也好久没动静了。因为不太喜欢又臭又长的 java ,不想搞安卓,不知道新系统啥时候出
    cheng6563
        3
    cheng6563  
       2022-06-26 23:45:01 +08:00
    Android 原生开发现在是真的恶心,编译速度快点 5 分钟慢点半小时。
    hs0000t
        4
    hs0000t  
       2022-06-27 03:10:16 +08:00 via Android
    主要按完善程度( demo 级别还是上线级别),跨平台程度,熟练程度等来判断
    都没用过的话就只看完善程度和跨平台程度,完善程度越高越建议每个平台用各自官方推荐的语言,越低越推荐用跨平台语言
    murmur
        5
    murmur  
       2022-06-27 08:26:55 +08:00
    第一个就是 uniapp 。现在是 app 减量市场,都是从小程序开始做起,所以 uniapp 做小程序不错,等你抢占到市场,拿到了投资,再考虑 native 的事情。
    murmur
        6
    murmur  
       2022-06-27 08:27:57 +08:00
    有一个很现实的事情就是,上架小程序基本=国内 ios+android 全覆盖,安卓的上架光一个渠道就要你死
    beisilu
        7
    beisilu  
       2022-06-27 09:00:31 +08:00
    月经提问。
    java 算是被抛弃了,kotlin 是大势所趋。
    自己玩写 flutter 。
    zed1018
        8
    zed1018  
       2022-06-27 09:05:46 +08:00
    @cheng6563 如果你是 kotlin 开发,可以试试 k2 compiler ,据说快不少
    debuggeeker
        9
    debuggeeker  
       2022-06-27 09:24:01 +08:00   ❤️ 5
    双端开发者来了,java ,kt 开发原生应用,你熟悉那个用哪个,混合也没问题。原生优势在于性能,注重体验的,优先考虑原生。flutter 嘛,纯 UI 显示无底层交互(无蓝牙,无相册相机,传感器,WiFi 等等),毕竟 flutter 只是 UI 框架,和本地硬件对接的还是依赖插件,现在大部分插件都有了,但是一些项目配置,报错等等你该熟悉的还是熟悉,甚至有些需要原生支持的你得会。体验,看开发能力,上限高,下限低。如果遇到一些奇奇怪怪的 bug ,要有能力解决。
    uni 就是 webview 加载东西,体验一般。场景:快速成型交付客户,如果遇到打磨体验的时候估计还得走原生 路线。
    先写这么多。
    buxudashi
        10
    buxudashi  
    OP
       2022-06-27 09:48:41 +08:00
    @debuggeeker kotlin 能调用硬件能力吗?如 gps ,nfc ,重力感应?
    cnhongwei
        11
    cnhongwei  
       2022-06-27 09:59:27 +08:00   ❤️ 1
    我选的话,选 React native 。iOS Android web 都可以,因为我没有做小程序,所以 react native 转小程序没有看过,好像有作品,但成熟度如何没有试过。不用 flutter 主要是热更新功能官方还是没有支持,而 RN 就成熟多了。使用 Expo 感觉和开发 web 差不多。
    guyuesh3
        12
    guyuesh3  
       2022-06-27 10:02:19 +08:00
    @buxudashi google say: kotlin first !
    magicdu
        13
    magicdu  
       2022-06-27 10:02:55 +08:00
    我们现在是混合开发,h5+原生,h5 搞不了的再用原生写接口
    guyuesh3
        14
    guyuesh3  
       2022-06-27 10:03:30 +08:00
    @cnhongwei 用 taro 框架,RN 代码目测改吧改吧也很快就能用在小程序上
    xcsoft
        15
    xcsoft  
       2022-06-27 10:05:02 +08:00 via iPhone
    flutter 还行
    ifdef
        16
    ifdef  
       2022-06-27 10:07:29 +08:00
    html+css 写 ui 界面很快,如果 app 大部分是纯展示的页面,用原生(kotlin+xml / java+xml)写太慢了。不过可以试试 jet pack compose 。
    marcong95
        17
    marcong95  
       2022-06-27 10:08:41 +08:00
    uniapp 确实坑多,举个栗子,DOM/Canvas 操作极奇葩,算是照着微信小程序重复造的轮子,而且还是比较旧版的小程序 API 。如果你不在意性能,想用回 Web API 的话,那个所谓 renderjs 文档极少,API 也各种奇葩。而且据说还会内存泄漏。

    你要考虑各种奇奇怪怪的小程序可以上,如果不需要,建议别。
    runningman
        18
    runningman  
       2022-06-27 10:11:53 +08:00
    flutter ,
    fredli
        19
    fredli  
       2022-06-27 10:18:39 +08:00
    必须干掉 java 选 kotlin 啊,compose 唯一
    fernandoxu
        20
    fernandoxu  
       2022-06-27 10:29:24 +08:00
    jetpack compose
    pdog18
        21
    pdog18  
       2022-06-27 10:35:42 +08:00
    @buxudashi 这个完全不是问题,这个是 framework 提供的能力,java / kotlin 并无区别,因为 kotlin 是完全可以调用 java 写的 framework 的
    buxudashi
        22
    buxudashi  
    OP
       2022-06-27 10:38:10 +08:00
    @pdog18 只选择一种语言适应全局功能。不能因为学了 Kotlin,发现又要调用 java 的框架,又把 Java 学了,那就坑大了。
    双份劳动拿一份工资。不明智呀。
    z42514
        23
    z42514  
       2022-06-27 10:38:18 +08:00   ❤️ 1
    @buxudashi #10 你有个概念没搞明白,这里不是语言的问题

    原生:java 、kotlin
    webview 渲染方案:uniapp
    自研引擎渲染:flutter
    z42514
        24
    z42514  
       2022-06-27 10:41:23 +08:00
    @z42514 #23 kotlin 调用原生方便,是因为用 kotlin 的话基本上就代表使用的是原生开发,而不是 kotlin 本身支持调用硬件
    Leviathann
        25
    Leviathann  
       2022-06-27 10:50:54 +08:00
    @buxudashi 什么意思
    kotlin 的标准库都是直接用的 java 的
    sakuraSou
        26
    sakuraSou  
       2022-06-27 10:52:47 +08:00   ❤️ 1
    用 uni-app 会让人生变得不行
    pdog18
        27
    pdog18  
       2022-06-27 10:58:33 +08:00
    @buxudashi 。。。有那么夸张嘛?那换一个角度,如果你只学 Java 以后只用 Java 写 app 用的时间是 1000 个小时,但是你同时会 java 和 kotlin ,后面因为用 kotlin 加快了开发效率,使用的时间是 800 小时,那又怎么算?
    pdog18
        28
    pdog18  
       2022-06-27 11:00:44 +08:00
    这种例子我可以举很多,如果你只会 java ,那么同理 kotlin 的一些第一方库,第三方库你都不用,不是因咽废食嘛?这两者不是对立的,不是非 Java 即 Kotlin ,而是两者可以同时学,同时用。
    yazinnnn
        29
    yazinnnn  
       2022-06-27 11:04:54 +08:00
    学 kotlin 需要 java 基础, kotlin 是更好的 java
    xmt328
        30
    xmt328  
       2022-06-27 11:30:49 +08:00
    如果是刚学那肯定是从 java 或者 kotlin 入手
    不管做哪个,都得会原生开发
    seakingii
        31
    seakingii  
       2022-06-27 11:39:50 +08:00
    c# : ??? 怎么没人说我
    yor1g
        32
    yor1g  
       2022-06-27 11:44:29 +08:00
    用 fluter 大多数库会涉及到 dart kotlin java
    用 kotlin 大多数库会涉及到 java
    用 java 有些库会涉及到 kotlin
    但是 kotlin 可以反编译成 java
    kennir
        33
    kennir  
       2022-06-27 11:48:41 +08:00
    不考虑跨 iOS 的话 kotlin 配合 jetpack , 写起来很舒服,新项目可以考虑符合干净架构
    需要跨平台又没有太多的 native 体验需求的话那就 flutter
    ShareDuck
        34
    ShareDuck  
       2022-06-27 12:07:01 +08:00
    @seakingii .net 体系有什么推荐的吗?
    fox0001
        35
    fox0001  
       2022-06-27 12:47:30 +08:00 via Android
    flutter +1
    zpxshl
        36
    zpxshl  
       2022-06-27 12:56:47 +08:00 via Android   ❤️ 1
    想得太多而动得太少
    tianxin12138
        37
    tianxin12138  
       2022-06-27 13:35:37 +08:00
    我是一个游戏客户端,站在外行的角度来说,我个人更倾向于 flutter 。从上手难度来说,我觉得 flutter 比 uniapp 上手快多了,CSS 各种属性看着真的头大。再一个渲染显示方面,flutter 基本上写成啥样就啥样了,uniapp 我按照小程序上的表现去写,Android/IOS 打包出来的效果可能会有差异。还有个性能就不说了,大家都说的太多了,但是据小道消息说 chrome 后期可能会直接支持 dart ,潜力巨大
    xiaogui
        38
    xiaogui  
       2022-06-27 13:46:12 +08:00
    我们这边已经是 kotlin 。uniapp 算是前期试错的选择。
    murmur
        39
    murmur  
       2022-06-27 14:04:21 +08:00
    @tianxin12138 css 的属性其实跟 flutter 的布局差不多,那么多乱七八糟的是给 ie 用的,新的直接用 flex 模型开始学就可以
    buxudashi
        40
    buxudashi  
    OP
       2022-06-27 14:13:10 +08:00
    @xiaogui 那你们那边不还得学 Java?相当于 Java,kotlin 并存?
    xiaogui
        41
    xiaogui  
       2022-06-27 14:33:02 +08:00
    @buxudashi 安卓的开发目前基本都是 kotlin 了。
    ifdef
        42
    ifdef  
       2022-06-27 14:37:09 +08:00
    @buxudashi #40 老项目大部分都是 Java 写的,总不可能用 kt 重构吧。所以原生的话还是得学 java 的
    ciki
        43
    ciki  
       2022-06-27 14:42:43 +08:00
    @buxudashi #40 Java 和 kotlin 都是 Android 的原生开发语言,最初是 Java ,后来 kotlin 上位成为第一语言,开发 Android 来说,Java 能干的 kotlin 都能干,但是因为 Java 作为第一语言这么多年,留下的影响在那里。很多库啊,API 离不开。所以 Java 是基础,只要做原生开发,就必须学。
    stoluoyu
        44
    stoluoyu  
       2022-06-27 14:47:28 +08:00
    很现实的问题,如果你不会原生,flutter 、uniapp 出了问题你不一定解决的了。
    WebKit
        45
    WebKit  
       2022-06-27 14:49:43 +08:00
    @cheng6563 #3 快点 5 分钟?要不先换个电脑试试吧。。
    WebKit
        46
    WebKit  
       2022-06-27 14:51:51 +08:00
    @buxudashi #22 你似乎没有搞明白 java 、kotlin 的关系
    WebKit
        47
    WebKit  
       2022-06-27 14:55:21 +08:00
    楼上说用 flutter 的,如果是公司开发,应该是各有一个 iOS 、Android 原生开发的。说 uniapp 的大概值用 uniapp 做过小程序吧。uniapp 生成原生真的很多坑
    honmaple
        48
    honmaple  
       2022-06-27 15:28:11 +08:00
    flutter, 但 flutter 的嵌套布局真的很恶心,一点都不直观,要是有大佬写个工具能内嵌 html/css 或者能把 html/css 转成 flutter 布局就好了
    murmur
        49
    murmur  
       2022-06-27 16:19:15 +08:00
    @WebKit 说的很明确了,现在是 app 减量年代,你想出一个 app ,除非有内容上的绝对优势,比如周杰伦的新歌,热播电影,当红小说,或者是那种巨优惠的折扣,大概率是没市场的,所以小程序探路是个很好的选择
    roundgis
        50
    roundgis  
       2022-06-27 16:22:55 +08:00 via Android
    @ShareDuck 目前只有 xamarin

    Uno
    equationl
        51
    equationl  
       2022-06-27 16:45:53 +08:00
    @ciki 这个我认为你恰恰说反了,kotlin 是完全兼容 java 的,不管是你说的遗留库还是遗留 API 。相反,现在谷歌的很多第一方库只支持 kotlin 不支持 java 或者对 java 的支持没有 kotlin 好。
    xinleicoder111
        52
    xinleicoder111  
       2022-06-27 16:58:59 +08:00
    优先考虑 Kotlin ,java 写起来很难受,也可用 flutter 开发,开发双端难免要写一些原生的代码,如果没有原生开发的底子,直接去用 flutter 开发商业项目,会折磨的你想吐
    cxsz
        53
    cxsz  
       2022-06-27 17:16:26 +08:00
    @buxudashi #10 kotlin 它就是原生,java 能干的它都行
    zapper
        54
    zapper  
       2022-06-27 17:40:06 +08:00
    我觉得分情况吧,你写个 TODO 、或者页面更新快的活动界面,Uniapp 肯定可以写;如果 JNI ( live555 ,ffmpeg 等)、那就 java ,重原生 API 交互(语音、陀螺仪等),那就 java 或 Kotlin ;想写得爽,Kotlin 。记住软件开发没有银弹
    geeksammao
        55
    geeksammao  
       2022-06-27 18:04:06 +08:00 via iPhone   ❤️ 1
    @murmur 小程序探路也看业务类型的。有些业务在小程序生态里就没法尝试,比如社交类,而且小程序买量限制也很大,app 在信息流、短视频、商店渠道能起量的方法对小程序完全不适用。结果就是,做小程序看起来成本低但也基本起不来,有些东西还得拿 app 试。
    leili
        56
    leili  
       2022-06-27 18:49:10 +08:00
    为啥没有 RN ?? 它不香么? 它具备完整的生态和社区,纯前端即可。较 uniapp 优势还是蛮大的。
    lzgshsj
        57
    lzgshsj  
       2022-06-27 19:53:47 +08:00
    我倒是觉得从 html/css 换到嵌套式声明布局没啥,不用看见 css 我真的太谢谢 flutter 了,布局可以说完全可控,没有什么正交问题。
    seakingii
        58
    seakingii  
       2022-06-27 20:08:24 +08:00
    @ShareDuck 以前叫 xamarin ,现在叫 MAUI ,不过还没有完善, 和 flutter 一样的野心(跨平台 ,还可以开发 PC 程序和手机 APP)
    Buges
        59
    Buges  
       2022-06-27 20:52:52 +08:00
    除此之外还有一个 dotnet MAUI (微软出的 UI 库警告⚠)
    总的来说,不需要跨平台就直接原生,没必要关心那些额外的复杂度。
    uni 小程序这种 💩就别碰了。
    hst001
        60
    hst001  
       2022-06-27 22:03:51 +08:00
    如果只是 Android 平台的话,建议选择 Kotlin ,涉及到原生交互的问题会很好解决;
    如果有多平台的需求而你只有一个人,那么跨平台是首先要考虑的事情,这个时候可以考虑 Flutter 。
    tanranran
        61
    tanranran  
       2022-06-27 23:47:15 +08:00   ❤️ 5
    马德,楼上各种说方案的,有多少人都写过,都实际写过成熟商业项目过的?
    作为一个都写过的人而且都上架过多款 APP 说明一下
    1 、如果没写过原生,又想支持小程序,建议直接上 uniapp ,楼上不服的来辩,
    2 、如果没写过原生,又想不想支持小程序,建议直接上 React Native
    2 、如果写过原生,而又想跨平台,直接 flutter
    3 、如果写过原生,又不想跨平台,Android 用 Kotlin 和 Java 都可以,iOS 用 Objective-C 和 Swift 都可以,哪个熟用哪个
    ps:
    1 、有说 k2 compiler 的,你用 k2 compiler 编译过 android ?
    2 、有说原生能力的,你用 uniapp 开发过蓝牙,相机,wifi 、等硬件交互过的吗?
    3 、有说 compose 的,你用 compose 写过成熟的商业项目?
    James369
        62
    James369  
       2022-06-27 23:56:08 +08:00
    唉,flutter 好是好,但是要接受 dart
    b1ncer
        63
    b1ncer  
       2022-06-28 02:11:47 +08:00 via iPhone
    我这目前日活 5 万的项目,用的 RN ,写业务非常舒适,但是在对接国内各种平台 sdk 时麻烦很多。
    另有一个日活千级的用的 flutter 。业务上效率略输,因为生态不如 rn 。但神奇的是国内厂商的 sdk 支持度,flutter 相比 rn 略好一些。
    FightPig
        64
    FightPig  
       2022-06-28 02:32:49 +08:00   ❤️ 1
    @tanranran 我来说,uni 我们公司用的多,不过我们公司的大多会写原生,所以各种问题还好,我们公司合作的几个公司,好多用 uni 不会原生的,甲方给的 sdk 是个 jar 包,他们直接不知道怎么搞了,好多用 uni 的只会个云打包。你让自定义基座试试,有多少人会?而且官方文档写的就什么一样,要不是我们公司的人会写原生,估计后面直接嗝屁。而且这东西各种莫名的 bug ,最后还是要用原生的来处理。不过如果只是用来写写简单的业务不涉及到原生 sdk 啥的,还是可以一用。另外,写小程序也尽量原生,uni 的好处是插件多,你不会的,随便找个插件几乎都有,但如果有坑,你自身底子不行,那不好意思,你还是重写吧,因为你找遍全网,发现好多人有这个 bug ,但可能都好几年了,官方也没人说怎么解决。
    debuggeeker
        65
    debuggeeker  
       2022-06-28 09:09:18 +08:00
    @buxudashi kt 和 java 使用 SDK 的 api 一样的,只是语法上有一点点不统一而,java 能做 kt 也能
    debuggeeker
        66
    debuggeeker  
       2022-06-28 09:13:51 +08:00
    @buxudashi 不要想着只学一种东西,因为很多开源库其他问题,很多解决方案都不一定是你熟悉的语言。不然人家写的代码你都看不懂,就谈不上解决问题了。作为双端开发,其实我会的不只是双端的知识,还有后端,前端,flutter ,java ,kt ,py ,swift ,oc ,mysql ,nginx===。遇到问题干就是了,不要排斥某个语言,吹某个语言,他们都是你的工具罢了。我们目的是解决问题。
    coolmint
        67
    coolmint  
       2022-06-28 09:21:25 +08:00 via iPhone
    只做过海外项目,不了解小程序,前公司做 Android ,用 Kotlin 和一部分 Compose 。现公司单兵 Android + iOS 。
    推荐 flutter ,确实是一套代码一把梭了,很方便。
    waltcow
        68
    waltcow  
       2022-06-28 09:41:51 +08:00
    KMP?
    tanranran
        69
    tanranran  
       2022-06-28 09:49:23 +08:00
    @FightPig #64 技术选型是多方面考虑和业务场景的,任何技术都有技术曲线,
    1 、答:而是在好多用 uni 不会原生的 [前期 uni ,后期需要原生那么,就得原生上,这点你换任何跨平台的框架都得遇到这个问题]
    2 、答:uni 的好处是插件多,你不会的,随便找个插件几乎都有 [随便找个插件都有问题?这个怪 uni ?]
    3 、答:但如果有坑,你自身底子不行 [底子不行,换任何框架都不行]

    我们得目的是快速解决问题,快速迭代
    fiypig
        70
    fiypig  
       2022-06-28 09:51:24 +08:00
    现在很多 sdk 都支持 fluter , 但不一定支持 uniapp ,很恶心的, uniapp 如果是简单基础开发还好 ,如果功能多了,真的去掉
    FightPig
        71
    FightPig  
       2022-06-28 09:57:11 +08:00
    @tanranran 2 、我感觉你没看清楚,我说那是 uni 的好处,3 、uni 的坑你要会前端 和原生两种,不是所有人都会这个,有时候原生更方便。uni 好处是快速出原型,但真不适合写 app 来用来正式商用上,当然了,可能你把 uni 吃的透透的,那我们比不了。
    iXInbo
        72
    iXInbo  
       2022-06-28 10:20:10 +08:00
    其实用什么,看公司而不是群友说的;
    如果你是刚入门,准备做安卓;你要做的第一步就是看你当地的招聘
    看看要求,如果 kotlin 多,就学 kotlin ;如果 flutter 多学 flutter ; java 多学 java (学这个总没错)
    因为你要靠这个吃饭的找工作的
    况且都会也没坏处,程序员就是不断的学学学。。。

    但是如果你只是学着自己玩自己搞,那就试试新的,flutter 、kotlin ,甚至 RN 都可以。就如你标题写在,喜欢什么学什么。
    superchijinpeng
        73
    superchijinpeng  
       2022-06-28 11:12:02 +08:00
    kt
    Vaspike
        74
    Vaspike  
       2022-06-28 13:12:09 +08:00
    kotlin yes! Jetpack Compose yes!
    zoharSoul
        75
    zoharSoul  
       2022-06-28 13:22:09 +08:00
    首先排除 uniapp

    其次 kotlin/java 还是 flutter 都 ok
    huobazi
        76
    huobazi  
       2022-06-28 16:31:08 +08:00
    flutter 大法好!
    chrisia
        77
    chrisia  
       2022-06-28 16:40:19 +08:00
    公司项目我用的 Jetpack Compose ,有一些坑,最大的问题是第三方库都是基于 View ,有时候调用 View 会有 bug 。建议 xml + compose ,在 view 视图中嵌套 compose ,应该是最佳方案。以后趋势的话肯定是 Jetpack Compose 了。
    chrisia
        78
    chrisia  
       2022-06-28 16:41:25 +08:00
    我只能用两个字来形容 Jetpack Compose ,“优雅”
    neochen13
        79
    neochen13  
       2022-06-28 17:04:58 +08:00
    @chrisia 褒义还是贬义??
    chrisia
        80
    chrisia  
       2022-06-28 17:07:41 +08:00
    @neochen13 褒义啊,比 xml 那套好多了吧
    HAYWAEL
        81
    HAYWAEL  
       2022-06-28 17:55:14 +08:00
    我最近刚开发了一个 APP 。不知道怎么想的用的 Taro 。 其实就是 RN ,一路踩坑过去的
    buxudashi
        82
    buxudashi  
    OP
       2022-06-28 17:56:46 +08:00
    @HAYWAEL 兄弟你怎么想的?要学也要学原生啊。java 多好。不过我不太喜欢 java ,所以才想着选个别的。
    zerofancy
        83
    zerofancy  
       2022-06-28 18:40:23 +08:00
    @buxudashi 原生开发还是离不开 java 。虽然你自己写的代码可以完全用 Kotlin ,但总需要 debug ,研究系统组件源码,而安卓的 framework 目前整个都是 java 。
    neutrino
        84
    neutrino  
       2022-06-28 18:42:36 +08:00 via Android
    uniapp 的 IDE 很不错
    zerofancy
        85
    zerofancy  
       2022-06-28 18:43:33 +08:00
    有朋友说的 Compose ,只能说,目前还是不太敢用。首先 minSdk 要求 21 ,有低版本兼容的就不行。其次自己折腾时确实遇到一些 bug ,比如 MIUI 上启动白屏,只有点一下才触发重组。去年就有人向小米反馈,但至今没有解决。
    xiaoriri666
        86
    xiaoriri666  
       2022-06-28 20:05:56 +08:00
    uniapp
    seliote
        87
    seliote  
       2022-06-28 21:45:06 +08:00   ❤️ 1
    毫无疑问 Flutter ,已经上线了几个应用,涉及到的一些特殊需求例如音视频通话或者其他的,Flutter 不要太方便,而且同时支持 Web Win Mac Linux ,有什么理由不用
    exploreexe
        88
    exploreexe  
       2022-06-29 00:30:04 +08:00   ❤️ 1
    讲个笑话:开发原生 APP 用 uniapp ,哈哈哈

    没用 uniapp 开发过原生的可以试一下,按个酸爽,谁用谁知道。遇到问题,只能翻官方论坛,几年前的问题至今没解决,嗯,uniapp👍🏻👍🏻👍🏻
    keymao
        89
    keymao  
       2022-06-29 09:33:07 +08:00
    dcloud 目前纯粹是个无情的广告推广机器了。uniapp 目前真的不太推荐使用, 如果实在没时间学原生,推荐先用 react native 搞一下,成熟商用项目多,资料多,出现问题能找到方案。

    flutter 目前是不推荐用的,虽然 dart 可能不是很难,但是要花时间去了解的。 最后的最后才是原生, 原生的话 ui 没要求可以考虑 ,有要求的话就很难受了。
    xz410236056
        90
    xz410236056  
       2022-06-29 10:08:11 +08:00
    @buxudashi #2 flutter 只有不做这行的人再吹。。只有 UI 层能共用代码,而且代价是一套风格,你要符合各个平台的风格你要写两套 UI ,底层功能需要具体平台以插件形式提供。反正我不喜欢
    xz410236056
        91
    xz410236056  
       2022-06-29 10:10:38 +08:00
    @seakingii #31 xamarin 还有人用吗
    xz410236056
        92
    xz410236056  
       2022-06-29 10:13:00 +08:00
    @seliote #87 丑。在 iOS/mac 平台用 Material widgets 风格那 app 还能看吗。要用 Cupertino 你就得写两套 UI
    lisongeee
        93
    lisongeee  
       2022-06-29 10:34:49 +08:00   ❤️ 1
    @zerofancy #85

    那个问题需要用协程延迟渲染解决,lifescope.lauch{dealy(50);setContent{}}

    不过 miui 确实在某些地方垃圾,比如无线调试,我在下拉通知栏里长按无线调试的图标,之前是能够直接跳转无线调试的界面,现在直接闪退了,还有无线调试配对的设备,那个实际上是存在有效时间的,过了时间配对设备就被自动删除了,我不知道这是 android12 的问题还是 miui 的问题
    hb1988
        94
    hb1988  
       2022-06-29 10:38:29 +08:00
    我再推荐一个 ionic
    seakingii
        95
    seakingii  
       2022-06-29 11:50:51 +08:00
    @xz410236056 国内基本没有,国外还有一些.MAUI 是 xamarin 将来的替代品,如果 MAUI 做得够好,应该会占有一小点市场.
    cdxjcl123
        96
    cdxjcl123  
       2022-06-29 16:48:12 +08:00
    @zerofancy 确实,我之前初学的时候遇到过这个问题,找不到解决方案,很崩溃
    yuhuazhu
        97
    yuhuazhu  
       2022-06-30 14:39:05 +08:00   ❤️ 1
    java+kotlin ,两个都要
    java 当作饭,kotlin 当作菜,光吃饭饿不死,有菜会更香
    HAYWAEL
        98
    HAYWAEL  
       2022-06-30 14:43:27 +08:00
    @buxudashi 因为我本来就是前端。这些哪个顺手就拿起来用了。 本来在我这就三个选项。uniApp RN flutter 。uni 用过,上线过应用,感觉一般,不喜欢 。Flutter 之前封装 webview 没处理好,Dart 写起来挺烦的,后来也不太想接触。RN 没用过 所以这次就试一试
    buxudashi
        99
    buxudashi  
    OP
       2022-06-30 15:04:08 +08:00
    @HAYWAEL
    @yuhuazhu 相对于 java,kotlin ,我倒更想试试 flutter 。
    seliote
        100
    seliote  
       2022-07-05 22:11:32 +08:00
    @xz410236056 哈哈哈哈,用过的表示真香,人和人不一样吧,问题要对比来看
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5153 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 09:28 · PVG 17:28 · LAX 01:28 · JFK 04:28
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.