From 3595485efbfeb0db8c0e719e34aac022af284754 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 22 五月 2021 18:14:40 +0800 Subject: [PATCH] 特价完善 --- app/src/main/java/com/tejia/lijin/app/ui/invite/ShareBrowserActivity.java | 113 +++++++++++--------------------------------------------- 1 files changed, 22 insertions(+), 91 deletions(-) diff --git a/app/src/main/java/com/tejia/lijin/app/ui/invite/ShareBrowserActivity.java b/app/src/main/java/com/tejia/lijin/app/ui/invite/ShareBrowserActivity.java index 9678657..8f3d80f 100644 --- a/app/src/main/java/com/tejia/lijin/app/ui/invite/ShareBrowserActivity.java +++ b/app/src/main/java/com/tejia/lijin/app/ui/invite/ShareBrowserActivity.java @@ -3,9 +3,7 @@ import android.Manifest; import android.annotation.SuppressLint; import android.app.Activity; -import android.app.AlertDialog; import android.content.ClipData; -import android.content.DialogInterface; import android.content.Intent; import android.content.pm.ActivityInfo; import android.graphics.PixelFormat; @@ -16,8 +14,8 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.annotation.RequiresApi; +import wendu.dsbridge.DWebView; -import android.util.Base64; import android.util.Log; import android.view.KeyEvent; import android.view.View; @@ -42,13 +40,14 @@ import android.widget.PopupWindow; import android.widget.ProgressBar; import android.widget.TextView; -import android.widget.Toast; import com.ali.auth.third.ui.context.CallbackContext; import com.alibaba.baichuan.android.trade.model.AlibcShowParams; import com.alibaba.baichuan.trade.biz.AlibcConstants; import com.alibaba.baichuan.trade.biz.applink.adapter.AlibcFailModeType; import com.tejia.lijin.app.ui.recommend.GoodsDetailActivity; +import com.tejia.lijin.app.util.web.RebateJavaInterfaceBS; +import com.tejia.lijin.app.util.web.WebViewUtil; import com.umeng.analytics.MobclickAgent; import com.wpc.library.okhttp.OkHttpUtils; import com.wpc.library.util.JDLinkCutUtil; @@ -71,16 +70,12 @@ import com.tejia.lijin.app.ui.recommend.NoExtendPDDGoodsActivity; import com.tejia.lijin.app.ui.recommend.NoExtendTaoBaoGoodsActivity; import com.tejia.lijin.app.util.AndroidBug5497Workaround; -import com.tejia.lijin.app.util.ApkUtil; import com.tejia.lijin.app.util.Constant; import com.tejia.lijin.app.util.KeFuUtil; import com.tejia.lijin.app.util.PermissionHelper; -import com.tejia.lijin.app.util.RebateJavaInterface; -import com.tejia.lijin.app.util.Tools; +import com.tejia.lijin.app.util.web.RebateJavaInterface; import com.tejia.lijin.app.util.TopStatusSettings; import com.tejia.lijin.app.util.baichuan.AlibcTradeUtil; -import com.tejia.lijin.app.util.clipboard.ClipboardUtil; -import com.tejia.lijin.app.util.goods.GoodsDetailJumpUtil; import com.tejia.lijin.app.util.web.CustomNavigationJsObject; import org.apache.http.Header; @@ -101,7 +96,7 @@ private TextView tv_top_bar_left2; private ImageView iv_right; private Button tv_top_bar_middle; - private WebView webview; + private DWebView webview; private FrameLayout fl_webview; View v_cover_web; ProgressBar progressBar; @@ -118,14 +113,21 @@ private boolean interceptGoodsDetail; private String originalUrl = ""; + //娌夋蹈寮忕綉椤� + private boolean immersion = false; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); + + String immersionStr = getIntent().getStringExtra("immersion"); + if (!StringUtils.isNullOrEmpty(immersionStr) && Boolean.parseBoolean(immersionStr)) { + immersion = true; + } setContentView(R.layout.browser_activity); AndroidBug5497Workaround.assistActivity(this); TopStatusSettings.setStatusViewAndDeepColor(this); - String url = getIntent().getStringExtra("url"); + String url = "http://192.168.3.122:8848/tejia-web/dsbridge-test.html";//getIntent().getStringExtra("url"); originalUrl = url; //鏄惁鍏佽绮樿创鏉挎帹鑽� String clipboradStr = getIntent().getStringExtra("clipboard"); @@ -165,7 +167,7 @@ // tv_top_bar_middle.setText("濂ユ湳澶у笀澶ф墍澶ф墍澶氬ゥ鏈ぇ甯�"); pd = new ShapeLoadingDialog.Builder(this).build(); - webview = new WebView(ShareBrowserActivity.this); + webview = new DWebView(ShareBrowserActivity.this); fl_webview.addView(webview, new FrameLayout.LayoutParams( FrameLayout.LayoutParams.MATCH_PARENT, @@ -214,6 +216,11 @@ webview.addJavascriptInterface(javaInterface, "yestv"); CustomNavigationJsObject customNavigation = new CustomNavigationJsObject(this); webview.addJavascriptInterface(customNavigation, "czb");//绗簩涓弬鏁癱zb涓嶅彲鏇存敼锛� + + RebateJavaInterfaceBS javaInterface1 = new RebateJavaInterfaceBS(ShareBrowserActivity.this, + tv_top_bar_middle, tv_top_bar_left2, new TextView(this), iv_right, webview, pd); + webview.addJavascriptObject(javaInterface1, "yestv"); + /*** * Android5.0寮�濮嬶紝WebView榛樿涓嶆敮鎸佸悓鏃跺姞杞紿ttps鍜孒ttp娣峰悎妯″紡 * WebView鍦ㄥ井淇$綉椤典腑棣栧厛鎵撳紑涓�涓猦ttps缃戝潃锛岀劧鍚庡畠浼氳閲嶅畾鍚戝埌涓�涓猦ttp缃戝潃 @@ -297,85 +304,9 @@ return true; } } - 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(getApplicationContext(), new String(raw)); - Toast.makeText(ShareBrowserActivity.this, "澶嶅埗鎴愬姛", - 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(ShareBrowserActivity.this, content, Toast.LENGTH_LONG).show(); - return true; - } - if (url != null && !url.startsWith("http")) { - if (url.startsWith("weixin://wap/pay?")) { - if (Tools.isWeixinAvilible(ShareBrowserActivity.this) == 2) { - Toast.makeText(ShareBrowserActivity.this, - "灏氭湭瀹夎寰俊", Toast.LENGTH_LONG).show(); - return true; - } - Intent intent = new Intent(); - intent.setAction(Intent.ACTION_VIEW); - intent.setData(Uri.parse(url)); - startActivity(intent); - } else if (url.startsWith("alipays:") || url.startsWith("alipay")) { - try { - startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url))); - } catch (Exception e) { - new AlertDialog.Builder(ShareBrowserActivity.this) - .setMessage("鏈娴嬪埌鏀粯瀹濆鎴风锛岃瀹夎鍚庨噸璇曘��") - .setPositiveButton("绔嬪嵆瀹夎", new DialogInterface.OnClickListener() { - - @Override - public void onClick(DialogInterface dialog, int which) { - Uri alipayUrl = Uri.parse("https://d.alipay.com"); - startActivity(new Intent("android.intent.action.VIEW", alipayUrl)); - } - }).setNegativeButton("鍙栨秷", null).show(); - } - } else if (url.startsWith("pinduoduo://")) {//鎷︽埅鎷煎澶氶〉闈� - if (ApkUtil.checkAPP(getApplicationContext(), "com.xunmeng.pinduoduo")) { - Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); - intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); - startActivity(intent); - return true; - } else { - return true; - } - } else if (url.startsWith("suning://")) {//鑻忓畞 - if (ApkUtil.checkAPP(getApplicationContext(), "com.suning.mobile.ebuy")) { - Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); - intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); - startActivity(intent); - return true; - } else - return true; - } else if (url.startsWith("vipshop://")) {//鍞搧浼� - if (ApkUtil.checkAPP(getApplicationContext(), "com.achievo.vipshop")) { - Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); - intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); - startActivity(intent); - return true; - } else - 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)); - startActivity(intent); - } + Boolean intercept = WebViewUtil.interceptUrl(getApplicationContext(), url); + if (intercept != null) + return intercept; return super.shouldOverrideUrlLoading(view, url); } -- Gitblit v1.8.0