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

现在 Android 客户端开发技术栈的最佳实践是什么?

  •  
  •   hfl1995 · 339 天前 · 5511 次点击
    这是一个创建于 339 天前的主题,其中的信息可能已经有所发展或是发生改变。
    如题,有没有版本答案 T0 阵容?
    22 条回复    2023-04-29 17:45:33 +08:00
    hui9000
        1
    hui9000  
       339 天前
    等一个大哥
    kalixi
        2
    kalixi  
       339 天前
    act 一把梭
    azhangbing
        3
    azhangbing  
       339 天前   ❤️ 2
    列一下我们的架构

    组件化+模块化( ARouter +
    网络请求 Kotlin+协程+Flow+Retrofit
    Jetpack+MVVM 架构
    ROOM
    ViewBinding&DataBinding
    热更 tinker
    插件化 shadow
    日志组件 mars 里的 xlog
    sp MMKV
    webview 腾讯 X5 内核
    lxiian
        4
    lxiian  
       339 天前 via iPhone
    @azhangbing 跟我差不多 基本就这些
    alleluya
        5
    alleluya  
       339 天前
    @azhangbing 为啥 webview 不用原生的 仅仅是因为方便 不用自己封装太多的东西么? 这种定制 webview chromium 的版本都比较低吧 感觉对前端挺不友好的 有时候还得要做兼容
    liveoppo
        6
    liveoppo  
       339 天前
    Compose 应该是最大跨度的飞跃,写界面简单太多了,比如列表之类
    也直接淘汰了很多老技术,什么 adaptor 、data binding 都不用了
    另外引入了 React 的 prop 、state 概念,开发思路大变
    fresco
        7
    fresco  
       339 天前 via Android
    compose mvvm 可以去 github 看看 mvmm 最佳实践项目参考一下
    AprilBob
        8
    AprilBob  
       339 天前
    compose 怎么学比较好
    Nuttertoo1s
        9
    Nuttertoo1s  
       339 天前
    @azhangbing 腾讯 X5 内核以前用过一段时间,你们是怎么处理的第一次安装启动默认使用系统内核的问题
    azhangbing
        10
    azhangbing  
       339 天前
    @Nuttertoo1s PreInitCallback 的 onViewInitFinished 中监听 X5 初始化完成再加载
    azhangbing
        11
    azhangbing  
       339 天前
    @alleluya 我们最低 SDK 还要兼容 Android 4.4 ,对于高版本的机型如果没有一定要用 X5 的需求,可以做版本判断,直接使用系统内核
    v999ex
        12
    v999ex  
       339 天前
    Flutter ,未来直接兼容 Fuchsia
    alleluya
        13
    alleluya  
       339 天前
    @azhangbing 噢噢 了解 不过现在还要兼容 4.4 么? 客户端需要这么低的版本兼容? 前两天我看不是说微信都提升兼容的最低版本号了么
    whyrookie
        14
    whyrookie  
       339 天前
    @azhangbing #11 有尝试使用过 GeckoView 吗?
    retrocode
        15
    retrocode  
       339 天前
    那我就后排求个脚手架学习学习了
    owen800q
        16
    owen800q  
       339 天前
    我司 2021 开始的项目都是 react native webview + vant

    体验上比原生还丝滑
    tramm
        17
    tramm  
       338 天前
    @retrocode #15 我也蹲一个
    conglovely
        18
    conglovely  
       338 天前
    @retrocode #15 我也蹲一个
    azhangbing
        19
    azhangbing  
       338 天前
    compose 的概念非常好 我也尝试过做小东西,包括项目里我也会用 DSL + 百分比布局来实现一些 view 写法和思想上是类似的,但是当前列表优化的还不是很好 渲染的时间比 recycleview 高很多

    跨平台的 ios 已经 beta 版了 可以做点小东西玩一下 距离到商业 APP 还有些距离
    deng81416754
        20
    deng81416754  
       337 天前
    @alleluya 因为用户手机的内核参差不齐 ,如果前端使用较新的架构,如 vue3 可能会有 js 兼容问题,如果使用 x5 只需要适配 x5 所使用的版本即可,这都是实际开发中所遇到的
    mundane
        21
    mundane  
       336 天前
    @retrocode 我也蹲
    fromzero
        22
    fromzero  
       335 天前
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2709 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 15:08 · PVG 23:08 · LAX 08:08 · JFK 11:08
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.