Просмотр исходного кода

解决webView缓存问题引起高额任务页面无内容先是问题

xuchnagping лет назад: 4
Родитель
Сommit
65c04da002

+ 1 - 2
.idea/gradle.xml

@@ -4,7 +4,7 @@
   <component name="GradleSettings">
     <option name="linkedExternalProjectsSettings">
       <GradleProjectSettings>
-        <option name="testRunner" value="PLATFORM" />
+        <option name="testRunner" value="GRADLE" />
         <option name="distributionType" value="DEFAULT_WRAPPED" />
         <option name="externalProjectPath" value="$PROJECT_DIR$" />
         <option name="modules">
@@ -25,7 +25,6 @@
           </set>
         </option>
         <option name="resolveModulePerSourceSet" value="false" />
-        <option name="useQualifiedModuleNames" value="true" />
       </GradleProjectSettings>
     </option>
   </component>

+ 0 - 12
.idea/runConfigurations.xml

@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
-  <component name="RunConfigurationProducerService">
-    <option name="ignoredProducers">
-      <set>
-        <option value="org.jetbrains.plugins.gradle.execution.test.runner.AllInPackageGradleConfigurationProducer" />
-        <option value="org.jetbrains.plugins.gradle.execution.test.runner.TestClassGradleConfigurationProducer" />
-        <option value="org.jetbrains.plugins.gradle.execution.test.runner.TestMethodGradleConfigurationProducer" />
-      </set>
-    </option>
-  </component>
-</project>

+ 15 - 15
app/src/main/java/com/sheep/gamegroup/greendao/download/DaoMaster.java

@@ -21,28 +21,28 @@ public class DaoMaster extends AbstractDaoMaster {
 
     /** Creates underlying database table using DAOs. */
     public static void createAllTables(Database db, boolean ifNotExists) {
+        AcceptTaskRecordDao.createTable(db, ifNotExists);
+        AccountDao.createTable(db, ifNotExists);
         AppdownloadBeanDao.createTable(db, ifNotExists);
-        SheepAdDao.createTable(db, ifNotExists);
         DownLoadInfoDao.createTable(db, ifNotExists);
-        SearchRecordDao.createTable(db, ifNotExists);
-        AccountDao.createTable(db, ifNotExists);
-        SdkLoginUserDao.createTable(db, ifNotExists);
         ProcessRecordDao.createTable(db, ifNotExists);
-        AcceptTaskRecordDao.createTable(db, ifNotExists);
         ScreenShotRecordDao.createTable(db, ifNotExists);
+        SdkLoginUserDao.createTable(db, ifNotExists);
+        SearchRecordDao.createTable(db, ifNotExists);
+        SheepAdDao.createTable(db, ifNotExists);
     }
 
     /** Drops underlying database table using DAOs. */
     public static void dropAllTables(Database db, boolean ifExists) {
+        AcceptTaskRecordDao.dropTable(db, ifExists);
+        AccountDao.dropTable(db, ifExists);
         AppdownloadBeanDao.dropTable(db, ifExists);
-        SheepAdDao.dropTable(db, ifExists);
         DownLoadInfoDao.dropTable(db, ifExists);
-        SearchRecordDao.dropTable(db, ifExists);
-        AccountDao.dropTable(db, ifExists);
-        SdkLoginUserDao.dropTable(db, ifExists);
         ProcessRecordDao.dropTable(db, ifExists);
-        AcceptTaskRecordDao.dropTable(db, ifExists);
         ScreenShotRecordDao.dropTable(db, ifExists);
+        SdkLoginUserDao.dropTable(db, ifExists);
+        SearchRecordDao.dropTable(db, ifExists);
+        SheepAdDao.dropTable(db, ifExists);
     }
 
     /**
@@ -61,15 +61,15 @@ public class DaoMaster extends AbstractDaoMaster {
 
     public DaoMaster(Database db) {
         super(db, SCHEMA_VERSION);
+        registerDaoClass(AcceptTaskRecordDao.class);
+        registerDaoClass(AccountDao.class);
         registerDaoClass(AppdownloadBeanDao.class);
-        registerDaoClass(SheepAdDao.class);
         registerDaoClass(DownLoadInfoDao.class);
-        registerDaoClass(SearchRecordDao.class);
-        registerDaoClass(AccountDao.class);
-        registerDaoClass(SdkLoginUserDao.class);
         registerDaoClass(ProcessRecordDao.class);
-        registerDaoClass(AcceptTaskRecordDao.class);
         registerDaoClass(ScreenShotRecordDao.class);
+        registerDaoClass(SdkLoginUserDao.class);
+        registerDaoClass(SearchRecordDao.class);
+        registerDaoClass(SheepAdDao.class);
     }
 
     public DaoSession newSession() {

+ 65 - 65
app/src/main/java/com/sheep/gamegroup/greendao/download/DaoSession.java

@@ -8,25 +8,25 @@ import org.greenrobot.greendao.database.Database;
 import org.greenrobot.greendao.identityscope.IdentityScopeType;
 import org.greenrobot.greendao.internal.DaoConfig;
 
+import com.sheep.gamegroup.greendao.download.AcceptTaskRecord;
+import com.sheep.gamegroup.greendao.download.Account;
 import com.sheep.gamegroup.greendao.download.AppdownloadBean;
-import com.sheep.gamegroup.greendao.download.SheepAd;
 import com.sheep.gamegroup.greendao.download.DownLoadInfo;
-import com.sheep.gamegroup.greendao.download.SearchRecord;
-import com.sheep.gamegroup.greendao.download.Account;
-import com.sheep.gamegroup.greendao.download.SdkLoginUser;
 import com.sheep.gamegroup.greendao.download.ProcessRecord;
-import com.sheep.gamegroup.greendao.download.AcceptTaskRecord;
 import com.sheep.gamegroup.greendao.download.ScreenShotRecord;
+import com.sheep.gamegroup.greendao.download.SdkLoginUser;
+import com.sheep.gamegroup.greendao.download.SearchRecord;
+import com.sheep.gamegroup.greendao.download.SheepAd;
 
+import com.sheep.gamegroup.greendao.download.AcceptTaskRecordDao;
+import com.sheep.gamegroup.greendao.download.AccountDao;
 import com.sheep.gamegroup.greendao.download.AppdownloadBeanDao;
-import com.sheep.gamegroup.greendao.download.SheepAdDao;
 import com.sheep.gamegroup.greendao.download.DownLoadInfoDao;
-import com.sheep.gamegroup.greendao.download.SearchRecordDao;
-import com.sheep.gamegroup.greendao.download.AccountDao;
-import com.sheep.gamegroup.greendao.download.SdkLoginUserDao;
 import com.sheep.gamegroup.greendao.download.ProcessRecordDao;
-import com.sheep.gamegroup.greendao.download.AcceptTaskRecordDao;
 import com.sheep.gamegroup.greendao.download.ScreenShotRecordDao;
+import com.sheep.gamegroup.greendao.download.SdkLoginUserDao;
+import com.sheep.gamegroup.greendao.download.SearchRecordDao;
+import com.sheep.gamegroup.greendao.download.SheepAdDao;
 
 // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT.
 
@@ -37,124 +37,124 @@ import com.sheep.gamegroup.greendao.download.ScreenShotRecordDao;
  */
 public class DaoSession extends AbstractDaoSession {
 
+    private final DaoConfig acceptTaskRecordDaoConfig;
+    private final DaoConfig accountDaoConfig;
     private final DaoConfig appdownloadBeanDaoConfig;
-    private final DaoConfig sheepAdDaoConfig;
     private final DaoConfig downLoadInfoDaoConfig;
-    private final DaoConfig searchRecordDaoConfig;
-    private final DaoConfig accountDaoConfig;
-    private final DaoConfig sdkLoginUserDaoConfig;
     private final DaoConfig processRecordDaoConfig;
-    private final DaoConfig acceptTaskRecordDaoConfig;
     private final DaoConfig screenShotRecordDaoConfig;
+    private final DaoConfig sdkLoginUserDaoConfig;
+    private final DaoConfig searchRecordDaoConfig;
+    private final DaoConfig sheepAdDaoConfig;
 
+    private final AcceptTaskRecordDao acceptTaskRecordDao;
+    private final AccountDao accountDao;
     private final AppdownloadBeanDao appdownloadBeanDao;
-    private final SheepAdDao sheepAdDao;
     private final DownLoadInfoDao downLoadInfoDao;
-    private final SearchRecordDao searchRecordDao;
-    private final AccountDao accountDao;
-    private final SdkLoginUserDao sdkLoginUserDao;
     private final ProcessRecordDao processRecordDao;
-    private final AcceptTaskRecordDao acceptTaskRecordDao;
     private final ScreenShotRecordDao screenShotRecordDao;
+    private final SdkLoginUserDao sdkLoginUserDao;
+    private final SearchRecordDao searchRecordDao;
+    private final SheepAdDao sheepAdDao;
 
     public DaoSession(Database db, IdentityScopeType type, Map<Class<? extends AbstractDao<?, ?>>, DaoConfig>
             daoConfigMap) {
         super(db);
 
+        acceptTaskRecordDaoConfig = daoConfigMap.get(AcceptTaskRecordDao.class).clone();
+        acceptTaskRecordDaoConfig.initIdentityScope(type);
+
+        accountDaoConfig = daoConfigMap.get(AccountDao.class).clone();
+        accountDaoConfig.initIdentityScope(type);
+
         appdownloadBeanDaoConfig = daoConfigMap.get(AppdownloadBeanDao.class).clone();
         appdownloadBeanDaoConfig.initIdentityScope(type);
 
-        sheepAdDaoConfig = daoConfigMap.get(SheepAdDao.class).clone();
-        sheepAdDaoConfig.initIdentityScope(type);
-
         downLoadInfoDaoConfig = daoConfigMap.get(DownLoadInfoDao.class).clone();
         downLoadInfoDaoConfig.initIdentityScope(type);
 
-        searchRecordDaoConfig = daoConfigMap.get(SearchRecordDao.class).clone();
-        searchRecordDaoConfig.initIdentityScope(type);
+        processRecordDaoConfig = daoConfigMap.get(ProcessRecordDao.class).clone();
+        processRecordDaoConfig.initIdentityScope(type);
 
-        accountDaoConfig = daoConfigMap.get(AccountDao.class).clone();
-        accountDaoConfig.initIdentityScope(type);
+        screenShotRecordDaoConfig = daoConfigMap.get(ScreenShotRecordDao.class).clone();
+        screenShotRecordDaoConfig.initIdentityScope(type);
 
         sdkLoginUserDaoConfig = daoConfigMap.get(SdkLoginUserDao.class).clone();
         sdkLoginUserDaoConfig.initIdentityScope(type);
 
-        processRecordDaoConfig = daoConfigMap.get(ProcessRecordDao.class).clone();
-        processRecordDaoConfig.initIdentityScope(type);
-
-        acceptTaskRecordDaoConfig = daoConfigMap.get(AcceptTaskRecordDao.class).clone();
-        acceptTaskRecordDaoConfig.initIdentityScope(type);
+        searchRecordDaoConfig = daoConfigMap.get(SearchRecordDao.class).clone();
+        searchRecordDaoConfig.initIdentityScope(type);
 
-        screenShotRecordDaoConfig = daoConfigMap.get(ScreenShotRecordDao.class).clone();
-        screenShotRecordDaoConfig.initIdentityScope(type);
+        sheepAdDaoConfig = daoConfigMap.get(SheepAdDao.class).clone();
+        sheepAdDaoConfig.initIdentityScope(type);
 
+        acceptTaskRecordDao = new AcceptTaskRecordDao(acceptTaskRecordDaoConfig, this);
+        accountDao = new AccountDao(accountDaoConfig, this);
         appdownloadBeanDao = new AppdownloadBeanDao(appdownloadBeanDaoConfig, this);
-        sheepAdDao = new SheepAdDao(sheepAdDaoConfig, this);
         downLoadInfoDao = new DownLoadInfoDao(downLoadInfoDaoConfig, this);
-        searchRecordDao = new SearchRecordDao(searchRecordDaoConfig, this);
-        accountDao = new AccountDao(accountDaoConfig, this);
-        sdkLoginUserDao = new SdkLoginUserDao(sdkLoginUserDaoConfig, this);
         processRecordDao = new ProcessRecordDao(processRecordDaoConfig, this);
-        acceptTaskRecordDao = new AcceptTaskRecordDao(acceptTaskRecordDaoConfig, this);
         screenShotRecordDao = new ScreenShotRecordDao(screenShotRecordDaoConfig, this);
+        sdkLoginUserDao = new SdkLoginUserDao(sdkLoginUserDaoConfig, this);
+        searchRecordDao = new SearchRecordDao(searchRecordDaoConfig, this);
+        sheepAdDao = new SheepAdDao(sheepAdDaoConfig, this);
 
+        registerDao(AcceptTaskRecord.class, acceptTaskRecordDao);
+        registerDao(Account.class, accountDao);
         registerDao(AppdownloadBean.class, appdownloadBeanDao);
-        registerDao(SheepAd.class, sheepAdDao);
         registerDao(DownLoadInfo.class, downLoadInfoDao);
-        registerDao(SearchRecord.class, searchRecordDao);
-        registerDao(Account.class, accountDao);
-        registerDao(SdkLoginUser.class, sdkLoginUserDao);
         registerDao(ProcessRecord.class, processRecordDao);
-        registerDao(AcceptTaskRecord.class, acceptTaskRecordDao);
         registerDao(ScreenShotRecord.class, screenShotRecordDao);
+        registerDao(SdkLoginUser.class, sdkLoginUserDao);
+        registerDao(SearchRecord.class, searchRecordDao);
+        registerDao(SheepAd.class, sheepAdDao);
     }
     
     public void clear() {
+        acceptTaskRecordDaoConfig.clearIdentityScope();
+        accountDaoConfig.clearIdentityScope();
         appdownloadBeanDaoConfig.clearIdentityScope();
-        sheepAdDaoConfig.clearIdentityScope();
         downLoadInfoDaoConfig.clearIdentityScope();
-        searchRecordDaoConfig.clearIdentityScope();
-        accountDaoConfig.clearIdentityScope();
-        sdkLoginUserDaoConfig.clearIdentityScope();
         processRecordDaoConfig.clearIdentityScope();
-        acceptTaskRecordDaoConfig.clearIdentityScope();
         screenShotRecordDaoConfig.clearIdentityScope();
+        sdkLoginUserDaoConfig.clearIdentityScope();
+        searchRecordDaoConfig.clearIdentityScope();
+        sheepAdDaoConfig.clearIdentityScope();
     }
 
-    public AppdownloadBeanDao getAppdownloadBeanDao() {
-        return appdownloadBeanDao;
+    public AcceptTaskRecordDao getAcceptTaskRecordDao() {
+        return acceptTaskRecordDao;
     }
 
-    public SheepAdDao getSheepAdDao() {
-        return sheepAdDao;
+    public AccountDao getAccountDao() {
+        return accountDao;
+    }
+
+    public AppdownloadBeanDao getAppdownloadBeanDao() {
+        return appdownloadBeanDao;
     }
 
     public DownLoadInfoDao getDownLoadInfoDao() {
         return downLoadInfoDao;
     }
 
-    public SearchRecordDao getSearchRecordDao() {
-        return searchRecordDao;
+    public ProcessRecordDao getProcessRecordDao() {
+        return processRecordDao;
     }
 
-    public AccountDao getAccountDao() {
-        return accountDao;
+    public ScreenShotRecordDao getScreenShotRecordDao() {
+        return screenShotRecordDao;
     }
 
     public SdkLoginUserDao getSdkLoginUserDao() {
         return sdkLoginUserDao;
     }
 
-    public ProcessRecordDao getProcessRecordDao() {
-        return processRecordDao;
-    }
-
-    public AcceptTaskRecordDao getAcceptTaskRecordDao() {
-        return acceptTaskRecordDao;
+    public SearchRecordDao getSearchRecordDao() {
+        return searchRecordDao;
     }
 
-    public ScreenShotRecordDao getScreenShotRecordDao() {
-        return screenShotRecordDao;
+    public SheepAdDao getSheepAdDao() {
+        return sheepAdDao;
     }
 
 }

+ 2 - 5
app/src/main/java/com/sheep/gamegroup/util/ViewUtil.java

@@ -282,11 +282,8 @@ public class ViewUtil {
 
     //加载js
     public static void loadJs(com.tencent.smtt.sdk.WebView mWebView, String js) {
-        loadJs(mWebView, js, new com.tencent.smtt.sdk.ValueCallback<String>() {
-            @Override
-            public void onReceiveValue(String value) {
-                //此处为 js 返回的结果
-            }
+        loadJs(mWebView, js, value -> {
+            //此处为 js 返回的结果
         });
     }
 

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

@@ -95,6 +95,7 @@ public class ActMiDong extends BaseActivity {
 
             @Override
             public void onPageSelected(int i) {
+
                 curPosition = i;
 //                FIND_TAG.onEvent("find_tag_name", ListUtil.hasIndex(list, i - 1) ? list.get(i - 1).getName() : "全部");
             }
@@ -104,7 +105,7 @@ public class ActMiDong extends BaseActivity {
 
             }
         });
-        pager.setCurrentItem(0);
+        pager.setCurrentItem(1);
         pager.setOffscreenPageLimit(fgtMiDongList.size());
         CommonUtil.getInstance().reflex(indicator, this);
         AdManager.getInstance(SheepApp.getInstance()).setDownloadListener(new AppDownloadListener() {

+ 36 - 34
app/src/main/java/com/sheep/gamegroup/view/activity/ActXianWanWeb.java

@@ -1,7 +1,9 @@
 package com.sheep.gamegroup.view.activity;
 
+import android.annotation.SuppressLint;
 import android.app.Activity;
 import android.os.Build;
+import android.util.Log;
 import android.view.KeyEvent;
 import android.view.View;
 import android.widget.TextView;
@@ -53,6 +55,7 @@ public class ActXianWanWeb extends BaseActivity {
         return R.layout.activity_guide_on_hook;
     }
 
+    @SuppressLint("SetJavaScriptEnabled")
     @Override
     public void initView() {
         activity = this;
@@ -62,52 +65,49 @@ public class ActXianWanWeb extends BaseActivity {
                 .getInstance()
                 .setShowOrHide(this, true)
                 .setTitle(this, "闲玩")
-                .setTitleFinish(this, new View.OnClickListener() {
-                    @Override
-                    public void onClick(View v) {
-                        if (mWebView.canGoBack()) {
-                            mWebView.goBack();
-                        } else {
-                            activity.finish();
-                        }
+                .setTitleFinish(this, v -> {
+                    if (mWebView.canGoBack()) {
+                        mWebView.goBack();
+                    } else {
+                        activity.finish();
                     }
                 })
-                .setRightImgBotton(activity, R.mipmap.question_black_img, new View.OnClickListener() {
-                    @Override
-                    public void onClick(View view) {
-                        ViewUtil.showMsgDialog(activity, new DialogConfig().setTitle("温馨提示").setBtnLeftText("我知道了")
-                                .setMsg(getString(R.string.cash_task_without_share_friend_benefit)));
-                    }
-                });
+                .setRightImgBotton(activity, R.mipmap.question_black_img, view -> ViewUtil.showMsgDialog(activity, new DialogConfig().setTitle("温馨提示").setBtnLeftText("我知道了")
+                        .setMsg(getString(R.string.cash_task_without_share_friend_benefit))));
         tv_next.setVisibility(View.GONE);
         if (xianWanEntity == null) {
             return;
         }
-
         webViewSettings = mWebView.getSettings();
+        webViewSettings.setDefaultTextEncodingName("UTF-8");
+        webViewSettings.setAllowFileAccess(true);
+        webViewSettings.setDomStorageEnabled(true);
         webViewSettings.setJavaScriptCanOpenWindowsAutomatically(true);
         if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
-//            webViewSettings.setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
+//          webViewSettings.setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
         }
+        Log.i("OkHttpUrl",xianWanEntity.getJsUrl());
         initJsData();
     }
 
     private void initJsData() {
         OkHttpUtils.get()
-                .url(xianWanEntity.getJsUrl() + "")
-                .build()
-                .execute(new StringCallback() {
-                    @Override
-                    public void onError(Call call, Exception e, int id) {
-                        G.showToast(R.string.service_data_error);
-                    }
+            .url(xianWanEntity.getJsUrl() + "")
+            .build()
+            .execute(new StringCallback() {
+                @Override
+                public void onError(Call call, Exception e, int id) {
+                    G.showToast(R.string.service_data_error);
+                    LogUtil.logD("Error"+e.toString());
+                }
 
-                    @Override
-                    public void onResponse(String response, int id) {
-                        js = response;
-                        loadUrl();
-                    }
-                });
+                @Override
+                public void onResponse(String response, int id) {
+                    js = response;
+                    LogUtil.logD("response"+response);
+                    loadUrl();
+                }
+            });
     }
 
     @Override
@@ -148,10 +148,10 @@ public class ActXianWanWeb extends BaseActivity {
             public void onPageFinished(WebView view, String url) {
                 super.onPageFinished(view, url);
                 loadJs();
-//                loadTestJs();
+               // loadTestJs();
             }
         });
-        webViewSettings.setJavaScriptEnabled(true);
+
         mWebView.addJavascriptInterface(new WebViewJs(this, mWebView), "android");
 
         mWebView.setOnKeyListener((v, keyCode, event) -> {
@@ -160,12 +160,14 @@ public class ActXianWanWeb extends BaseActivity {
                 return true;
             }
             return false;
-        });
+        });  
+        String sret = null;
         if (Build.VERSION.SDK_INT > Build.VERSION_CODES.P) {
+         
             int ret = MdidSdkHelper.InitSdk(this, true, (isSupport, supplier) -> {
                 mWebView.loadUrl(assemblyData(supplier.getOAID()));
             });
-            LogUtil.logI("get oaid result:" + ret);
+           sret= Integer.toString(ret);
         } else {
             mWebView.loadUrl(assemblyData(""));
         }

+ 4 - 5
app/src/main/res/layout/activity_guide_on_hook.xml

@@ -9,12 +9,11 @@
     <com.tencent.smtt.sdk.WebView
         android:id="@+id/webview"
         android:layout_width="match_parent"
-        android:layout_height="0dp"
+        android:layout_height="266dp"
         android:layout_weight="1"
-        android:layout_margin="@dimen/content_padding_10"
-        android:padding="@dimen/content_padding_10"
-        android:scrollbars="none"
-        android:background="@drawable/x_shap_shadow_bg_rectgangle_white"/>
+        android:background="@drawable/x_shap_shadow_bg_rectgangle_white"
+        android:padding="@dimen/content_padding_4"
+        android:scrollbars="none" />
     <TextView
         android:id="@+id/tv_next"
         style="@style/style_button"