Преглед на файлове

nocache param for webview

hanjing преди 7 години
родител
ревизия
a3bd5ee958

+ 1 - 1
app/src/main/java/com/sheep/gamegroup/view/activity/ActGcGameAppDetail.java

@@ -372,7 +372,7 @@ public class ActGcGameAppDetail extends BaseActivity {
     @OnClick(R.id.gc_game_app_detail_bt3)
     public void onGoDirectionalPay(View v) {
         CommonUtil.getInstance().initUrlConfigByNet(Config.KEY_DIRECTIONAL_RECHARGE_URL, url -> {
-            url = url + "/" + gameEntity.getApp().getGame_discount_id() + "?authorization="+ SpUtils.getToken(this);
+            url = url + "/" + gameEntity.getApp().getGame_discount_id() + "?authorization="+ SpUtils.getToken(this) + "&ssnocache=1";
             WebParams webParams = new WebParams(url, "抢购优惠").setShowTitle(false);
             Jump2View.getInstance().goWeb(this, webParams);
         });

+ 1 - 1
app/src/main/java/com/sheep/gamegroup/view/activity/ActMyMoney.java

@@ -265,7 +265,7 @@ public class ActMyMoney extends BaseActivity {
             case R.id.my_money_dingxiang_amount://定向货币详情
             case R.id.my_money_dingxiang_tag://定向货币详情
                 CommonUtil.getInstance().initUrlConfigByNet(Config.KEY_DIRECTIONAL_LIST_URL, url -> {
-                    url = url + "?authorization=" + SpUtils.getToken(this);
+                    url = url + "?authorization=" + SpUtils.getToken(this) + "&ssnocache=1";
                     WebParams webParams = new WebParams(url, "定向消费").setShowTitle(false);
                     Jump2View.getInstance().goWeb(this, webParams);
                 });

+ 1 - 1
app/src/main/java/com/sheep/gamegroup/view/activity/ActPay.java

@@ -204,7 +204,7 @@ public class ActPay extends BaseActivity {
 
     public void onDirectionalPayClicked(View v) {
         CommonUtil.getInstance().initUrlConfigByNet(Config.KEY_DIRECTIONAL_PAY_URL, url -> {
-            url = url + "?authorization=" + token + "&order=" + payOrder.getOrderNo();
+            url = url + "?authorization=" + token + "&order=" + payOrder.getOrderNo() + "&ssnocache=1";
             WebParams webParams = new WebParams(url, "定向优惠").setShowTitle(false).setForResult(true).setAction(ACTION_FOR_H5_PAY);
             Jump2View.getInstance().goWeb(this, webParams);
         });

+ 21 - 19
app/src/main/java/com/sheep/gamegroup/view/activity/ActWebX5.java

@@ -93,7 +93,7 @@ public class ActWebX5 extends BaseActWeb {
         if (!TextUtils.isEmpty(url)) {
             url = url.trim();
         }
-        if(webParams.isShowTitle()) {
+        if (webParams.isShowTitle()) {
             TitleBarUtils
                     .getInstance()
                     .setShowOrHide(this, true)
@@ -113,7 +113,6 @@ public class ActWebX5 extends BaseActWeb {
         if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
 //            webViewSettings.setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
         }
-        mWebView.clearCache(true);
         if (TextUtils.isEmpty(jsUrl)) {
             loadUrl(url);
         } else {
@@ -173,7 +172,7 @@ public class ActWebX5 extends BaseActWeb {
 
     @Override
     protected void onDestroy() {
-        if(act_web_loading_iv != null){
+        if (act_web_loading_iv != null) {
             try {
                 act_web_loading_iv.clearAnimation();
             } catch (Exception e) {
@@ -295,23 +294,26 @@ public class ActWebX5 extends BaseActWeb {
                     act_web_loading_iv.startAnimation(animation);
                 }
                 ViewUtil.setVisibility(act_web_loading_pb, newProgress != 100);
-                if(act_web_loading_pb != null)
+                if (act_web_loading_pb != null)
                     act_web_loading_pb.setProgress(newProgress);
                 super.onProgressChanged(view, newProgress);
             }
         });
         mWebView.setWebViewClient(new WebViewClient() {
-//            @Override
-//            public WebResourceResponse shouldInterceptRequest(WebView webView, String s) {
-//                LogUtil.println("ActWeb", "shouldInterceptRequest from cache", url);
-//                return WebResourceResponseAdapter.adapter(WebViewCacheInterceptorInst.getInstance().interceptRequest(s));
-//            }
-//
-//            @Override
-//            public WebResourceResponse shouldInterceptRequest(WebView webView, WebResourceRequest webResourceRequest) {
-//                LogUtil.println("ActWeb", "shouldInterceptRequest from cache", url);
-//                return WebResourceResponseAdapter.adapter(WebViewCacheInterceptorInst.getInstance().interceptRequest(WebResourceRequestAdapter.adapter(webResourceRequest)));
-//            }
+            @Override
+            public WebResourceResponse shouldInterceptRequest(WebView webView, String s) {
+                if (s.contains("ssnocache=1")) return null;
+                LogUtil.println("ActWeb", "shouldInterceptRequest from cache", url);
+                return WebResourceResponseAdapter.adapter(WebViewCacheInterceptorInst.getInstance().interceptRequest(s));
+            }
+
+            @Override
+            public WebResourceResponse shouldInterceptRequest(WebView webView, WebResourceRequest webResourceRequest) {
+                if (url.contains("ssnocache=1")) return null;
+                LogUtil.println("ActWeb", "shouldInterceptRequest from cache", url);
+                return WebResourceResponseAdapter.adapter(WebViewCacheInterceptorInst.getInstance().interceptRequest(WebResourceRequestAdapter.adapter(webResourceRequest)));
+            }
+
             @Override
             public boolean shouldOverrideUrlLoading(WebView view, String url) {
                 LogUtil.println("ActWeb", "shouldOverrideUrlLoading", url);
@@ -382,12 +384,12 @@ public class ActWebX5 extends BaseActWeb {
         if (webParams.isNeedJsInteract()) {
             mWebView.addJavascriptInterface(new KFZSJs(this), "kfzsjs");
             String loadUrl = url;
-            if(webParams.getTokenKey() != null){
-                if(url.startsWith(Config.YF_SHOP_HOME)){
+            if (webParams.getTokenKey() != null) {
+                if (url.startsWith(Config.YF_SHOP_HOME)) {
                     webParams.tokenFirstUpperCase();
                 }
                 loadUrl = addUrlQuery(url, webParams.getTokenKey(), SpUtils.getToken(SheepApp.getInstance()));
-                if(url.startsWith(Config.YF_SHOP_HOME)){
+                if (url.startsWith(Config.YF_SHOP_HOME)) {
                     loadUrl = addUrlQuery(loadUrl, "pf", Config.YF_SHOP_PLATFORM);
                 }
             }
@@ -517,7 +519,7 @@ public class ActWebX5 extends BaseActWeb {
     @Override
     public void showTitleBar(boolean isShow) {
         ActionBar actionBar = getSupportActionBar();
-        if(actionBar != null)
+        if (actionBar != null)
             actionBar.hide();
     }
 

+ 1 - 1
app/src/main/java/com/sheep/gamegroup/view/fragment/FgtPersonalCenter.java

@@ -503,7 +503,7 @@ public class FgtPersonalCenter extends BaseFragment {
                 break;
             case R.id.voucher_layout:
                 CommonUtil.getInstance().initUrlConfigByNet(Config.KEY_VOUCHER_LIST_URL, url -> {
-                    url = url + "?authorization=" + SpUtils.getToken(getActivity());
+                    url = url + "?authorization=" + SpUtils.getToken(getActivity()) + "&ssnocache=1";
                     WebParams webParams = new WebParams(url, "我的代金券").setShowTitle(false);
                     Jump2View.getInstance().goWeb(getActivity(), webParams);
                 });