admin
2021-07-06 abce02c7a61820f5d580f87364d542e817be429c
app/src/main/java/com/tejia/lijin/app/util/GoodsBuyJumpUtil.java
@@ -5,22 +5,153 @@
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Handler;
import android.util.Log;
import android.view.View;
import android.webkit.WebChromeClient;
import android.webkit.WebViewClient;
import com.alibaba.baichuan.android.trade.AlibcTradeSDK;
import com.alibaba.baichuan.android.trade.model.AlibcShowParams;
import com.alibaba.baichuan.android.trade.model.OpenType;
import com.alibaba.baichuan.trade.biz.AlibcConstants;
import com.alibaba.baichuan.trade.biz.applink.adapter.AlibcFailModeType;
import com.alibaba.baichuan.trade.biz.core.taoke.AlibcTaokeParams;
import com.kepler.jd.Listener.OpenAppAction;
import com.kepler.jd.login.KeplerApiManager;
import com.kepler.jd.sdk.bean.KeplerAttachParameter;
import com.tejia.lijin.app.entity.TbPidInfo;
import com.tejia.lijin.app.entity.common.GoodsConvertLinkJumpLink;
import com.tejia.lijin.app.entity.user.UserLijinLevelInfoVO;
import com.tejia.lijin.app.ui.dialog.GoodsDetailJumpLoaingDialog;
import com.tejia.lijin.app.ui.invite.ShareBrowserActivity;
import com.tejia.lijin.app.ui.recommend.GoodsDetailActivity;
import com.tejia.lijin.app.util.baichuan.AlibcTradeUtil;
import com.tejia.lijin.app.util.downutil.StringUtils;
import com.tejia.lijin.app.util.goods.GoodsBuyUtil;
import com.tejia.lijin.app.util.ui.dialog.DialogUtil;
import java.util.HashMap;
import java.util.Map;
/**
 * 去购买的跳转链接
 */
public class GoodsBuyJumpUtil {
    public static void jumpPDD(Context context, GoodsConvertLinkJumpLink link) {
    public static void jumpTB(final Activity activity, final TbPidInfo tInfo, final String clickUrl, final String couponUrl, UserLijinLevelInfoVO userLevel, final GoodsBuyUtil.IBuyGoodsResultListener buyGoodsResultListener) {
        if (userLevel != null && userLevel.getUpgradeRights() != null) {
            showADLoading(activity, Constant.GOODS_TYPE_TB, userLevel, new GoodsDetailJumpLoaingDialog.Builder.IDialogClose() {
                @Override
                public void onClose(boolean auto) {
                    jumpTB(activity, tInfo, clickUrl, couponUrl, buyGoodsResultListener);
                }
            });
        } else {
            final Dialog dialog = getLoadingDialog(activity, Constant.GOODS_TYPE_TB);
            jumpTB(activity, tInfo, clickUrl, couponUrl, new GoodsBuyUtil.IBuyGoodsResultListener() {
                @Override
                public void onConvertLinkStart() {
                }
                @Override
                public void onConvertLinkSuccess() {
                }
                @Override
                public void onConvertLinkFail(String msg) {
                }
                @Override
                public void onConvertLinkComplete() {
                }
                @Override
                public void onJumpThirdAppStart() {
                    DialogUtil.show(dialog);
                    new Handler().postDelayed(new Runnable() {
                        public void run() {
                            DialogUtil.dismiss(dialog);
                        }
                    }, 3 * 1000);
                }
                @Override
                public void onJumpThirdAppSuccess() {
                    DialogUtil.dismiss(dialog);
                }
                @Override
                public void onJumpThirdAppFail() {
                    DialogUtil.dismiss(dialog);
                }
            });
        }
    }
    private static void jumpTB(Activity activity, TbPidInfo tInfo, String clickUrl, String couponUrl, final GoodsBuyUtil.IBuyGoodsResultListener buyGoodsResultListener) {
        AlibcShowParams alibcShowParams = new AlibcShowParams();
        alibcShowParams.setOpenType(OpenType.Auto);
        alibcShowParams.setBackUrl("alisdk://");
        alibcShowParams.setNativeOpenFailedMode(AlibcFailModeType.AlibcNativeFailModeJumpBROWER);
        AlibcTaokeParams alibcTaokeParams = new AlibcTaokeParams("", "", "");
        if (tInfo != null) {
            alibcTaokeParams = new AlibcTaokeParams("", "", "");
            alibcTaokeParams.setPid(tInfo.getPid());
            alibcTaokeParams.setAdzoneid(tInfo.getAdZoneId());
            alibcTaokeParams.pid = tInfo.getPid();
            alibcTaokeParams.adzoneid = tInfo.getAdZoneId();
            alibcTaokeParams.extraParams = new HashMap<>();
            alibcTaokeParams.extraParams.put("taokeAppkey", tInfo.getAppKey());
        }
        Map<String, String> exParams = new HashMap<>();
        exParams.put(AlibcConstants.ISV_CODE, "appisvcode");
        exParams.put("alibaba", "阿里巴巴");//自定义参数部分,可任意增删改
        if (!com.wpc.library.util.common.StringUtils.isEmpty(clickUrl) || !com.wpc.library.util.common.StringUtils.isEmpty(couponUrl)) {
            String url = (!com.wpc.library.util.common.StringUtils.isEmpty(couponUrl)) ? couponUrl : clickUrl;
            AlibcTradeSDK.setTaokeParams(alibcTaokeParams);
            if (buyGoodsResultListener != null)
                buyGoodsResultListener.onJumpThirdAppStart();
            AlibcTradeUtil.openByUrl(activity,
                    url, null, new WebViewClient(), new WebChromeClient(),
                    alibcShowParams, alibcTaokeParams, null);
        }
    }
    public static void jumpPDD(final Activity context, final GoodsConvertLinkJumpLink link, UserLijinLevelInfoVO userLevel) {
        if (userLevel != null && userLevel.getUpgradeRights() != null) {
            showADLoading(context, Constant.GOODS_TYPE_PDD, userLevel, new GoodsDetailJumpLoaingDialog.Builder.IDialogClose() {
                @Override
                public void onClose(boolean auto) {
                    jumpPDD(context, link);
                }
            });
        } else {
            final Dialog dialog = getLoadingDialog(context, Constant.GOODS_TYPE_PDD);
            DialogUtil.show(dialog);
            jumpPDD(context, link);
            new Handler().postDelayed(new Runnable() {
                public void run() {
                    DialogUtil.dismiss(dialog);
                }
            }, 3 * 1000);
        }
    }
    private static void jumpPDD(Context context, GoodsConvertLinkJumpLink link) {
        if (context == null)
            return;
        if (link == null)
@@ -70,7 +201,8 @@
                        if (status == OpenAppAction.OpenAppAction_result_APP) {
                            //呼京东成功
                            Log.e("mResult", "呼京东成功");
                            dialog.dismiss();
                            if (dialog != null)
                                dialog.dismiss();
                        } else if (status == OpenAppAction.OpenAppAction_start) {
                            //开始状态未必一定执行,
                            Log.e("mResult", "开始呼起京东");
@@ -81,6 +213,7 @@
                            intent.putExtra("url", url);
                            intent.putExtra("interceptGoodsDetail", false);
                            view.getContext().startActivity(intent);
                            if (dialog != null)
                            dialog.dismiss();
                        }
                    }
@@ -118,11 +251,42 @@
            if (dialog != null && dialog.isShowing())
                dialog.dismiss();
        }
    }
    public static void jumpJD(final Activity activity, final GoodsConvertLinkJumpLink link, UserLijinLevelInfoVO userLevel, final IJumpResult jumpResult) {
        if (userLevel != null && userLevel.getUpgradeRights() != null) {
            showADLoading(activity, Constant.GOODS_TYPE_JD, userLevel, new GoodsDetailJumpLoaingDialog.Builder.IDialogClose() {
                @Override
                public void onClose(boolean auto) {
                    jumpJD(activity, link, null);
                }
            });
        } else {
            final Dialog dialog = getLoadingDialog(activity, Constant.GOODS_TYPE_JD);
            DialogUtil.show(dialog);
            jumpJD(activity, link, new IJumpResult() {
                @Override
                public void onSuccess() {
                }
                @Override
                public void onFail(String msg) {
                }
            });
            new Handler().postDelayed(new Runnable() {
                public void run() {
                    DialogUtil.dismiss(dialog);
                }
            }, 3 * 1000);
        }
    }
    public static void jumpJD(final Activity activity, GoodsConvertLinkJumpLink link, final IJumpResult jumpResult) {
    private static void jumpJD(final Activity activity, GoodsConvertLinkJumpLink link, final IJumpResult jumpResult) {
        if (link == null)
            return;
@@ -140,7 +304,8 @@
                            if (status == OpenAppAction.OpenAppAction_result_APP) {
                                //呼京东成功
                                Log.e("mResult", "呼京东成功");
                                jumpResult.onSuccess();
                                if (jumpResult != null)
                                    jumpResult.onSuccess();
                            } else if (status == OpenAppAction.OpenAppAction_start) {
                                //开始状态未必一定执行,
                                Log.e("mResult", "开始呼起京东");
@@ -151,7 +316,8 @@
                                intent.putExtra("url", url);
                                intent.putExtra("interceptGoodsDetail", false);
                                activity.startActivity(intent);
                                jumpResult.onFail("唤起京东失败");
                                if (jumpResult != null)
                                    jumpResult.onFail("唤起京东失败");
                            }
                        }
                    });
@@ -185,13 +351,35 @@
            intent.putExtra("interceptGoodsDetail", false);
            activity.startActivity(intent);
        } finally {
            jumpResult.onSuccess();
            if (jumpResult != null)
                jumpResult.onSuccess();
        }
    }
    public static void jumpVIPShop(Context context, GoodsConvertLinkJumpLink link) {
    public static void jumpVIPShop(final Activity context, final GoodsConvertLinkJumpLink link, UserLijinLevelInfoVO userLevel) {
        if (userLevel != null && userLevel.getUpgradeRights() != null) {
            showADLoading(context, Constant.GOODS_TYPE_VIP, userLevel, new GoodsDetailJumpLoaingDialog.Builder.IDialogClose() {
                @Override
                public void onClose(boolean auto) {
                    jumpVIPShop(context, link);
                }
            });
        } else {
            final Dialog dialog = getLoadingDialog(context, Constant.GOODS_TYPE_VIP);
            DialogUtil.show(dialog);
            jumpVIPShop(context, link);
            new Handler().postDelayed(new Runnable() {
                public void run() {
                    DialogUtil.dismiss(dialog);
                }
            }, 3 * 1000);
        }
    }
    private static void jumpVIPShop(Context context, GoodsConvertLinkJumpLink link) {
        if (context == null)
            return;
        if (link == null)
@@ -225,7 +413,31 @@
    }
    public static void jumpSuning(Context context, GoodsConvertLinkJumpLink link) {
    public static void jumpSuning(final Activity context, final GoodsConvertLinkJumpLink link, UserLijinLevelInfoVO userLevel) {
        if (userLevel != null && userLevel.getUpgradeRights() != null) {
            showADLoading(context, Constant.GOODS_TYPE_SUNING, userLevel, new GoodsDetailJumpLoaingDialog.Builder.IDialogClose() {
                @Override
                public void onClose(boolean auto) {
                    jumpSuning(context, link);
                }
            });
        } else {
            final Dialog dialog = getLoadingDialog(context, Constant.GOODS_TYPE_SUNING);
            DialogUtil.show(dialog);
            jumpSuning(context, link);
            new Handler().postDelayed(new Runnable() {
                public void run() {
                    DialogUtil.dismiss(dialog);
                }
            }, 3 * 1000);
        }
    }
    private static void jumpSuning(Context context, GoodsConvertLinkJumpLink link) {
        if (context == null)
            return;
        if (link == null)
@@ -259,6 +471,31 @@
    }
    private static Dialog showADLoading(Activity activity, int platform, UserLijinLevelInfoVO userLevel, GoodsDetailJumpLoaingDialog.Builder.IDialogClose dialogCloseListener) {
        GoodsDetailJumpLoaingDialog.Builder builder = new GoodsDetailJumpLoaingDialog.Builder(activity).setPlatform(platform).setOnCloseListener(dialogCloseListener);
        if (userLevel != null) {
            if (userLevel.getLoadingAdInfo() != null) {
                builder = builder.setHasAd(true).setAdInfo(userLevel.getLoadingAdInfo().getType(), userLevel.getLoadingAdInfo().getPid());
            }
            if (userLevel.getUpgradeRights() != null) {
                builder = builder.setNotify(userLevel.getUpgradeRights().getDesc(), userLevel.getUpgradeRights().getLink());
            }
        }
        Dialog dialog = builder.create();
        dialog.show();
        return dialog;
    }
    private static Dialog getLoadingDialog(Activity activity, int platform) {
        GoodsDetailJumpLoaingDialog.Builder builder = new GoodsDetailJumpLoaingDialog.Builder(activity).setPlatform(platform);
        Dialog dialog = builder.create();
        return dialog;
    }
    public static interface IJumpResult {
        public void onSuccess();