线上问题修复

This commit is contained in:
huangjian
2023-03-01 23:50:16 +08:00
parent d30069aa68
commit 3ba2b0d93d
4 changed files with 25 additions and 0 deletions

View File

@@ -25,6 +25,7 @@ import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentTransaction; import androidx.fragment.app.FragmentTransaction;
import androidx.lifecycle.ViewModelProvider; import androidx.lifecycle.ViewModelProvider;
import com.mango.core.utils.SystemUidUtil;
import com.mango.moshen.home.fragment.PmModeFragment; import com.mango.moshen.home.fragment.PmModeFragment;
import com.mango.moshen.ui.im.recent.RecentListFragment; import com.mango.moshen.ui.im.recent.RecentListFragment;
import com.mango.moshen.ui.patriarch.PmModeChangeEvent; import com.mango.moshen.ui.patriarch.PmModeChangeEvent;
@@ -132,6 +133,7 @@ import org.jetbrains.annotations.NotNull;
import java.lang.ref.WeakReference; import java.lang.ref.WeakReference;
import java.util.List; import java.util.List;
import java.util.Objects;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import io.reactivex.Observable; import io.reactivex.Observable;
@@ -525,6 +527,7 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
public void onReceiveRecentContactChanged(List<RecentContact> imMessages) { public void onReceiveRecentContactChanged(List<RecentContact> imMessages) {
int countIgnore = 0; int countIgnore = 0;
String subscriptionUid = SystemUidUtil.getSubscriptionUid();
for (RecentContact recentContact : imMessages) { for (RecentContact recentContact : imMessages) {
if (recentContact.getSessionType() == SessionTypeEnum.Team) { if (recentContact.getSessionType() == SessionTypeEnum.Team) {
@@ -535,6 +538,10 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
} }
if (Objects.equals(subscriptionUid, recentContact.getContactId())) {
countIgnore += recentContact.getUnreadCount();
}
} }
int unreadCount = IMMessageManager.get().queryUnreadMsg() + countIgnore; int unreadCount = IMMessageManager.get().queryUnreadMsg() + countIgnore;
mMainTabLayout.setMsgNum(unreadCount); mMainTabLayout.setMsgNum(unreadCount);

View File

@@ -382,6 +382,7 @@ public class InputPanel implements IEmoticonSelectedListener, IAudioRecordCallba
.addContentScrollMeasurer(new ContentScrollMeasurer() { .addContentScrollMeasurer(new ContentScrollMeasurer() {
@Override @Override
public int getScrollDistance(int defaultDistance) { public int getScrollDistance(int defaultDistance) {
if (inRoom) return 0;
return defaultDistance - getUnfilledHeight(); return defaultDistance - getUnfilledHeight();
} }

View File

@@ -104,6 +104,8 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:includeFontPadding="false" android:includeFontPadding="false"
android:textColor="@color/white" android:textColor="@color/white"
android:lines="1"
android:maxLength="10"
android:textSize="10sp" android:textSize="10sp"
tools:text="用户昵称" /> tools:text="用户昵称" />

View File

@@ -5,6 +5,9 @@ import com.mango.core.initial.InitialModel;
import com.mango.core.initial.bean.InitInfo; import com.mango.core.initial.bean.InitInfo;
import com.mango.xchat_android_constants.XChatConstants; import com.mango.xchat_android_constants.XChatConstants;
import com.mango.xchat_android_library.utils.ListUtils; import com.mango.xchat_android_library.utils.ListUtils;
import com.netease.nimlib.sdk.NIMClient;
import com.netease.nimlib.sdk.msg.MsgService;
import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
public class SystemUidUtil { public class SystemUidUtil {
@@ -25,4 +28,16 @@ public class SystemUidUtil {
} }
return false; return false;
} }
public static String getSubscriptionUid() {
InitInfo initInfo = InitialModel.get().getCacheInitInfo();
if (initInfo != null &&
!ListUtils.isListEmpty(initInfo.getOfficialMsgUids()) &&
initInfo.getOfficialMsgUids().size() == 3) {
return initInfo.getOfficialMsgUids().get(2);
}
return "";
}
} }