私聊页面添加直播飞机票

This commit is contained in:
18401019693
2022-09-06 14:35:46 +08:00
parent ff6fb98a8e
commit cb50c00a06
25 changed files with 846 additions and 39 deletions

View File

@@ -23,24 +23,16 @@ import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi;
import androidx.viewpager.widget.ViewPager;
import com.adjust.sdk.Adjust;
import com.adjust.sdk.AdjustEvent;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.android.billingclient.api.BillingResult;
import com.android.billingclient.api.Purchase;
import com.android.billingclient.api.PurchaseHistoryRecord;
import com.android.billingclient.api.PurchaseHistoryResponseListener;
import com.android.billingclient.api.SkuDetails;
import com.facebook.appevents.AppEventsConstants;
import com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.Task;
import com.google.firebase.messaging.FirebaseMessaging;
@@ -53,7 +45,6 @@ import com.tencent.imsdk.v2.V2TIMSDKConfig;
import com.tencent.imsdk.v2.V2TIMSDKListener;
import com.tencent.imsdk.v2.V2TIMUserFullInfo;
import com.yunbao.common.CommonAppConfig;
import com.yunbao.common.CommonAppContext;
import com.yunbao.common.Constants;
import com.yunbao.common.activity.AbsActivity;
import com.yunbao.common.activity.WebViewActivity;
@@ -140,17 +131,12 @@ import io.reactivex.disposables.Disposable;
import io.rong.imkit.config.RongConfigCenter;
import io.rong.imkit.notification.NotificationConfig;
import io.rong.imlib.RongIMClient;
import kotlin.Unit;
import static com.yunbao.common.CommonAppContext.isReady;
import static com.yunbao.common.CommonAppContext.logger;
import static com.yunbao.common.CommonAppContext.mFirebaseAnalytics;
import static com.yunbao.live.activity.SystemMessageActivity.type;
import io.rong.imlib.model.Message;
import io.rong.push.PushManager;
import io.rong.push.PushType;
import kotlin.*;
import kotlin.Unit;
import static com.yunbao.common.CommonAppContext.isReady;
@Route(path = RouteUtil.PATH_MAIN)
public class MainActivity extends AbsActivity implements MainAppBarLayoutListener {
@@ -242,9 +228,9 @@ public class MainActivity extends AbsActivity implements MainAppBarLayoutListene
@Override
public boolean onRecheck(@NonNull String skuType, @NonNull Purchase purchase, boolean isSelf) {
Log.e(TAG,purchase.getSku()+"s"+purchase.getOrderId()+"sds"+purchase.getPurchaseToken());
Log.e(TAG, purchase.getSku() + "s" + purchase.getOrderId() + "sds" + purchase.getPurchaseToken());
//谷歌掉单处理
CommonHttpUtil.Google_sec_pay(purchase.getPurchaseToken(),purchase.getOrderId(),purchase.getSku(),new HttpCallback() {
CommonHttpUtil.Google_sec_pay(purchase.getPurchaseToken(), purchase.getOrderId(), purchase.getSku(), new HttpCallback() {
@Override
public void onSuccess(int code, String msg, String[] info) {
@@ -341,7 +327,7 @@ public class MainActivity extends AbsActivity implements MainAppBarLayoutListene
RCRTCConfig.Builder config = RCRTCConfig.Builder.create();
RCRTCEngine.getInstance().init(MainActivity.this, config.build());
//推送跳直播间
if(getIntent().getStringExtra("liveid")!=null){
if (getIntent().getStringExtra("liveid") != null) {
LiveHttpUtil.getLiveInfo(getIntent().getStringExtra("liveid") + "", new HttpCallback() {
@Override
public void onSuccess(int code, String msg, String[] info) {
@@ -365,13 +351,13 @@ public class MainActivity extends AbsActivity implements MainAppBarLayoutListene
}
}
});
}else if(getIntent().getStringExtra("type")!=null&&getIntent().getStringExtra("type").equals("2")){
} else if (getIntent().getStringExtra("type") != null && getIntent().getStringExtra("type").equals("2")) {
//跳转消息列表
Bundle bundle = new Bundle();
bundle.putInt(PDLiveConversationListActivity.MESSAGENUMBER, messageNumber);
bundle.putInt(PDLiveConversationListActivity.NUMBERME, numberMe);
ConversationIMListManager.get(this).jumpConversationList(bundle);
}else if(getIntent().getStringExtra("type")!=null&&getIntent().getStringExtra("type").equals("8")){
} else if (getIntent().getStringExtra("type") != null && getIntent().getStringExtra("type").equals("8")) {
WebViewActivity.forward(mContext, getIntent().getStringExtra("activityUrl"), true);
}
FirebaseMessaging.getInstance().getToken()

View File

@@ -44,11 +44,17 @@ import com.yunbao.common.manager.imrongcloud.MessageIMManager;
import com.yunbao.common.utils.DeviceUtils;
import com.yunbao.common.utils.DialogUitl;
import com.yunbao.common.utils.ProcessResultUtil;
import com.yunbao.common.utils.RouteUtil;
import com.yunbao.common.utils.ToastUtil;
import com.yunbao.common.views.weight.ViewClicksAntiShake;
import com.yunbao.live.activity.LiveAudienceActivity;
import com.yunbao.live.activity.SystemMessageActivity;
import com.yunbao.live.bean.ImUserBean;
import com.yunbao.live.bean.LiveBean;
import com.yunbao.live.event.RecommendLiveRoomEvent;
import com.yunbao.live.http.ImHttpUtil;
import com.yunbao.live.http.LiveHttpUtil;
import com.yunbao.live.presenter.LiveRoomCheckLivePresenter;
import com.yunbao.main.R;
import com.yunbao.main.adapter.SystemMessageAdapter;
import com.yunbao.main.dialog.MainStartDialogFragment;
@@ -193,7 +199,7 @@ public class PDLiveConversationListActivity extends AbsActivity implements View.
container.post(new Runnable() {
@Override
public void run() {
showGuideView();
// showGuideView();
}
});
}
@@ -261,7 +267,7 @@ public class PDLiveConversationListActivity extends AbsActivity implements View.
textNewsNotice.setVisibility(View.VISIBLE);
textNewsNotice.setText(userBean.getNum());
}
ImgLoader.display(mContext, userBean.getImage(), imgNewsNotice);
ImgLoader.display(mContext, userBean.getNewImage(), imgNewsNotice);
ViewClicksAntiShake.clicksAntiShake(imgNewsNotice, () -> {
type = userBean.getType();
netHandler.post(systemNumberRunnable);
@@ -280,7 +286,7 @@ public class PDLiveConversationListActivity extends AbsActivity implements View.
textNewsInteraction.setVisibility(View.VISIBLE);
textNewsInteraction.setText(userBean.getNum());
}
ImgLoader.display(mContext, userBean.getImage(), imgNewsInteraction);
ImgLoader.display(mContext, userBean.getNewImage(), imgNewsInteraction);
ViewClicksAntiShake.clicksAntiShake(imgNewsInteraction, () -> {
type = userBean.getType();
netHandler.post(systemNumberRunnable);
@@ -299,7 +305,7 @@ public class PDLiveConversationListActivity extends AbsActivity implements View.
textNewsOnline.setVisibility(View.VISIBLE);
textNewsOnline.setText(userBean.getNum());
}
ImgLoader.display(mContext, userBean.getImage(), imgNewsOnline);
ImgLoader.display(mContext, userBean.getNewImage(), imgNewsOnline);
ViewClicksAntiShake.clicksAntiShake(imgNewsOnline, () -> {
type = userBean.getType();
netHandler.post(systemNumberRunnable);
@@ -585,4 +591,24 @@ public class PDLiveConversationListActivity extends AbsActivity implements View.
MessageIMManager.get(mContext).setSystemNumber(systemNumber);
}
@Subscribe(threadMode = ThreadMode.MAIN)
public void onRecommendLiveRoomEvent(RecommendLiveRoomEvent event) {
LiveHttpUtil.getLiveInfo(event.getLiveuid(), new HttpCallback() {
@Override
public void onSuccess(int code, String msg, String[] info) {
if (code == 0 && info.length > 0) {
LiveBean liveBean = JSON.parseObject(info[0], LiveBean.class);
LiveRoomCheckLivePresenter mCheckLivePresenter = new LiveRoomCheckLivePresenter(mContext, (liveBean1, liveType, liveTypeVal, liveSdk) -> {
if (liveBean1 == null) {
return;
}
LiveAudienceActivity.forward(mContext, liveBean1, liveType, liveTypeVal, "", 0, liveSdk);
});
mCheckLivePresenter.checkLive(liveBean);
} else {
RouteUtil.forwardUserHome(mContext, event.getLiveuid(), 0);
}
}
});
}
}

View File

@@ -22,12 +22,14 @@ import com.yunbao.common.utils.RouteUtil;
import com.yunbao.live.activity.PDLIiveChatActivity;
import com.yunbao.live.activity.PDLiveConversationActivity;
import com.yunbao.live.bean.SearchUserBean;
import com.yunbao.live.dialog.PDLIiveChatConversationFragment;
import com.yunbao.main.activity.PDLiveConversationListActivity;
import com.yunbao.main.dialog.ConversationPopuwWindow;
import com.yunbao.main.utils.PDLiveCustomConversationProvider;
import com.yunbao.main.utils.PDLiveMessageProcessor;
import com.yunbao.main.utils.PDSightMessageItemProvider;
import java.util.ArrayList;
import java.util.List;
import io.rong.imkit.IMCenter;
@@ -43,6 +45,7 @@ import io.rong.imkit.utils.RouteUtils;
import io.rong.imkit.widget.adapter.ProviderManager;
import io.rong.imlib.RongIMClient;
import io.rong.imlib.model.Conversation;
import io.rong.imlib.model.MessageContent;
import io.rong.imlib.model.UserInfo;
import io.rong.sight.SightExtensionModule;
@@ -71,6 +74,7 @@ public class ConversationIMListManager {
RongExtensionManager.getInstance().registerExtensionModule(new SightExtensionModule());
//自定义小视频消息模板
RongConfigCenter.conversationConfig().replaceMessageProvider(SightMessageItemProvider.class, new PDSightMessageItemProvider());
//会话列表监听事件
RongIM.setConversationListBehaviorListener(listener);
}
@@ -275,7 +279,16 @@ public class ConversationIMListManager {
*/
@Override
public boolean onConversationClick(Context context, View view, BaseUiConversation baseUiConversation) {
jumpConversation((Activity) context, baseUiConversation.mCore.getTargetId());
if (context instanceof PDLIiveChatActivity) {
Bundle bundle = new Bundle();
bundle.putString("targetId", baseUiConversation.mCore.getTargetId());
PDLIiveChatActivity activity = (PDLIiveChatActivity) context;
PDLIiveChatConversationFragment fragment = new PDLIiveChatConversationFragment();
fragment.setArguments(bundle);
fragment.show(activity.getSupportFragmentManager(), "PDLIiveChatConversationFragment");
} else {
jumpConversation((Activity) context, baseUiConversation.mCore.getTargetId());
}
return true;
}
};

View File

@@ -64,7 +64,7 @@ public class PDLiveCustomConversationProvider extends BaseConversationProvider {
holder.setText(R.id.conversation_title, userInfo.getName());
if (uiConversation.mCore.getLatestMessage() instanceof TextMessage) {
TextMessage message = (TextMessage) uiConversation.mCore.getLatestMessage();
holder.setText(R.id.rc_conversation_content, message.getContent());
holder.setText(R.id.conversation_content, message.getContent());
}
if (uiConversation.mCore.getUnreadMessageCount() == 0) {
holder.setVisible(R.id.conversation_unread, false);