发现 MIUI13 对于 Compose 的 Navigation 支持有个致命问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
equationl
V2EX    Android

发现 MIUI13 对于 Compose 的 Navigation 支持有个致命问题

  •  
  •   equationl 2022-05-09 16:38:43 +08:00 13112 次点击
    这是一个创建于 1254 天前的主题,其中的信息可能已经有所发展或是发生改变。

    原本以为是我的程序有问题,谷歌了一下,发现了这条 IssueTracker:

    https://issuetracker.googl.com/issues/227926002

    看来并不是个例,而且看这个意思,谷歌认为不是 Navigation 的问题而是 MIUI 的问题?

    然后我屁颠屁颠的跑去小米的开发者平台,找到了 MIUI 的反馈邮箱,发邮件过去反馈,结果被拒收了...

    这给我整不会了,还好在邮箱下面还有一个社区反馈的渠道,点进去却被重定向到了小米的圈子,一看这个圈子内容就不像是适合反馈这个问题的地方,但是我还是试着发了条帖子,果然石沉大海了...

    帖子如下: https://s.xiaomi.cn/c/6uwjiEH2?channel=Share

    所以像这种问题要去哪儿反馈?

    25 条回复    2022-06-07 14:50:28 +08:00
    windyboy
        1
    windyboy  
       2022-05-09 17:17:04 +08:00
    说明像你一样的小米用户,已经忽略不计了
    clf
        2
    clf  
       2022-05-09 17:28:02 +08:00
    @windyboy 其实是主流 App 都没用 Jetpack Compose ?(个人开发者的 App 倒是有不少用了的)
    clf
        3
    clf  
       2022-05-09 17:31:41 +08:00
    BUG 反馈可以去 小米社区-开发组-反馈中心

    但我不确定会不会处理这个 issue ?(小米的反馈目前偏向平民化反馈?感觉开发者反馈的渠道比较少,给用户的那种截个图反馈的比较多)
    zpxshl
        4
    zpxshl  
       2022-05-09 17:44:30 +08:00   1
    小米哪来的个人开发者反馈。 压根没人理你。 这家公司傲慢得很。
    大公司倒是有专门去渠道可以跟小米对接,反馈问题。
    equationl
        5
    equationl  
    OP
       2022-05-09 17:47:33 +08:00 via Android
    @clf
    @zpxshl
    get√,明白了,虽然但是...这和是不是个人开发者没太大关系吧,难道企业开发者或者大厂就不用 compose 了...
    zpxshl
        6
    zpxshl  
       2022-05-09 18:10:20 +08:00
    @equationl 那你就等大企业的人发现问题反馈了小米修了呗。 我之前就是这样等的。。。找的其他渠道根本就没人理,一个问题小米论坛一堆反馈了也没人理。
    equationl
        7
    equationl  
    OP
       2022-05-09 18:33:26 +08:00 via Android
    @zpxshl 这也确实是,除了等也没办法了
    lisongeee
        8
    lisongeee  
       2022-05-09 20:44:59 +08:00
    我在 IssueTracker 评论了一条解决方案,你可以试试
    mxalbert1996
        9
    mxalbert1996  
       2022-05-09 22:17:11 +08:00 via Android
    我自己写的纯 Compose 应用,也用了 Navigation ,在 MIUI 12/13 下都没有问题。
    如果能稳定复现的话你调试一下应该不难找到问题在哪吧?
    mxalbert1996
        10
    mxalbert1996  
       2022-05-09 22:18:23 +08:00 via Android
    @clf 国内主流而已,国外主流应用很多都开始用 Compose 了,包括 Twitter 这个体量的
    loshine1992
        11
    loshine1992  
       2022-05-09 22:27:28 +08:00
    @lisongeee

    根据你的方法我测试了一下 ,在 MainActivity 层级添加一个 MainFragment

    然后把 Compose 放在 Fragment 里也可以解决这个问题。
    loshine1992
        12
    loshine1992  
       2022-05-09 22:32:41 +08:00
    同理用协程延迟执行也可以解决,原理不明。

    lifecycleScope.launch {
    delay(100)
    setContent {
    }
    }
    equationl
        13
    equationl  
    OP
       2022-05-09 23:06:01 +08:00 via Android
    @mxalbert1996 确实是稳定复现,我也试过找问题,但是找不到啊,日志输出没有发现任何问题。
    打断点发现只执行到了 NavHost 就停止了,正常来说应该是要执行指定的默认路由的 composable
    equationl
        14
    equationl  
    OP
       2022-05-09 23:07:34 +08:00 via Android
    @lisongeee
    @loshine1992

    感谢两位老哥,我试试
    clf
        15
    clf  
       2022-05-10 11:21:41 +08:00
    @mxalbert1996 了解(国内确实跟进会更慢)
    equationl
        16
    equationl  
    OP
       2022-05-11 18:45:44 +08:00
    @mxalbert1996 老哥,能看一下你的安卓补丁版本和 MIUI 详细版本嘛?今天有小米工程师找我了,但是他说他怎么也重现不了,我怀疑人生了都。

    我用我朋友的手机试了一下,他也重现不了,但是他的版本好比我高。

    虽然都是 android12 ,但是他的安卓补丁是 3 月的,我的是 2 月的。
    mxalbert1996
        17
    mxalbert1996  
       2022-05-12 00:31:07 +08:00 via Android
    我这里是 Android 11 ,MIUI 13.0.8 。
    https://play.google.com/store/apps/details?id=app.tivi
    你试试装下这个应用?这个应用也是用的 Compose+Navigation Component ,你看能复现么?
    equationl
        18
    equationl  
    OP
       2022-05-12 09:46:51 +08:00
    @mxalbert1996
    ![78705e67e0ce0558aeb0da789e2ff7e.jpg]( https://s2.loli.net/2022/05/12/3bFSXKyfga7A4Un.jpg)

    怪了,13.0.8 我统计出来是能够复现的啊
    fromzero
        19
    fromzero  
       2022-05-12 10:48:52 +08:00
    @mxalbert1996 twitter 也只是在不紧要的 三级页面用了 compose 。什么时候有大型 App 敢把首页重构成 Compose 代表这个东西成熟了
    mxalbert1996
        20
    mxalbert1996  
       2022-05-12 12:44:35 +08:00 via Android
    @fromzero 我看着好像也没人说这个东西成熟了?只是 production-ready 而已。
    zii4914
        21
    zii4914  
       2022-05-13 12:28:38 +08:00
    手机里面有 BUG 反馈,或许会在开发内部建立工单处理。
    小米官网有客服,可以找客服说下。

    我用了多年小米,你说的反馈不了我也震惊。我知道小米越来越拉胯,没想到直接拉成劈叉。我前两个月换了阵营了,感觉比小米好多了,小米的 UI 系统从头部负优化到尾部,也是 6 。
    equationl
        22
    equationl  
    OP
       2022-05-13 13:10:46 +08:00
    @zii4914 不知道与我发了这个帖子有没有关系,后来有小米的工程师联系我了。

    其实我指的反馈不了是指没有合适的反馈渠道。

    手机里面的 BUG 反馈是针对一般用户而非开发者的,我找了一圈分类,没找到适合我这个问题的分类。

    而小米的开发者平台给的反馈渠道却又行不通,给了个邮箱已经弃用了,发不了邮件,又给了个反馈社区,却被重定向到了我上面说的这个针对一般用户的反馈社区。
    Meka
        23
    Meka  
       2022-05-29 19:30:35 +08:00
    Redmi K40 MIUI13.0.3 稳定版,我用这个 navigation 还挺正常的
    lisongeee
        24
    lisongeee  
       2022-06-07 14:11:52 +08:00
    ```kt
    val anim = remember { Animatable(UseHook.screenWidth/2, Int.VectorConverter) }
    LaunchedEffect(Unit) {
    log('此处确实输出了')
    anim.animateTo(
    0,
    TweenSpec(easing = FastOutSlowInEasing, duratiOnMillis= 300)
    )
    }
    ```
    我启动 app 的时候执行这个,动画并不会执行,需要用手触摸一下才会执行
    按照上面那个老哥说的
    lifecycleScope.launch {
    delay(100)
    setContent {
    }
    }
    之后才会播放动画
    Navigation 也有一个默认的渐变动画,我怀疑是动画的问题
    equationl
        25
    equationl  
    OP
       2022-06-07 14:50:28 +08:00
    @lisongeee 后来小米工程师联系我了,具体原因他们没有告诉我,但是说已经找到原因并且修复了,就是不知道什么时候能发布更新,也许已经后台静默更新了。

    反正我手机没有更新过系统,但是再也无法重现这个问题了。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2516 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 15:32 PVG 23:32 LAX 08:32 JFK 11:32
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86