|
5 | 5 | import android.os.Handler; |
6 | 6 | import android.support.annotation.NonNull; |
7 | 7 | import android.text.TextUtils; |
| 8 | +import android.widget.Toast; |
8 | 9 |
|
9 | 10 | import com.facebook.react.bridge.Arguments; |
10 | 11 | import com.facebook.react.bridge.WritableMap; |
| 12 | +import com.facebook.react.common.MapBuilder; |
| 13 | +import com.netease.im.IMApplication; |
11 | 14 | import com.netease.im.MessageConstant; |
12 | 15 | import com.netease.im.MessageUtil; |
13 | 16 | import com.netease.im.ReactCache; |
@@ -558,6 +561,9 @@ public void startSession(Handler handler, String sessionId, String type) { |
558 | 561 | this.handler = handler; |
559 | 562 | this.sessionId = sessionId; |
560 | 563 |
|
| 564 | + if (NIMClient.getStatus().wontAutoLogin()) { |
| 565 | + Toast.makeText(IMApplication.getContext(), "您的帐号已在别的设备登录,请重新登陆", Toast.LENGTH_SHORT).show(); |
| 566 | + } |
561 | 567 | sessionTypeEnum = SessionUtil.getSessionType(type); |
562 | 568 |
|
563 | 569 | if (sessionTypeEnum == SessionTypeEnum.P2P) { |
@@ -609,6 +615,12 @@ public void resendMessage(String messageId) { |
609 | 615 | queryMessage(messageId, new OnMessageQueryListener() { |
610 | 616 | @Override |
611 | 617 | public int onResult(int code, IMMessage message) { |
| 618 | + Map<String, Object> map = message.getLocalExtension(); |
| 619 | + if (map != null) { |
| 620 | + if (map.containsKey("resend")) { |
| 621 | + return -1; |
| 622 | + } |
| 623 | + } |
612 | 624 | IMMessage item = message; |
613 | 625 | item.setStatus(MsgStatusEnum.sending); |
614 | 626 | deleteItem(item, true); |
@@ -888,6 +900,10 @@ public void onSuccess(Void aVoid) { |
888 | 900 | public void onFailed(int code) { |
889 | 901 | LogUtil.w(TAG, "code:" + code); |
890 | 902 | if (code == ResponseCode.RES_IN_BLACK_LIST) { |
| 903 | + Map<String, Object> map = MapBuilder.newHashMap(); |
| 904 | + map.put("resend", false); |
| 905 | + message.setLocalExtension(map); |
| 906 | + getMsgService().updateIMMessage(message); |
891 | 907 | sendTipMessage("消息已发出,但被对方拒收了。", null, true, false); |
892 | 908 | } |
893 | 909 | } |
|
0 commit comments