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

2022-05-09 16:38:43 +08:00
 equationl

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

怪了,13.0.8 我统计出来是能够复现的啊
fromzero
2022-05-12 10:48:52 +08:00
@mxalbert1996 twitter 也只是在不紧要的 三级页面用了 compose 。什么时候有大型 App 敢把首页重构成 Compose 代表这个东西成熟了
mxalbert1996
2022-05-12 12:44:35 +08:00
@fromzero 我看着好像也没人说这个东西成熟了?只是 production-ready 而已。

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

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

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

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

© 2021 V2EX