Skip to content

Commit b5755b2

Browse files
committed
修复在跳转到微信授权页完成后无法显示自定义样式 Toast 的问题
1 parent 850c2c8 commit b5755b2

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

library/src/main/java/com/hjq/toast/ActivityStack.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,17 @@ public void onActivityStarted(Activity activity) {
7373
public void onActivityResumed(Activity activity) {
7474
mVisibleActivity = activity;
7575
mActivityResumedTime = System.currentTimeMillis();
76+
// 这里解释一下为什么要在 Resumed 时给 FocusActivity 对象赋值?
77+
// 这是因为有人反馈在跳转到新的 Activity 后又立马销毁的情况下,无法显示自定义样式的 Toast,
78+
// 经过排查发现,在这个过程 Activity 会回调 Paused 生命周期,然后直接回调 Resumed 生命周期,
79+
// 这样就会导致 Started 生命周期没有被回调,这样就导致 FocusActivity 对象会为 null,
80+
// 为了处理这种情况,最好的方式就是在 Resumed 生命周期中再检查一下 FocusActivity 对象是否为空,
81+
// 如果 FocusActivity 对象为空,则直接赋值为 Resumed 生命周期时的 Activity 对象。
82+
// Github 地址:https://github.com/getActivity/Toaster/issues/157
83+
if (mFocusActivity != null) {
84+
return;
85+
}
86+
mFocusActivity = activity;
7687
}
7788

7889
@Override

0 commit comments

Comments
 (0)