package com.androidquery.service; import android.app.Activity; import android.app.AlertDialog; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.content.pm.ApplicationInfo; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.graphics.drawable.Drawable; import android.net.Uri; import android.preference.PreferenceManager; import android.text.Editable; import android.text.Html; import com.androidquery.AQuery; import com.androidquery.callback.AjaxCallback; import com.androidquery.callback.AjaxStatus; import com.androidquery.util.AQUtility; import com.androidquery.util.Constants; import com.baidu.mobads.sdk.internal.a; import com.bytedance.sdk.openadsdk.api.plugin.PluginConstants; import com.mbridge.msdk.foundation.entity.CampaignEx; import com.sigmob.sdk.base.h; import com.sigmob.sdk.base.mta.PointCategory; import com.ss.android.download.api.constant.BaseConstants; import java.util.Locale; import org.json.JSONObject; import org.xml.sax.XMLReader; public class MarketService { private static final String BULLET = "•"; public static final int MAJOR = 2; public static final int MINOR = 1; public static final int REVISION = 0; private static final String SKIP_VERSION = "aqs.skip"; private static ApplicationInfo ai; private static PackageInfo pi; private Activity act; private AQuery aq; private boolean completed; private long expire = 720000; private boolean fetch; private boolean force; private Handler handler; private int level = 0; private String locale; private int progress; private String rateUrl; private String updateUrl; private String version; private String getHost() { return "https://androidquery.appspot.com"; } public MarketService(Activity activity) { this.act = activity; this.aq = new AQuery(activity); this.handler = new Handler(this, null); this.locale = Locale.getDefault().toString(); String marketUrl = getMarketUrl(); this.rateUrl = marketUrl; this.updateUrl = marketUrl; } public MarketService rateUrl(String str) { this.rateUrl = str; return this; } public MarketService level(int i) { this.level = i; return this; } public MarketService updateUrl(String str) { this.updateUrl = str; return this; } public MarketService locale(String str) { this.locale = str; return this; } public MarketService progress(int i) { this.progress = i; return this; } public MarketService force(boolean z) { this.force = z; return this; } public MarketService expire(long j) { this.expire = j; return this; } private ApplicationInfo getApplicationInfo() { if (ai == null) { ai = this.act.getApplicationInfo(); } return ai; } private PackageInfo getPackageInfo() { if (pi == null) { try { pi = this.act.getPackageManager().getPackageInfo(getAppId(), 0); } catch (PackageManager.NameNotFoundException e) { e.printStackTrace(); } } return pi; } /* access modifiers changed from: private */ /* access modifiers changed from: public */ private String getQueryUrl() { String str = String.valueOf(getHost()) + "/api/market?app=" + getAppId() + "&locale=" + this.locale + "&version=" + getVersion() + "&code=" + getVersionCode() + "&aq=" + Constants.VERSION; if (!this.force) { return str; } return String.valueOf(str) + "&force=true"; } private String getAppId() { return getApplicationInfo().packageName; } private Drawable getAppIcon() { return getApplicationInfo().loadIcon(this.act.getPackageManager()); } private String getVersion() { return getPackageInfo().versionName; } private int getVersionCode() { return getPackageInfo().versionCode; } public void checkVersion() { String queryUrl = getQueryUrl(); AjaxCallback ajaxCallback = new AjaxCallback(); ((AjaxCallback) ((AjaxCallback) ((AjaxCallback) ((AjaxCallback) ajaxCallback.url(queryUrl)).type(JSONObject.class)).handler(this.handler, "marketCb")).fileCache(!this.force)).expire(this.expire); ((AQuery) this.aq.progress(this.progress)).ajax(ajaxCallback); } /* access modifiers changed from: private */ public static boolean openUrl(Activity activity, String str) { if (str == null) { return false; } try { activity.startActivity(new Intent("android.intent.action.VIEW", Uri.parse(str))); return true; } catch (Exception unused) { return false; } } private String getMarketUrl() { String appId = getAppId(); return BaseConstants.MARKET_PREFIX + appId; } /* access modifiers changed from: protected */ public void callback(String str, JSONObject jSONObject, AjaxStatus ajaxStatus) { if (jSONObject != null) { String optString = jSONObject.optString("version", "0"); int optInt = jSONObject.optInt(PluginConstants.KEY_ERROR_CODE, 0); AQUtility.debug("version", String.valueOf(getVersion()) + "->" + optString + ":" + getVersionCode() + "->" + optInt); AQUtility.debug("outdated", Boolean.valueOf(outdated(optString, optInt))); if (this.force || outdated(optString, optInt)) { showUpdateDialog(jSONObject); } } } private boolean outdated(String str, int i) { if (str.equals(getSkipVersion(this.act))) { return false; } String version2 = getVersion(); int versionCode = getVersionCode(); if (version2.equals(str) || versionCode > i) { return false; } return requireUpdate(version2, str, this.level); } /* JADX WARNING: Removed duplicated region for block: B:23:0x004f A[RETURN] */ /* JADX WARNING: Removed duplicated region for block: B:24:0x0050 A[RETURN] */ private boolean requireUpdate(String str, String str2, int i) { if (str.equals(str2)) { return false; } try { String[] split = str.split("\\."); String[] split2 = str2.split("\\."); if (split.length >= 3) { if (split2.length >= 3) { if (i != 0) { if (i != 1) { if (i != 2) { return true; } return split[split.length - 3].equals(split2[split2.length - 3]); } } else if (!split[split.length - 1].equals(split2[split2.length - 1])) { return true; } if (!split[split.length - 2].equals(split2[split2.length - 2])) { return true; } if (split[split.length - 3].equals(split2[split2.length - 3])) { } } } return true; } catch (Exception e) { AQUtility.report(e); return true; } } /* access modifiers changed from: protected */ public void showUpdateDialog(JSONObject jSONObject) { if (jSONObject != null && this.version == null && isActive()) { JSONObject optJSONObject = jSONObject.optJSONObject("dialog"); String optString = optJSONObject.optString(h.p, "Update"); String optString2 = optJSONObject.optString(PointCategory.SKIP, "Skip"); String optString3 = optJSONObject.optString("rate", "Rate"); String optString4 = optJSONObject.optString("wbody", ""); String optString5 = optJSONObject.optString(CampaignEx.JSON_KEY_TITLE, "Update Available"); AQUtility.debug("wbody", optString4); this.version = jSONObject.optString("version", null); AlertDialog create = new AlertDialog.Builder(this.act).setIcon(getAppIcon()).setTitle(optString5).setPositiveButton(optString3, this.handler).setNeutralButton(optString2, this.handler).setNegativeButton(optString, this.handler).create(); create.setMessage(Html.fromHtml(patchBody(optString4), null, this.handler)); this.aq.show(create); } } private static String patchBody(String str) { return "<small>" + str + "</small>"; } /* access modifiers changed from: private */ public static void setSkipVersion(Context context, String str) { PreferenceManager.getDefaultSharedPreferences(context).edit().putString(SKIP_VERSION, str).commit(); } private static String getSkipVersion(Context context) { return PreferenceManager.getDefaultSharedPreferences(context).getString(SKIP_VERSION, null); } private boolean isActive() { return !this.act.isFinishing(); } /* access modifiers changed from: private */ public class Handler implements DialogInterface.OnClickListener, Html.TagHandler { private Handler() { } /* synthetic */ Handler(MarketService marketService, Handler handler) { this(); } public void marketCb(String str, JSONObject jSONObject, AjaxStatus ajaxStatus) { if (!MarketService.this.act.isFinishing()) { if (jSONObject != null) { String optString = jSONObject.optString("status"); if ("1".equals(optString)) { if (jSONObject.has("dialog")) { cb(str, jSONObject, ajaxStatus); } if (!MarketService.this.fetch && jSONObject.optBoolean("fetch", false) && ajaxStatus.getSource() == 1) { MarketService.this.fetch = true; String optString2 = jSONObject.optString("marketUrl", null); AjaxCallback ajaxCallback = new AjaxCallback(); ((AjaxCallback) ((AjaxCallback) ajaxCallback.url(optString2)).type(String.class)).handler(this, "detailCb"); ((AQuery) MarketService.this.aq.progress(MarketService.this.progress)).ajax(ajaxCallback); } } else if ("0".equals(optString)) { ajaxStatus.invalidate(); } else { cb(str, jSONObject, ajaxStatus); } } else { cb(str, jSONObject, ajaxStatus); } } } private void cb(String str, JSONObject jSONObject, AjaxStatus ajaxStatus) { if (!MarketService.this.completed) { MarketService.this.completed = true; MarketService.this.progress = 0; MarketService.this.callback(str, jSONObject, ajaxStatus); } } public void detailCb(String str, String str2, AjaxStatus ajaxStatus) { if (str2 != null && str2.length() > 1000) { String queryUrl = MarketService.this.getQueryUrl(); AjaxCallback ajaxCallback = new AjaxCallback(); ((AjaxCallback) ((AjaxCallback) ajaxCallback.url(queryUrl)).type(JSONObject.class)).handler(this, "marketCb"); ajaxCallback.param(a.f, str2); ((AQuery) MarketService.this.aq.progress(MarketService.this.progress)).ajax(ajaxCallback); } } public void onClick(DialogInterface dialogInterface, int i) { if (i == -3) { MarketService.setSkipVersion(MarketService.this.act, MarketService.this.version); } else if (i == -2) { MarketService.openUrl(MarketService.this.act, MarketService.this.updateUrl); } else if (i == -1) { MarketService.openUrl(MarketService.this.act, MarketService.this.rateUrl); } } public void handleTag(boolean z, String str, Editable editable, XMLReader xMLReader) { if (!"li".equals(str)) { return; } if (z) { editable.append(" "); editable.append(MarketService.BULLET); editable.append(" "); return; } editable.append("\n"); } } }