package com.tejia.lijin.app.util.web;
|
|
import android.app.AlertDialog;
|
import android.content.Context;
|
import android.content.DialogInterface;
|
import android.content.Intent;
|
import android.net.Uri;
|
import android.util.Base64;
|
import android.widget.Toast;
|
|
import com.tejia.lijin.app.ui.invite.ShareBrowserActivity;
|
import com.tejia.lijin.app.util.ApkUtil;
|
import com.tejia.lijin.app.util.Tools;
|
import com.tejia.lijin.app.util.clipboard.ClipboardUtil;
|
|
import java.net.URLDecoder;
|
|
public class WebViewUtil {
|
|
public static Boolean interceptUrl(final Context context, String url) {
|
|
if (url != null && url.startsWith("yestv://copy")) {
|
String murl = url.split("yestv://")[1];
|
String[] params = murl.split("#");
|
byte raw[] = Base64.decode(params[1], Base64.DEFAULT);
|
|
ClipboardUtil.copy(context, new String(raw));
|
Toast.makeText(context, "复制成功",
|
Toast.LENGTH_SHORT).show();
|
return true;
|
} else if (url != null && url.startsWith("yestv://toast")) {
|
String murl = url.split("yestv://")[1];
|
String[] params = murl.split("#");
|
byte raw[] = Base64.decode(params[1], Base64.DEFAULT);
|
String content = new String(raw);
|
Toast.makeText(context, content, Toast.LENGTH_LONG).show();
|
return true;
|
}
|
if (url != null && !url.startsWith("http")) {
|
if (url.startsWith("weixin://wap/pay?")) {
|
if (Tools.isWeixinAvilible(context) == 2) {
|
Toast.makeText(context,
|
"尚未安装微信", Toast.LENGTH_LONG).show();
|
return true;
|
}
|
Intent intent = new Intent();
|
intent.setAction(Intent.ACTION_VIEW);
|
intent.setData(Uri.parse(url));
|
context.startActivity(intent);
|
} else if (url.startsWith("alipays:") || url.startsWith("alipay")) {
|
try {
|
context.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
|
} catch (Exception e) {
|
new AlertDialog.Builder(context)
|
.setMessage("未检测到支付宝客户端,请安装后重试。")
|
.setPositiveButton("立即安装", new DialogInterface.OnClickListener() {
|
|
@Override
|
public void onClick(DialogInterface dialog, int which) {
|
Uri alipayUrl = Uri.parse("https://d.alipay.com");
|
context.startActivity(new Intent("android.intent.action.VIEW", alipayUrl));
|
}
|
}).setNegativeButton("取消", null).show();
|
}
|
} else if (url.startsWith("pinduoduo://")) {//拦截拼多多页面
|
if (ApkUtil.checkAPP(context, "com.xunmeng.pinduoduo")) {
|
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
|
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
context.startActivity(intent);
|
return true;
|
} else {
|
return true;
|
}
|
} else if (url.startsWith("suning://")) {//苏宁
|
if (ApkUtil.checkAPP(context, "com.suning.mobile.ebuy")) {
|
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
|
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
context.startActivity(intent);
|
return true;
|
} else
|
return true;
|
} else if (url.startsWith("vipshop://")) {//唯品会
|
if (ApkUtil.checkAPP(context, "com.achievo.vipshop")) {
|
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
|
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
context.startActivity(intent);
|
return true;
|
} else
|
return true;
|
} else if (url.startsWith("snssdk1128://")) {//抖音
|
try {
|
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
|
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
context.startActivity(intent);
|
} catch (Exception e) {
|
|
}
|
return true;
|
}
|
|
return true;
|
}
|
|
if (url.endsWith(".apk")) {
|
Intent intent = new Intent(Intent.ACTION_VIEW);
|
intent.addCategory(Intent.CATEGORY_BROWSABLE);
|
intent.setData(Uri.parse(url));
|
context.startActivity(intent);
|
return true;
|
}
|
|
return null;
|
}
|
|
}
|