Browse Source

尝试添加user-agent到内部h5中

zengjiebin 7 years ago
parent
commit
b3bdd64ae4
1 changed files with 12 additions and 2 deletions
  1. 12 2
      app/src/main/java/com/sheep/gamegroup/util/js/BaseActWeb.java

+ 12 - 2
app/src/main/java/com/sheep/gamegroup/util/js/BaseActWeb.java

@@ -6,7 +6,9 @@ import android.webkit.WebView;
 import com.sheep.gamegroup.absBase.BaseUMActivity;
 import com.sheep.gamegroup.model.entity.UserEntity;
 import com.sheep.gamegroup.util.CommonUtil;
+import com.sheep.gamegroup.util.SysAppUtil;
 import com.sheep.gamegroup.util.share.ShareLinkConfig;
+import com.sheep.jiuyan.samllsheep.BuildConfig;
 import com.sheep.jiuyan.samllsheep.R;
 import com.sheep.jiuyan.samllsheep.SheepApp;
 import com.sheep.jiuyan.samllsheep.utils.G;
@@ -14,6 +16,7 @@ import com.sheep.jiuyan.samllsheep.utils.SpUtils;
 import com.sheep.jiuyan.samllsheep.utils.TitleBarUtils;
 import com.umeng.socialize.bean.SHARE_MEDIA;
 
+import java.util.HashMap;
 import java.util.Locale;
 import java.util.Map;
 
@@ -102,9 +105,16 @@ public abstract class BaseActWeb extends BaseUMActivity {
         loadJs(String.format(Locale.CHINA, "callback(\"onCancel\", %s)", share_media.getName()));
     }
 
+    protected boolean addSheepUserAgent = true;
     protected void webViewLoadUrl(com.tencent.smtt.sdk.WebView webView, String url){
-        webView.loadUrl(url);
-        WebViewCacheInterceptorInst.getInstance().loadUrl(url, webView.getSettings().getUserAgentString());
+        if(addSheepUserAgent){
+            Map<String, String> extraHeaders = new HashMap<>();
+            extraHeaders.put("User-Agent", BuildConfig.APPLICATION_ID + "/" + SysAppUtil.getUserAgent());
+            webViewLoadUrl(webView, extraHeaders, url);
+        } else {
+            webView.loadUrl(url);
+            WebViewCacheInterceptorInst.getInstance().loadUrl(url, webView.getSettings().getUserAgentString());
+        }
     }
     protected void webViewLoadUrl(com.tencent.smtt.sdk.WebView webView, Map<String, String> map, String url){
         webView.loadUrl(url, map);