package com.novelbook.android.netutils; import android.Manifest; import android.app.Activity; import android.content.Context; import android.net.ConnectivityManager; import android.net.NetworkInfo; import android.os.Build; import android.text.TextUtils; import android.util.Log; import com.google.gson.Gson; import com.google.gson.JsonObject; import com.novelbook.android.AD.toutiao.TTAdManagerHolder; import com.novelbook.android.Activity_base; import com.novelbook.android.BookActivity; import com.novelbook.android.BuildConfig; import com.novelbook.android.Main2Activity; import com.novelbook.android.MyApp; import com.novelbook.android.bean.AdSetting; import com.novelbook.android.db.Novel; import com.novelbook.android.netsubscribe.BookSubscribe; import com.novelbook.android.upgrade.UpdateManager; import com.novelbook.android.utils.CommonUtil; import com.novelbook.android.utils.Config; import com.novelbook.android.utils.Constants; import com.novelbook.android.utils.GsonUtil; import org.json.JSONException; import org.json.JSONObject; import java.util.Date; import java.util.Random; import okhttp3.Call; import static com.novelbook.android.FileActivity.EXTERNAL_STORAGE_REQ_CODE; /** * Created by 眼神 on 2018/3/27. * 网络请求工具类 */ public class NetUtil { private static final String TAG= NetUtil.class.getSimpleName(); public static int currentRequestTag =0; public static String hosts; public static boolean isRequestHosts; /* public static String getUrl(String key){ try { JSONObject jsonObject = getHost(); if(jsonObject==null && key == "/api/g"){ return URLConstant.getRootUrl(); } RandomHost rh = new RandomHost(jsonObject,key); String url = rh.next(); if(!url.endsWith("/api/")){ url+="/api/"; } return url; } catch (JSONException e) { e.printStackTrace(); } return ""; }*/ public static boolean isHostExpires(){ if(Constants.LAST_G==0){ return false; } long t =Constants.MAXAGE_G*1000 - (new Date().getTime() - Constants.LAST_G ) ; Log.d(TAG, "HttpMethods intercept isHostExpires: time left is " +CommonUtil.getTimeCnt4Read(t,true)); // t=0; return t < 0; } public static JSONObject getHost(boolean isMainApi) { JSONObject jsonObject=null; if(!isMainApi && isHostExpires()){ Log.d(TAG, String.format("HttpMethods intercept isHostExpires prepare book: main API maxAge %s, is expired, loading main API again ",CommonUtil.getTimeCnt4Read(Constants.MAXAGE_G*1000,true))); getHostPolicy(); } if (TextUtils.isEmpty(hosts)) { Config config = Config.getInstance(); hosts = config.getBaseUrl(); Log.d(TAG, " hostconfig gethosts " +hosts); if(TextUtils.isEmpty(hosts)){ return null; } } try { jsonObject = new JSONObject(hosts); if (jsonObject != null && TextUtils.isEmpty(Constants.announcement)) { initHostConstants(jsonObject); } } catch (JSONException e) { e.printStackTrace(); } Log.d(TAG, "getUrl: host is " + hosts); if (TextUtils.isEmpty(hosts)) { Log.e(TAG, "getHosts: error on get hosts"); } return jsonObject; } /** * 判断是否有网络连接 * * @return */ public static boolean isNetworkConnected() { ConnectivityManager mConnectivityManager = (ConnectivityManager) MyApp.applicationContext .getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo mNetworkInfo = mConnectivityManager .getActiveNetworkInfo(); if (mNetworkInfo != null) { return mNetworkInfo.isAvailable(); } return false; } /** * 判断WIFI网络是否可用 * * @param context * @return */ public static boolean isWifiConnected(Context context) { if (context != null) { ConnectivityManager mConnectivityManager = (ConnectivityManager) MyApp.applicationContext .getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo mWiFiNetworkInfo = mConnectivityManager .getNetworkInfo(ConnectivityManager.TYPE_WIFI); if (mWiFiNetworkInfo != null) { return mWiFiNetworkInfo.isAvailable(); } } return false; } public static boolean isWiFiActive() { ConnectivityManager connectivity = (ConnectivityManager) MyApp.applicationContext .getSystemService(Context.CONNECTIVITY_SERVICE); if (connectivity != null) { NetworkInfo[] info = connectivity.getAllNetworkInfo(); if (info != null) { for (int i = 0; i < info.length; i++) { if (info[i].getTypeName().equals("WIFI") && info[i].isConnected()) { return true; } } } } return false; } /** * 获取当前网络连接的类型信息 * * @return */ public static int getConnectedType() { if ( MyApp.applicationContext != null) { ConnectivityManager mConnectivityManager = (ConnectivityManager) MyApp.applicationContext .getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo mNetworkInfo = mConnectivityManager.getActiveNetworkInfo(); if (mNetworkInfo != null && mNetworkInfo.isAvailable()) { return mNetworkInfo.getType(); } } return -1; } public static void cancelRequest(int tag) { currentRequestTag =tag; for (Call call : HttpMethods.getOkClient().dispatcher().queuedCalls()) { Log.d(TAG, String.format("cancelRequest: queuedCalls ,request url %s, request TAG %s ,current Tag ",call.request().url(), call.request().tag(),tag)); if (!call.request().tag().equals(tag)) call.cancel(); } //B) go through the running calls and cancel if the tag matches: for (Call call : HttpMethods.getOkClient().dispatcher().runningCalls()) { Log.d(TAG, String.format("cancelRequest: request url %s, request TAG %s ,current Tag %s",call.request().url(), call.request().tag(),tag)); if (call.request().tag()!=null && !call.request().tag().equals(tag)) { call.cancel(); Log.d(TAG, String.format("cancelRequest: request url %s, request TAG %s ,current Tag %s, canceled.",call.request().url(), call.request().tag(),tag)); } } } public static String getUserAgent(){ String[] uas = { /*// Opera "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36 OPR/26.0.1656.60", "Opera/8.0 (Windows NT 5.1; U; en)", "Mozilla/5.0 (Windows NT 5.1; U; en; rv:1.8.1) Gecko/20061208 Firefox/2.0.0 Opera 9.50", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en) Opera 9.50", // Firefox "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0", "Mozilla/5.0 (X11; U; Linux x86_64; zh-CN; rv:1.9.2.10) Gecko/20100922 Ubuntu/10.10 (maverick) Firefox/3.6.10", // Safari "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.57.2 (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2", // chrome "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.71 Safari/537.36", "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11", "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.133 Safari/534.16", // 360 "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36", "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko", // 淘宝浏览器 "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.11 TaoBrowser/2.0 Safari/536.11", // 猎豹浏览器 "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.71 Safari/537.1 LBBROWSER", "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; LBBROWSER)", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; QQDownload 732; .NET4.0C; .NET4.0E; LBBROWSER)", // QQ浏览器 "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; QQBrowser/7.0.3698.400)", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; QQDownload 732; .NET4.0C; .NET4.0E)", // sogou浏览器 "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.84 Safari/535.11 SE 2.X MetaSr 1.0", "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; SV1; QQDownload 732; .NET4.0C; .NET4.0E; SE 2.X MetaSr 1.0)", // maxthon浏览器 */ "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Maxthon/4.4.3.4000 Chrome/30.0.1599.101 Safari/537.36", "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36", "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36", "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.2357.134 Safari/537.36", "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36", "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2848.83 Safari/537.36", "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 UBrowser/6.2.4094.1 Safari/537.36", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2864.75 Safari/537.36", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2894.32 Safari/537.36", "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.89 Safari/537.36", "Mozilla/5.0 (Windows NT 5.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2637.97 Safari/537.36", "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2770.24 Safari/537.36", "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:43.0) Gecko/20100101 Firefox/43.0", "Mozilla/5.0 (Windows NT 6.3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2955.47 Safari/537.36", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36", "Mozilla/5.0 (Windows NT 6.2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2981.31 Safari/537.36", "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36", "Mozilla/5.0 (Windows NT 5.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2672.36 Safari/537.36", "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506; .NET CLR 3.5.21022; .NET CLR 1.0.3705; .NET CLR 1.1.4322)", "Mozilla/5.0 (Windows NT 6.2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2912.2 Safari/537.36", "Mozilla/5.0 (Windows NT 6.2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2956.56 Safari/537.36", "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2812.77 Safari/537.36", "Mozilla/5.0 (Windows NT 5.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2650.71 Safari/537.36", "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2624.94 Safari/537.36", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2690.7 Safari/537.36", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2842.56 Safari/537.36", "Mozilla/5.0 (Windows NT 6.3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2963.76 Safari/537.36", "Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2641.13 Safari/537.36", "Mozilla/5.0 (Windows NT 6.2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2632.57 Safari/537.36", "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2932.36 Safari/537.36", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2635.65 Safari/537.36", "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2642.10 Safari/537.36", "Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2945.41 Safari/537.36", "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2975.95 Safari/537.36", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2884.62 Safari/537.36", "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2843.16 Safari/537.36", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0", "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2938.72 Safari/537.36", "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2660.98 Safari/537.36", "Mozilla/5.0 (Windows NT 6.3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2650.44 Safari/537.36", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2635.83 Safari/537.36", "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2963.74 Safari/537.36", "Mozilla/5.0 (Windows NT 5.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2682.72 Safari/537.36", "Mozilla/5.0 (Windows NT 5.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2635.64 Safari/537.36", "Mozilla/5.0 (Windows NT 5.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2915.8 Safari/537.36", "Mozilla/5.0 (Windows NT 5.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2624.61 Safari/537.36", "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2975.60 Safari/537.36", "Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2862.8 Safari/537.36" }; return uas[new Random().nextInt(uas.length-1)]; // return"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36"; // return "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36"; } public static String getCoverUrl(String url){ if (!TextUtils.isEmpty(url)) { if(!TextUtils.isEmpty(url) ){ if(url.startsWith("//")){ url ="http:"+url; } } } return url; } public static String getUserAgent(Context context) { String userAgent = ""; // APP版本 String versionName = CommonUtil.getVersionName(context); // 手机型号 String systemModel = CommonUtil.getSystemModel(); // 系统版本 String systemVersion = CommonUtil.getSystemVersion(); String deviceBrand = CommonUtil.getDeviceBrand(); String packagenm = CommonUtil.getPackageName(context); String channel =CommonUtil.getChannel(context);// BuildConfig.CHANNEL; userAgent = "Android/" +channel +"/"+ versionName + "/"+packagenm+"/" + deviceBrand + "/" + systemModel + "/" + systemVersion; return userAgent; } public static void getHostPolicy(){ Log.d(TAG, " hostconfig is in ... isRequestHosts? "+isRequestHosts ); if(isRequestHosts){ return; } isRequestHosts =true; BookSubscribe.getMastDomain(new OnSuccessAndFaultSub(new OnSuccessAndFaultListener() { @Override public void onSuccess(String result) { // mFirstPage= gson.fromJson(result, FirstPage.class); try { JSONObject jsonObject = new JSONObject(result); String resultstr = jsonObject.getString("hosts"); Config config =Config.createConfig(MyApp.applicationContext); config.setBaseUrl(resultstr); Log.d(TAG, " hostconfig sethosts " +resultstr); //config.setBaseUrl(resultstr); hosts=""; Constants.LAST_G = new Date().getTime(); String ads = jsonObject.getString("adsenseSetting"); config.setAdSetting(ads); Gson gson = new Gson(); Constants.AD_SETTING = gson.fromJson(ads, AdSetting.class); if (Constants.AD_SETTING.isShowAdsense() ) { TTAdManagerHolder.init(MyApp.applicationContext); } initHostConstants(jsonObject); Constants.PRE_LOAD_CHAPT = jsonObject.getBoolean("preLoadChapter"); config.setPreLoadChapter(Constants.PRE_LOAD_CHAPT); // Constants.minVersion = // config.setRootUrl( jsonObject.getString("masterDomains")); isRequestHosts =false; Constants.SHOW_NOVEL_CHAPTER_URL = jsonObject.getBoolean("showTargetSiteChatperUrl"); Constants.DECLARE =jsonObject.getString("disclaimer"); config.setShowChaptUrl( Constants.SHOW_NOVEL_CHAPTER_URL); config.setDeclare( Constants.DECLARE ); } catch (Exception e) { e.printStackTrace(); } } @Override public void onFault(String errorMsg) { //失败 Log.d(TAG, "error on get firstpage: " + errorMsg); isRequestHosts =false; } }, MyApp.applicationContext)); } static long lastUpgradCheck =0; static void initHostConstants( JSONObject jsonObject ) throws JSONException { Constants.announcement = jsonObject.getString("declare"); Constants.email = jsonObject.getString("email"); String tmp = jsonObject.getString("upgradeUrl"); Constants.updateUrl = TextUtils.isEmpty(tmp) ? Constants.updateUrl : tmp; Constants.minVersion = jsonObject.getInt("minVersion"); //if(jsonObject.has("showTargetSiteChatperUrl")) { //} Constants.version = CommonUtil.getVersionCode(MyApp.applicationContext); if (lastUpgradCheck == 0 || Constants.version < Constants.minVersion) { lastUpgradCheck = new Date().getTime(); checkUpdate(true); } // Gson gson = new Gson(); // AdSetting ads = gson.fromJson(adStr, AdSetting.class); /* Constants.AD_SPLASH_INVTERVAL = (long) 1000 * ads.getInt("splashInterval"); Constants.AD_SPLASH_PAGES = ads.getInt("splashPageCount"); Constants.AD_CHAPT_TOP_BANNER_PER_PAGE_COUNT = ads.getInt("times4ChapterTopBanner"); Constants.AD_CHAPT_NATIVE_BANNER_PER_PAGE_COUNT = ads.getInt("times4ChapterContentBanner"); Constants.AD_SPLASH_SOURCE = ads.getInt("splashSource"); Constants.AD_UNIFIED_RECYCLE_SOURCE = ads.getInt("unifiedReceycleSource"); Constants.AD_NATIVE_BANNER_SOURCE = ads.getInt("nativeBannerSource"); Constants.AD_BANNER_SOURCE = ads.getInt("bannerSource"); if (Constants.AD_CHAPT_TOP_BANNER_PER_PAGE_COUNT > 1 && Constants.AD_CHAPT_TOP_BANNER_PER_PAGE_COUNT == Constants.AD_CHAPT_NATIVE_BANNER_PER_PAGE_COUNT) { Constants.AD_CHAPT_TOP_BANNER_PER_PAGE_COUNT--; //顶部广告和页内广告要错开 } Log.d(TAG, String.format("initHostConstants: Constants.AD_SPLASH_INVTERVAL %s,AD_SPLASH_PAGES %s", Constants.AD_SPLASH_INVTERVAL, Constants.AD_SPLASH_PAGES)); */ // try { // }catch (Exception er){ // Log.e(TAG, "initHostConstants: update error ",er ); // } /* Config config = Config.getInstance(); Constants.SHOWAD = ads.getBoolean("showAdsense"); config.setShowAd(Constants.SHOWAD); config.setAdTopBannerRate(Constants.AD_CHAPT_TOP_BANNER_PER_PAGE_COUNT); config.setAdNativeBannerInLinesRate(Constants.AD_CHAPT_NATIVE_BANNER_PER_PAGE_COUNT); config.setAdSplashSource(Constants.AD_SPLASH_SOURCE); config.setAdUnifiedRecycleSource(Constants.AD_UNIFIED_RECYCLE_SOURCE); config.setAdNativeBannerSource(Constants.AD_NATIVE_BANNER_SOURCE); config.setAdBannerSource(Constants.AD_BANNER_SOURCE); Log.d(TAG, String.format("initHostConstants: Constants.AD_SPLASH_INVTERVAL %s,AD_SPLASH_PAGES %s, Constants.SHOWAD %s,Constants.AD_PRE_LOAD_CHAPT %s " , Constants.AD_SPLASH_INVTERVAL, Constants.AD_SPLASH_PAGES, Constants.SHOWAD, Constants.PRE_LOAD_CHAPT)); */ } public static void checkUpdate(boolean isSilence){ Activity_base currentActivity = MyApp.getCurrentActivity(); if(currentActivity==null){ return; } UpdateManager manager = new UpdateManager(currentActivity); if(isSilence) manager.checkUpdateSilence(); else manager.checkUpdate(); } }