update
This commit is contained in:
@@ -0,0 +1,94 @@
|
||||
package com.shayu.onetoone.activity;
|
||||
|
||||
import android.os.Bundle;
|
||||
import android.view.View;
|
||||
import android.widget.Button;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.makeramen.roundedimageview.RoundedImageView;
|
||||
import com.shayu.onetoone.R;
|
||||
import com.shayu.onetoone.activity.AbsOTOActivity;
|
||||
import com.shayu.onetoone.bean.FollowBean;
|
||||
import com.shayu.onetoone.bean.UserBean;
|
||||
import com.shayu.onetoone.listener.OnDialogClickListener;
|
||||
import com.shayu.onetoone.manager.OTONetManager;
|
||||
import com.shayu.onetoone.manager.RouteManager;
|
||||
import com.yunbao.common.glide.ImgLoader;
|
||||
import com.yunbao.common.http.base.HttpCallback;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.utils.WordUtil;
|
||||
|
||||
@Route(path = RouteManager.ACTIVITY_END_CALL)
|
||||
public class EndCallActivity extends AbsOTOActivity {
|
||||
private RoundedImageView avatar;
|
||||
private TextView titleView;
|
||||
private TextView usernameView;
|
||||
private Button followButton;
|
||||
private Button callTimerButton;
|
||||
private Button cancelButton;
|
||||
private Button applyButton;
|
||||
private UserBean user;
|
||||
private String timer;
|
||||
|
||||
|
||||
@Override
|
||||
protected int getLayoutId() {
|
||||
return R.layout.dialog_end_call;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void main(Bundle savedInstanceState) {
|
||||
titleView = findViewById(R.id.title);
|
||||
usernameView = findViewById(R.id.username);
|
||||
followButton = findViewById(R.id.follow);
|
||||
callTimerButton = findViewById(R.id.call_timer);
|
||||
cancelButton = findViewById(R.id.cancel);
|
||||
applyButton = findViewById(R.id.apply);
|
||||
avatar = findViewById(R.id.avatar);
|
||||
|
||||
Bundle extras = getIntent().getExtras();
|
||||
|
||||
user = JSONObject.parseObject(extras.getString("user"), UserBean.class);
|
||||
timer = extras.getString("time");
|
||||
if (user == null || timer == null) {
|
||||
finish();
|
||||
return;
|
||||
}
|
||||
ImgLoader.display(mContext, user.getUser().getAvatar(), avatar);
|
||||
ImgLoader.displayBlur(mContext, user.getUser().getAvatar(), findViewById(R.id.bg), 45);
|
||||
usernameView.setText(user.getUser().getUserNicename());
|
||||
callTimerButton.setText(timer);
|
||||
if (user.getUser().isFollow()) {
|
||||
followButton.setVisibility(View.INVISIBLE);
|
||||
}
|
||||
followButton.setOnClickListener(view -> {
|
||||
follow();
|
||||
});
|
||||
|
||||
cancelButton.setOnClickListener(v -> {
|
||||
RouteManager.forwardActivity(extras.getString("path"), extras);
|
||||
});
|
||||
applyButton.setOnClickListener(v -> {
|
||||
});
|
||||
findViewById(R.id.close).setOnClickListener(v -> finish());
|
||||
}
|
||||
|
||||
private void follow() {
|
||||
OTONetManager.getInstance(mContext)
|
||||
.follow(user.getUser().getId() + "", new HttpCallback<FollowBean>() {
|
||||
@Override
|
||||
public void onSuccess(FollowBean data) {
|
||||
ToastUtil.show(WordUtil.getNewString(R.string.system_tip_success));
|
||||
followButton.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(String error) {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
@@ -76,7 +76,7 @@ public class HomeSearchActivity extends AbsOTOActivity {
|
||||
|
||||
searchBtn.setOnClickListener(v -> search(edit.getText().toString()));
|
||||
|
||||
edit.setText(getIntent().getBundleExtra("bundle").getString("search"));
|
||||
edit.setText(getIntent().getExtras().getString("search"));
|
||||
search(edit.getText().toString());
|
||||
refresh();
|
||||
}
|
||||
|
||||
@@ -94,7 +94,7 @@ public class MatchingActivity extends AbsOTOActivity {
|
||||
}
|
||||
}).showDialog();
|
||||
});
|
||||
Bundle bundle = getIntent().getBundleExtra("bundle");
|
||||
Bundle bundle = getIntent().getExtras();
|
||||
if (bundle != null) {
|
||||
String data = bundle.getString("data");
|
||||
bundle.putInt("type",ChatActivity.CALL_CHAT_TYPE_MATCH);
|
||||
|
||||
@@ -25,6 +25,7 @@ import com.makeramen.roundedimageview.RoundedImageView;
|
||||
import com.shayu.onetoone.R;
|
||||
import com.shayu.onetoone.adapter.MsgChatMessageListAdapter;
|
||||
import com.shayu.onetoone.bean.FollowBean;
|
||||
import com.shayu.onetoone.bean.GiftBean;
|
||||
import com.shayu.onetoone.bean.MessageChatAuthContent;
|
||||
import com.shayu.onetoone.bean.MessageChatTipsContent;
|
||||
import com.shayu.onetoone.bean.MessageConsumeConfigBean;
|
||||
@@ -46,6 +47,7 @@ import com.yunbao.common.glide.ImgLoader;
|
||||
import com.yunbao.common.http.base.HttpCallback;
|
||||
import com.yunbao.common.interfaces.ImageResultCallback;
|
||||
import com.yunbao.common.interfaces.OnItemClickListener;
|
||||
import com.yunbao.common.manager.IMLoginManager;
|
||||
import com.yunbao.common.utils.ProcessImageUtil;
|
||||
import com.yunbao.common.utils.SpUtil;
|
||||
import com.yunbao.common.utils.StringUtil;
|
||||
@@ -197,6 +199,16 @@ public class ChatMessageFragment extends AbsConversationFragment {
|
||||
assert mVoiceToggleBtn != null;
|
||||
audio = new MsgInputPanelForAudio(targetId, getActivity(), mRongExtension);
|
||||
giftPanel = new MsgInputPanelForGift(targetId, getActivity(), mRongExtension);
|
||||
giftPanel.setOnItemClickListener(new OnItemClickListener<GiftBean>() {
|
||||
@Override
|
||||
public void onItemClick(GiftBean bean, int position) {
|
||||
if(call.getTag()!=null){
|
||||
call.setTag(null);
|
||||
call.setImageResource(R.mipmap.ic_msg_call);
|
||||
video.setImageResource(R.mipmap.ic_msg_video);
|
||||
}
|
||||
}
|
||||
});
|
||||
mVoiceToggleBtn.setOnClickListener(view -> {
|
||||
audio.show();
|
||||
});
|
||||
@@ -206,6 +218,9 @@ public class ChatMessageFragment extends AbsConversationFragment {
|
||||
});
|
||||
|
||||
video.setOnClickListener(v -> {
|
||||
if(call.getTag()!=null){
|
||||
return;
|
||||
}
|
||||
checkAuth(new OnSendMessageListener() {
|
||||
@Override
|
||||
public void onSuccess(String token, SendConsumeBean bean) {
|
||||
@@ -252,6 +267,9 @@ public class ChatMessageFragment extends AbsConversationFragment {
|
||||
});
|
||||
});
|
||||
call.setOnClickListener(v -> {
|
||||
if(call.getTag()!=null){
|
||||
return;
|
||||
}
|
||||
checkAuth(new OnSendMessageListener() {
|
||||
@Override
|
||||
public void onSuccess(String token,SendConsumeBean bean) {
|
||||
@@ -526,7 +544,11 @@ public class ChatMessageFragment extends AbsConversationFragment {
|
||||
} else {
|
||||
sex.setImageResource(R.mipmap.ic_message_tab_woman);
|
||||
}
|
||||
|
||||
System.out.println("同性別:"+data.getUser().getSex()+"|"+IMLoginManager.get(mContext).getUserInfo().getSex());
|
||||
if(data.getUser().getSex()== IMLoginManager.get(mContext).getUserInfo().getSex()){
|
||||
call.setVisibility(View.GONE);
|
||||
video.setVisibility(View.GONE);
|
||||
}
|
||||
switch (Integer.parseInt(data.getUser().getOnline())) {
|
||||
case 0:
|
||||
status.setImageResource(R.mipmap.ic_message_msg_status_online);
|
||||
@@ -540,6 +562,11 @@ public class ChatMessageFragment extends AbsConversationFragment {
|
||||
if (data.getUser().isFollow()) {
|
||||
follow.setVisibility(View.GONE);
|
||||
}
|
||||
if(data.getGiftNum()==0){
|
||||
call.setImageResource(R.mipmap.ic_msg_call_lock);
|
||||
video.setImageResource(R.mipmap.ic_msg_video_lock);
|
||||
call.setTag("true");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -66,7 +66,7 @@ public class CallAudioActivity extends AbsOTOActivity implements View.OnClickLis
|
||||
@Override
|
||||
protected void main(Bundle savedInstanceState) {
|
||||
|
||||
Bundle bundle = getIntent().getBundleExtra("bundle");
|
||||
Bundle bundle = getIntent().getExtras();
|
||||
if (bundle == null) {
|
||||
finish();
|
||||
return;
|
||||
@@ -132,11 +132,14 @@ public class CallAudioActivity extends AbsOTOActivity implements View.OnClickLis
|
||||
|
||||
}
|
||||
|
||||
UserBean userData;
|
||||
|
||||
private void initTargetData() {
|
||||
OTONetManager.getInstance(mContext)
|
||||
.getTargetUserInfo(Integer.parseInt(targetId), new HttpCallback<UserBean>() {
|
||||
@Override
|
||||
public void onSuccess(UserBean data) {
|
||||
userData = data;
|
||||
userName.setText(data.getUser().getUserNicename());
|
||||
userInfo.setText(data.getUser().getSignature());
|
||||
ImgLoader.display(mContext, data.getUser().getAvatar(), avatar);
|
||||
@@ -167,7 +170,8 @@ public class CallAudioActivity extends AbsOTOActivity implements View.OnClickLis
|
||||
.setTargetId(targetId)
|
||||
.showDialog();
|
||||
}
|
||||
private void follow(){
|
||||
|
||||
private void follow() {
|
||||
OTONetManager.getInstance(mContext)
|
||||
.follow(targetId, new HttpCallback<FollowBean>() {
|
||||
@Override
|
||||
@@ -185,7 +189,7 @@ public class CallAudioActivity extends AbsOTOActivity implements View.OnClickLis
|
||||
|
||||
private void showWindow(boolean toChatView) {
|
||||
ImageView icon = new ImageView(mContext);
|
||||
icon.setTag(getIntent().getBundleExtra("bundle"));
|
||||
icon.setTag(getIntent().getExtras());
|
||||
icon.setImageResource(io.rong.callkit.R.drawable.rc_voip_audio_answer_selector_new);
|
||||
icon.setLayoutParams(new ViewGroup.LayoutParams(DpUtil.dp2px(40), DpUtil.dp2px(40)));
|
||||
finish();
|
||||
@@ -347,7 +351,7 @@ public class CallAudioActivity extends AbsOTOActivity implements View.OnClickLis
|
||||
showGift();
|
||||
} else if (id == R.id.close) {
|
||||
showWindow(false);
|
||||
}else if(id ==R.id.follow){
|
||||
} else if (id == R.id.follow) {
|
||||
follow();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,21 +1,13 @@
|
||||
package com.shayu.onetoone.activity.message;
|
||||
|
||||
import android.graphics.Bitmap;
|
||||
import android.graphics.BitmapFactory;
|
||||
import android.graphics.Canvas;
|
||||
import android.graphics.Color;
|
||||
import android.graphics.PixelFormat;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.os.Looper;
|
||||
import android.view.Gravity;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.MotionEvent;
|
||||
import android.view.SurfaceView;
|
||||
import android.view.TextureView;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.FrameLayout;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
@@ -23,6 +15,7 @@ import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.lxj.xpopup.XPopup;
|
||||
import com.lxj.xpopup.core.BasePopupView;
|
||||
import com.lzf.easyfloat.EasyFloat;
|
||||
@@ -34,7 +27,6 @@ import com.shayu.onetoone.activity.AbsOTOActivity;
|
||||
import com.shayu.onetoone.bean.FollowBean;
|
||||
import com.shayu.onetoone.bean.UserBean;
|
||||
import com.shayu.onetoone.dialog.GiftDialog;
|
||||
import com.shayu.onetoone.dialog.MsgChatClickDialog;
|
||||
import com.shayu.onetoone.dialog.TipsTextDialog;
|
||||
import com.shayu.onetoone.listener.OnCallStatusListener;
|
||||
import com.shayu.onetoone.manager.CallClientManager;
|
||||
@@ -49,14 +41,7 @@ import com.yunbao.common.utils.StringUtil;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.utils.WordUtil;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
|
||||
import io.rong.calllib.CallUserProfile;
|
||||
import io.rong.calllib.IRongCallListener;
|
||||
import io.rong.calllib.RongCallClient;
|
||||
import io.rong.calllib.RongCallCommon;
|
||||
import io.rong.calllib.RongCallSession;
|
||||
import io.rong.calllib.StartIncomingPreviewCallback;
|
||||
|
||||
@Route(path = RouteManager.ACTIVITY_CALL_VIDEO)
|
||||
@@ -103,7 +88,7 @@ public class CallVideoActivity extends AbsOTOActivity {
|
||||
protected void main(Bundle savedInstanceState) {
|
||||
initView();
|
||||
|
||||
Bundle bundle = getIntent().getBundleExtra("bundle");
|
||||
Bundle bundle = getIntent().getExtras();
|
||||
if (bundle == null) {
|
||||
finish();
|
||||
return;
|
||||
@@ -248,7 +233,7 @@ public class CallVideoActivity extends AbsOTOActivity {
|
||||
}
|
||||
|
||||
private void showWindow(boolean toChatView) {
|
||||
CallClientManager.getManager().getRemoteVideo().setTag(getIntent().getBundleExtra("bundle"));
|
||||
CallClientManager.getManager().getRemoteVideo().setTag(getIntent().getExtras());
|
||||
myView.removeAllViews();
|
||||
targetView.removeAllViews();
|
||||
finish();
|
||||
@@ -308,12 +293,15 @@ public class CallVideoActivity extends AbsOTOActivity {
|
||||
}
|
||||
}
|
||||
|
||||
UserBean userData;
|
||||
|
||||
private void initTargetData() {
|
||||
OTONetManager.getInstance(mContext)
|
||||
.getTargetUserInfo(Integer.parseInt(targetId), new HttpCallback<UserBean>() {
|
||||
@Override
|
||||
public void onSuccess(UserBean data) {
|
||||
ImgLoader.display(mContext, data.getUser().getAvatar(), avatar);
|
||||
userData = data;
|
||||
if (data.getUser().isFollow()) {
|
||||
follow.setVisibility(View.GONE);
|
||||
} else {
|
||||
@@ -404,6 +392,14 @@ public class CallVideoActivity extends AbsOTOActivity {
|
||||
|
||||
@Override
|
||||
public void onCallEnd() {
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putString("model", CallClientManager.VIDEO_CALL);
|
||||
bundle.putString("targetId", targetId);
|
||||
bundle.putString("callId", targetId);
|
||||
bundle.putString("user", JSONObject.toJSONString(userData));
|
||||
bundle.putString("time", callTime.getText().toString());
|
||||
bundle.putString("path", RouteManager.ACTIVITY_CALL_VIDEO);
|
||||
RouteManager.forwardActivity(RouteManager.ACTIVITY_END_CALL, bundle);
|
||||
finish();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user