Ice Scream Tycoon v1.0.4版本的 MD5 值为:f589390679eebf9f2a1d825e8c8a632e
以下内容为反编译后的 w.java 源代码,内容仅作参考
package com.fyber.inneractive.sdk.y;
import android.app.Activity;
import android.content.ActivityNotFoundException;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.content.pm.ResolveInfo;
import android.net.Uri;
import android.text.TextUtils;
import androidx.core.net.MailTo;
import com.fyber.inneractive.sdk.activities.InneractiveInternalBrowserActivity;
import com.fyber.inneractive.sdk.config.IAConfigManager;
import com.fyber.inneractive.sdk.util.IAlog;
import com.fyber.inneractive.sdk.y.m0;
import com.safedk.android.analytics.brandsafety.BrandSafetyUtils;
import com.safedk.android.utils.Logger;
import java.net.MalformedURLException;
import java.net.URISyntaxException;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
import java.util.PriorityQueue;
import java.util.TreeSet;
public class w extends i {
public static final class a {
public final c f2947a;
public final Throwable b;
public final String c;
public a(c cVar, Throwable th, String str) {
this.f2947a = cVar;
this.b = th;
this.c = str;
}
}
public static final class b extends Exception {
public b(String str) {
super(str);
}
}
public enum c {
FAILED,
OPENED_IN_INTERNAL_BROWSER,
OPEN_IN_EXTERNAL_APPLICATION,
OPEN_IN_EXTERNAL_BROWSER,
OPENED_USING_CHROME_NAVIGATE
}
public enum d {
DO_NOT_OPEN_IN_INTERNAL_BROWSER,
OPEN_EVERYTHING
}
public static String a(Context context) {
try {
return context.getClass().getName();
} catch (Throwable unused) {
return "failed";
}
}
public static boolean d(String str) {
return str.startsWith("http%3A%2F%2F") || str.startsWith("https%3A%2F%2F");
}
public static boolean e(String str) {
if (!str.startsWith("tel:") && !str.startsWith("voicemail:") && !str.startsWith("sms:") && !str.startsWith(MailTo.MAILTO_SCHEME) && !str.startsWith("geo:") && !str.startsWith("google.streetview:")) {
try {
new URL(str);
return false;
} catch (MalformedURLException unused) {
IAlog.e("Failed to open Url: %s", str);
}
}
return true;
}
public static boolean f(String str) {
if (str != null && (!com.fyber.inneractive.sdk.d.f.d() || IAConfigManager.K.s)) {
if (!((str.startsWith("http://") || str.startsWith("http%3A%2F%2F")) ? false : true)) {
return false;
}
}
return true;
}
public static void safedk_Context_startActivity_97cb3195734cf5c9cc3418feeafa6dd6(Context p0, Intent p1) {
Logger.d("SafeDK-Special|SafeDK: Call> Landroid/content/Context;->startActivity(Landroid/content/Intent;)V");
if (p1 == null) {
return;
}
BrandSafetyUtils.detectAdClick(p1, com.safedk.android.utils.d.u);
p0.startActivity(p1);
}
public static a a(Context context, String str, boolean z, d dVar, String str2) {
Uri uri;
boolean z2;
a aVar;
boolean z3;
Intent intent;
ResolveInfo resolveInfo;
m0 m0Var;
c cVar;
Uri uri2;
Uri uri3;
String a2 = a(context);
try {
uri = Uri.parse(str);
} catch (Exception unused) {
IAlog.a("IAJavaUtil: getValidUri: Invalid url %s", str);
uri = null;
}
if (uri != null) {
if ("smartlink".equalsIgnoreCase(uri.getScheme())) {
PriorityQueue priorityQueue = new PriorityQueue();
String queryParameter = uri.getQueryParameter("primaryUrl");
if (!TextUtils.isEmpty(queryParameter) && com.fyber.inneractive.sdk.d.f.a(context, Uri.parse(queryParameter))) {
List<String> queryParameters = uri.getQueryParameters("primaryTrackingUrl");
m0.a aVar2 = m0.a.Primary;
try {
uri3 = Uri.parse(queryParameter);
} catch (Exception unused2) {
uri3 = null;
}
if (uri3 != null) {
priorityQueue.offer(new m0(aVar2, uri3, queryParameters));
}
}
String queryParameter2 = uri.getQueryParameter("fallbackUrl");
if (!TextUtils.isEmpty(queryParameter2) && com.fyber.inneractive.sdk.d.f.a(context, Uri.parse(queryParameter2))) {
List<String> queryParameters2 = uri.getQueryParameters("fallbackTrackingUrl");
m0.a aVar3 = m0.a.FallBack;
try {
uri2 = Uri.parse(queryParameter2);
} catch (Exception unused3) {
uri2 = null;
}
if (uri2 != null) {
priorityQueue.offer(new m0(aVar3, uri2, queryParameters2));
}
}
if (!(priorityQueue.size() > 0)) {
return new a(c.FAILED, new b("!fyberDeepLink.isValid()"), a2);
}
do {
m0Var = (m0) priorityQueue.poll();
if (m0Var == null) {
break;
}
} while (!com.fyber.inneractive.sdk.d.f.a(context, m0Var.b));
if (m0Var == null) {
cVar = c.FAILED;
} else {
boolean a3 = a(context, new Intent("android.intent.action.VIEW", m0Var.b));
if (a3) {
for (String str3 : m0Var.c) {
if (!TextUtils.isEmpty(str3)) {
int i = IAlog.b;
IAlog.a(1, null, "%s %s", "SMART_LINK", str3);
}
com.fyber.inneractive.sdk.r.g0 g0Var = new com.fyber.inneractive.sdk.r.g0(new l(str3, System.currentTimeMillis()), str3);
IAConfigManager.K.u.b.offer(g0Var);
g0Var.f = com.fyber.inneractive.sdk.r.l0.QUEUED;
}
}
cVar = a3 ? c.OPEN_IN_EXTERNAL_BROWSER : c.FAILED;
}
c cVar2 = c.FAILED;
if (cVar == cVar2) {
return new a(cVar2, new b("IADeeplinkUtil.tryHandleDeepLinkWithExternalApp has failed"), a2);
}
return new a(cVar, null, a2);
}
if ("intent".equalsIgnoreCase(uri.getScheme())) {
String a4 = a(context);
try {
Intent parseUri = Intent.parseUri(uri.toString(), 1);
if (a(context, parseUri)) {
int i2 = IAlog.b;
IAlog.a(1, null, "%s %s", "DEEPLINK", uri);
return new a(c.OPEN_IN_EXTERNAL_APPLICATION, null, a4);
}
String stringExtra = parseUri.getStringExtra("browser_fallback_url");
if (!TextUtils.isEmpty(stringExtra)) {
try {
safedk_Context_startActivity_97cb3195734cf5c9cc3418feeafa6dd6(context, a(context, stringExtra));
int i3 = IAlog.b;
IAlog.a(1, null, "%s %s", "Intent opened successfully, url:", stringExtra);
return new a(c.OPEN_IN_EXTERNAL_BROWSER, null, a4);
} catch (ActivityNotFoundException unused4) {
int i4 = IAlog.b;
IAlog.a(1, null, "%s %s", "Intent failed, url:", stringExtra);
}
}
return new a(c.FAILED, new b("tryToOpenExternalApp has failed (intent scheme)"), a4);
} catch (URISyntaxException e) {
IAlog.a(e.getLocalizedMessage(), new Object[0]);
return new a(c.FAILED, e, a4);
}
}
List<ResolveInfo> queryIntentActivities = context.getPackageManager().queryIntentActivities(new Intent("android.intent.action.VIEW", uri), 32);
if (queryIntentActivities != null && queryIntentActivities.size() > 0) {
List<ResolveInfo> queryIntentActivities2 = context.getPackageManager().queryIntentActivities(new Intent("android.intent.action.VIEW", Uri.parse("http://www.fyber.com")), 32);
TreeSet treeSet = new TreeSet(i.b);
treeSet.addAll(queryIntentActivities2);
queryIntentActivities.removeAll(treeSet);
if (queryIntentActivities.size() <= 0 || (resolveInfo = queryIntentActivities.get(0)) == null) {
intent = null;
} else {
intent = new Intent("android.intent.action.VIEW", uri);
ActivityInfo activityInfo = resolveInfo.activityInfo;
intent.setClassName(activityInfo.packageName, activityInfo.name);
if (!(context instanceof Activity)) {
intent.setFlags(268435456);
}
}
if (intent != null) {
try {
safedk_Context_startActivity_97cb3195734cf5c9cc3418feeafa6dd6(context, intent);
return new a(c.OPEN_IN_EXTERNAL_APPLICATION, null, a2);
} catch (Exception e2) {
IAlog.a(e2.getLocalizedMessage(), new Object[0]);
return new a(c.FAILED, new b("deep linkk failed to open with message - " + e2.getMessage()), a2);
}
}
}
if (dVar == d.DO_NOT_OPEN_IN_INTERNAL_BROWSER) {
return new a(c.FAILED, new b("Redirect from internal browser didn't success "), a2);
}
if (z) {
if (!(!TextUtils.isEmpty(str) && str.toLowerCase(Locale.US).startsWith(com.safedk.android.analytics.brandsafety.creatives.d.d))) {
z2 = false;
String a5 = a(context);
IAlog.a("IAJavaUtil - valid url found: '%s' opening browser", str);
if (!z2) {
try {
if (((e(str) || d(str)) ? false : true) && dVar != d.DO_NOT_OPEN_IN_INTERNAL_BROWSER) {
safedk_Context_startActivity_97cb3195734cf5c9cc3418feeafa6dd6(context, a(context, str, str2));
aVar = new a(c.OPENED_IN_INTERNAL_BROWSER, null, a5);
} else {
aVar = new a(c.FAILED, new b("canOpenInExternalBrowser has decided it cant be opened and shouldUseInternalBrowser was set to false"), a5);
}
} catch (ActivityNotFoundException unused5) {
safedk_Context_startActivity_97cb3195734cf5c9cc3418feeafa6dd6(context, a(context, str));
aVar = new a(c.OPEN_IN_EXTERNAL_BROWSER, null, a5);
}
c cVar3 = aVar.f2947a;
return cVar3 == c.FAILED ? new a(cVar3, new b("Used fallback for opening the click"), a2) : aVar;
}
try {
try {
safedk_Context_startActivity_97cb3195734cf5c9cc3418feeafa6dd6(context, a(context, str));
aVar = new a(c.OPEN_IN_EXTERNAL_BROWSER, null, a5);
} catch (ActivityNotFoundException unused6) {
try {
Intent intent2 = new Intent("android.intent.action.VIEW", Uri.parse(String.format("googlechrome://navigate?url=%s", str)));
if (!(context instanceof Activity)) {
intent2.addFlags(268435456);
}
safedk_Context_startActivity_97cb3195734cf5c9cc3418feeafa6dd6(context, intent2);
z3 = true;
} catch (Throwable unused7) {
IAlog.e("Failed opening chrome for a special uri.", new Object[0]);
z3 = false;
}
if (z3) {
aVar = new a(c.OPENED_USING_CHROME_NAVIGATE, null, a5);
} else {
aVar = new a(c.FAILED, new b("tryOpeningChromeGracefully has failed and couldn't open the url"), a5);
}
}
} catch (Throwable unused8) {
if (((e(str) || d(str)) ? false : true) && dVar != d.DO_NOT_OPEN_IN_INTERNAL_BROWSER) {
safedk_Context_startActivity_97cb3195734cf5c9cc3418feeafa6dd6(context, a(context, str, str2));
aVar = new a(c.OPENED_IN_INTERNAL_BROWSER, null, a5);
} else {
aVar = new a(c.FAILED, new b("canOpenInExternalBrowser has decided it cant be opened and shouldUseInternalBrowser was set to true"), a5);
}
}
c cVar32 = aVar.f2947a;
if (cVar32 == c.FAILED) {
}
}
}
z2 = z;
String a52 = a(context);
IAlog.a("IAJavaUtil - valid url found: '%s' opening browser", str);
if (!z2) {
}
} else {
return new a(c.FAILED, new b("all methods has been exhausted, illegal uri"), a2);
}
}
public static Intent a(Context context, String str) {
Intent intent = new Intent("android.intent.action.VIEW", Uri.parse(str));
if (!(context instanceof Activity)) {
intent.setFlags(268435456);
}
return intent;
}
public static Intent a(Context context, String str, String str2) {
Intent intent = new Intent(context, (Class<?>) InneractiveInternalBrowserActivity.class);
intent.putExtra(InneractiveInternalBrowserActivity.URL_EXTRA, str);
intent.putExtra("spotId", str2);
if (!(context instanceof Activity)) {
intent.setFlags(268435456);
}
return intent;
}
public static boolean a(Context context, Intent intent) {
if (context != null && intent != null) {
List<ResolveInfo> queryIntentActivities = context.getPackageManager().queryIntentActivities(intent, 0);
ArrayList arrayList = new ArrayList();
for (ResolveInfo resolveInfo : queryIntentActivities) {
if (resolveInfo.activityInfo.exported) {
arrayList.add(resolveInfo);
}
}
if (arrayList.isEmpty()) {
return false;
}
if (!(context instanceof Activity)) {
intent.addFlags(268435456);
}
try {
safedk_Context_startActivity_97cb3195734cf5c9cc3418feeafa6dd6(context, intent);
return true;
} catch (ActivityNotFoundException unused) {
}
}
return false;
}
}