美文网首页
Android10版本android:windowIsTrans

Android10版本android:windowIsTrans

作者: 漠东野狼 | 来源:发表于2019-12-12 16:10 被阅读0次

    在Android开发中,设置Activity跳转的出入场动画时,为了解决跳转闪黑屏问题,总会增加android:windowIsTranslucent=true属性,但目前这个属性在Android10上存在以下问题。

    一、问题背景:
    在Android10中,假定三个Activity:A、B、C,B设置android:windowIsTranslucent=true,在A的onResume中finish掉B和C

    二、问题现象:
    从A->B->C返回键到B 再B->C,会直接回到A

    三、问题原因:
    在第二次进入C之后,会回调A的onResume

    四、排查过程:
    1.查看日志,并未发现有崩溃,看到有onDestroy的打印,且有activity正常切换出场动画,认为是正常finish,排除crash
    2.查看activity C代码的逻辑,发现并未有主动finish的情况
    3.排查代码中启动activity A的情况,加断点调试,并没有主动去打开activity A,但发现会进入到activity A的onResume回调
    4.排查版本,发现是由某一版本引发,查看代码提交记录,排查提交内容,在删除掉android:windowIsTranslucent=true后,问题消失,初步确认是由该属性引起。
    5.自己写demo验证,再次确认是由此问题引起
    6.确认多个厂商的手机,基本可以确认为Android10的共性问题

    五、问题解决:
    1.规避:去掉android:windowIsTranslucent=true属性,优化动画

    六、问题根因:
    目前没有排查Android10在这个版本上更改了什么内容,待后续补充或者有其他了解的同学请留言

    相关文章

      网友评论

          本文标题:Android10版本android:windowIsTrans

          本文链接:https://www.haomeiwen.com/subject/fjstnctx.html