diff --git a/app/src/main/java/com/shunzhi/parent/manager/MessageManager.java b/app/src/main/java/com/shunzhi/parent/manager/MessageManager.java index e39e1de..7550404 100644 --- a/app/src/main/java/com/shunzhi/parent/manager/MessageManager.java +++ b/app/src/main/java/com/shunzhi/parent/manager/MessageManager.java @@ -1,13 +1,16 @@ package com.shunzhi.parent.manager; import android.content.Context; +import android.content.Intent; import android.content.SharedPreferences; import android.support.annotation.NonNull; import com.netease.nimlib.sdk.NIMClient; import com.netease.nimlib.sdk.Observer; import com.netease.nimlib.sdk.RequestCallback; +import com.netease.nimlib.sdk.StatusCode; import com.netease.nimlib.sdk.auth.AuthService; +import com.netease.nimlib.sdk.auth.AuthServiceObserver; import com.netease.nimlib.sdk.auth.LoginInfo; import com.netease.nimlib.sdk.msg.MsgServiceObserve; import com.netease.nimlib.sdk.msg.model.CustomNotification; @@ -15,6 +18,7 @@ import com.netease.nimlib.sdk.msg.model.IMMessage; import com.share.mvpsdk.utils.ToastUtils; import com.shunzhi.parent.AppContext; import com.shunzhi.parent.bean.NIMLoginResultBean; +import com.shunzhi.parent.ui.activity.LoginAndRegistActivity; import java.util.List; @@ -53,6 +57,15 @@ public class MessageManager { private MessageManager() { NIMClient.getService(MsgServiceObserve.class).observeReceiveMessage(messageObserver, true); NIMClient.getService(MsgServiceObserve.class).observeCustomNotification(customNotificationObserver, true); + NIMClient.getService(AuthServiceObserver.class).observeOnlineStatus(new Observer() { + @Override + public void onEvent(StatusCode statusCode) { + if (statusCode==StatusCode.KICKOUT){ + Intent i = new Intent(AppContext.getInstance(), LoginAndRegistActivity.class); + i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK); + } + } + },true); } -- libgit2 0.21.0