正在查看: Fancy Optimizer v4.6.3 应用的 TJAdUnit.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: Fancy Optimizer v4.6.3 应用的 TJAdUnit.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.tapjoy;
import android.annotation.TargetApi;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.Color;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.Uri;
import android.os.Handler;
import android.os.Looper;
import android.support.v4.media.c;
import android.text.TextUtils;
import android.util.DisplayMetrics;
import android.util.TypedValue;
import android.view.ViewGroup;
import android.webkit.ConsoleMessage;
import android.webkit.JsResult;
import android.webkit.RenderProcessGoneDetail;
import android.webkit.URLUtil;
import android.webkit.WebChromeClient;
import android.webkit.WebResourceRequest;
import android.webkit.WebResourceResponse;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.VideoView;
import androidx.annotation.VisibleForTesting;
import com.tapjoy.TJAdUnitConstants;
import com.tapjoy.TapjoyErrorMessage;
import com.tapjoy.internal.b;
import com.tapjoy.internal.fo;
import com.tapjoy.internal.fs;
import com.tapjoy.internal.ga;
import com.tapjoy.internal.gd;
import com.tapjoy.internal.gj;
import com.tapjoy.internal.hy;
import java.io.FileInputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit;
import org.json.JSONObject;
public class TJAdUnit implements MediaPlayer.OnCompletionListener, MediaPlayer.OnErrorListener, MediaPlayer.OnInfoListener, MediaPlayer.OnPreparedListener {
public static TJVideoListener a;
private boolean A;
private int D;
private int E;
private int F;
private boolean G;
private boolean H;
private fo I;
private ga J;
private gd K;
@VisibleForTesting
TJJSBridgeDelegate b;
@VisibleForTesting
VideoView c;
private TJAdUnitWebViewListener e;
private TJAdUnitVideoListener f;
private TJAdUnitActivity g;
private TJAdUnitJSBridge h;
private TJWebView i;
private TJWebView j;
private MediaPlayer k;
private int l;
private boolean m;
private boolean n;
private boolean o;
private ScheduledFuture<?> p;
private AudioManager q;
private int s;
private boolean t;
private boolean u;
private boolean v;
private boolean w;
private boolean x;
private boolean y;
private volatile boolean z;
private final Handler d = new Handler(Looper.getMainLooper());
private int r = 0;
private int B = -1;
private int C = -1;
private final Runnable L = new Runnable() {
@Override
public final void run() {
int streamVolume = TJAdUnit.this.q.getStreamVolume(3);
if (TJAdUnit.this.r != streamVolume) {
TJAdUnit.this.r = streamVolume;
TJAdUnit.c(TJAdUnit.this);
}
}
};
private final Runnable M = new Runnable() {
@Override
public final void run() {
if (TJAdUnit.this.c.getCurrentPosition() != 0) {
if (!TJAdUnit.this.n) {
TJAdUnit.this.n = true;
}
TJAdUnit.this.h.onVideoStarted(TJAdUnit.this.l);
TJAdUnit.this.N.run();
return;
}
if (TJAdUnit.this.G) {
TJAdUnit.m(TJAdUnit.this);
} else {
TJAdUnit.this.d.postDelayed(TJAdUnit.this.M, 200L);
}
}
};
private final Runnable N = new Runnable() {
@Override
public final void run() {
TJAdUnit.this.h.onVideoProgress(TJAdUnit.this.c.getCurrentPosition());
TJAdUnit.this.d.postDelayed(TJAdUnit.this.N, 500L);
}
};
private WebViewClient O = new WebViewClient() {
private boolean a(String str) {
if (!TJAdUnit.this.e() || !URLUtil.isValidUrl(str)) {
if (TJAdUnit.this.g != null) {
TJAdUnit.this.g.showErrorDialog();
}
return true;
}
if (TJAdUnit.b(str)) {
return false;
}
if (TJAdUnit.this.h.allowRedirect) {
Uri parse = Uri.parse(str);
Intent intent = new Intent();
intent.setAction("android.intent.action.VIEW");
intent.setData(parse);
intent.addFlags(268435456);
if (TJAdUnit.this.j.getContext() != null) {
try {
TJAdUnit.this.j.getContext().startActivity(intent);
return true;
} catch (Exception e) {
TapjoyLog.e("TJAdUnit", "Exception in loading URL. " + e.getMessage());
}
}
} else if (str.startsWith("javascript:")) {
try {
TJAdUnit.this.j.evaluateJavascript(str.replaceFirst("javascript:", ""), null);
return true;
} catch (Exception e2) {
TapjoyLog.e("TJAdUnit", "Exception in evaluateJavascript. Device not supported. " + e2.toString());
}
}
return false;
}
@Override
public final void onPageFinished(WebView webView, String str) {
TapjoyLog.d("TJAdUnit", "onPageFinished: ".concat(String.valueOf(str)));
if (TJAdUnit.this.g != null) {
TJAdUnit.this.g.setProgressSpinnerVisibility(false);
}
TJAdUnit.p(TJAdUnit.this);
if (TJAdUnit.this.w) {
TJAdUnit.this.b();
}
if (TJAdUnit.this.h != null) {
TJAdUnit.this.h.flushMessageQueue();
}
}
@Override
public final void onPageStarted(WebView webView, String str, Bitmap bitmap) {
TapjoyLog.d("TJAdUnit", "onPageStarted: ".concat(String.valueOf(str)));
if (TJAdUnit.this.h != null) {
TJAdUnit.this.h.allowRedirect = true;
TJAdUnit.this.h.customClose = false;
TJAdUnit.this.h.closeRequested = false;
TJAdUnit.this.c();
}
}
@Override
public final void onReceivedError(WebView webView, int i, String str, String str2) {
TapjoyLog.d("TJAdUnit", "error:".concat(String.valueOf(str)));
if (TJAdUnit.this.g != null) {
TJAdUnit.this.g.showErrorDialog();
}
if (TJAdUnit.this.getSdkBeacon() != null) {
TJAdUnit.this.getSdkBeacon().a("loadFailure");
}
super.onReceivedError(webView, i, str, str2);
}
@Override
public final boolean onRenderProcessGone(WebView webView, RenderProcessGoneDetail renderProcessGoneDetail) {
TapjoyLog.e("TJAdUnit", new TapjoyErrorMessage(TapjoyErrorMessage.ErrorType.SDK_ERROR, "WebView rendering process exited while instantiating a WebViewClient unexpectedly"));
if (TJAdUnit.this.getSdkBeacon() != null) {
TJAdUnit.this.getSdkBeacon().a("terminated");
}
TJAdUnit tJAdUnit = TJAdUnit.this;
if (tJAdUnit.c != null && (tJAdUnit.n || TJAdUnit.this.c.getDuration() > 0)) {
TJAdUnit.this.n = false;
TJAdUnit.this.m = true;
TJAdUnit.this.fireOnVideoError("WebView loading while trying to play video.");
}
if (TJAdUnit.this.i != null) {
ViewGroup viewGroup = (ViewGroup) TJAdUnit.this.i.getParent();
if (viewGroup != null) {
viewGroup.removeView(TJAdUnit.this.i);
}
TJAdUnit.this.i.removeAllViews();
TJAdUnit.this.i.destroy();
TJAdUnit.t(TJAdUnit.this);
}
if (TJAdUnit.this.j != null) {
ViewGroup viewGroup2 = (ViewGroup) TJAdUnit.this.j.getParent();
if (viewGroup2 != null) {
viewGroup2.removeView(TJAdUnit.this.j);
}
TJAdUnit.this.j.removeAllViews();
TJAdUnit.this.j.destroy();
TJAdUnit.u(TJAdUnit.this);
}
if (TJAdUnit.this.h != null) {
TJAdUnit.this.h.cleanUpJSBridge();
TJAdUnit.v(TJAdUnit.this);
}
if (TJAdUnit.this.g != null) {
TJAdUnit.this.g.finish();
}
return true;
}
@Override
public final WebResourceResponse shouldInterceptRequest(WebView webView, String str) {
TapjoyCachedAssetData cachedDataForURL;
WebResourceResponse a2;
if (TapjoyCache.getInstance() == null || (cachedDataForURL = TapjoyCache.getInstance().getCachedDataForURL(str)) == null || (a2 = a(cachedDataForURL)) == null) {
return super.shouldInterceptRequest(webView, str);
}
StringBuilder n = c.n("Reading request for ", str, " from cache -- localPath: ");
n.append(cachedDataForURL.getLocalFilePath());
TapjoyLog.d("TJAdUnit", n.toString());
return a2;
}
@Override
public final boolean shouldOverrideUrlLoading(WebView webView, String str) {
return a(str);
}
@Override
@TargetApi(24)
public final boolean shouldOverrideUrlLoading(WebView webView, WebResourceRequest webResourceRequest) {
return a(webResourceRequest.getUrl().toString());
}
private static WebResourceResponse a(TapjoyCachedAssetData tapjoyCachedAssetData) {
if (tapjoyCachedAssetData == null) {
return null;
}
try {
return new WebResourceResponse(tapjoyCachedAssetData.getMimeType(), "UTF-8", new FileInputStream(tapjoyCachedAssetData.getLocalFilePath()));
} catch (Exception unused) {
return null;
}
}
@Override
public final void onLoadResource(WebView webView, String str) {
}
};
private WebChromeClient P = new WebChromeClient() {
@Override
public final boolean onConsoleMessage(ConsoleMessage consoleMessage) {
if (!TJAdUnit.this.h.closeRequested) {
return true;
}
String[] strArr = {"Uncaught", "uncaught", "Error", "error", "not defined"};
if (TJAdUnit.this.g == null) {
return true;
}
for (int i = 0; i < 5; i++) {
if (consoleMessage.message().contains(strArr[i])) {
TJAdUnit.this.g.handleClose();
return true;
}
}
return true;
}
@Override
public final boolean onJsAlert(WebView webView, String str, String str2, JsResult jsResult) {
TapjoyLog.d("TJAdUnit", str2);
return false;
}
};
public interface TJAdUnitVideoListener {
void onVideoCompleted();
void onVideoError(String str);
void onVideoStart();
}
public interface TJAdUnitWebViewListener {
void onClick();
void onClosed();
void onContentReady();
}
public class a extends TJJSBridgeDelegate {
private a() {
}
private void a() {
if (TJAdUnit.this.I != null) {
TJAdUnit.this.I.a("prerendered", Boolean.valueOf(TJAdUnit.this.y));
}
}
@Override
public final void attachVolumeListener(boolean z, int i) {
TapjoyLog.d("TJAdUnit", "attachVolumeListener: isAttached=" + z + "; interval=" + i);
TJAdUnit.this.c();
if (z && TJAdUnit.this.g != null) {
TJAdUnit tJAdUnit = TJAdUnit.this;
tJAdUnit.q = (AudioManager) tJAdUnit.g.getSystemService("audio");
TJAdUnit tJAdUnit2 = TJAdUnit.this;
tJAdUnit2.r = tJAdUnit2.q.getStreamVolume(3);
TJAdUnit tJAdUnit3 = TJAdUnit.this;
tJAdUnit3.s = tJAdUnit3.q.getStreamMaxVolume(3);
TJAdUnit tJAdUnit4 = TJAdUnit.this;
long j = i;
tJAdUnit4.p = hy.a.scheduleWithFixedDelay(tJAdUnit4.L, j, j, TimeUnit.MILLISECONDS);
}
}
@Override
public final void clearVideo(final TJTaskHandler<Boolean> tJTaskHandler, final boolean z) {
TJAdUnit tJAdUnit = TJAdUnit.this;
if (tJAdUnit.c == null) {
tJTaskHandler.onComplete(Boolean.FALSE);
} else {
tJAdUnit.a();
TapjoyUtil.runOnMainThread(new Runnable() {
@Override
public final void run() {
TJAdUnit.this.c.setVisibility(z ? 0 : 4);
TJAdUnit.this.c.stopPlayback();
TJAdUnit.this.n = false;
TJAdUnit.this.m = false;
TJAdUnit.this.l = 0;
tJTaskHandler.onComplete(Boolean.TRUE);
}
});
}
}
@Override
public final boolean dismiss() {
TJAdUnit.this.g.finish();
return true;
}
@Override
public final void endAdContentTracking(String str, JSONObject jSONObject) {
if (TJAdUnit.this.I != null) {
a();
TJAdUnit.this.I.b(str, jSONObject);
}
}
@Override
public final boolean fireContentReady() {
TJAdUnit.this.fireContentReady();
return true;
}
@Override
public final void fireOnClick() {
TJAdUnit.this.fireOnClick();
}
@Override
public final void fireOnVideoComplete() {
TJAdUnit.this.fireOnVideoComplete();
}
@Override
public final void fireOnVideoError(String str) {
TJAdUnit.this.fireOnVideoError(str);
}
@Override
public final void fireOnVideoStart() {
TJAdUnit.this.fireOnVideoStart();
}
@Override
public final String getBeaconId() {
return TJAdUnit.this.getTjBeacon().e;
}
@Override
public final Context getContext() {
if (TJAdUnit.this.g != null) {
return TJAdUnit.this.g;
}
if (TJAdUnit.this.j != null) {
return TJAdUnit.this.j.getContext();
}
return null;
}
@Override
public final Map<String, Object> getOrientation() {
HashMap q = c.q(TJAdUnitConstants.String.ORIENTATION, TJAdUnit.this.getScreenOrientationString());
q.put(TJAdUnitConstants.String.WIDTH, Integer.valueOf(TJAdUnit.this.getScreenWidth()));
q.put(TJAdUnitConstants.String.HEIGHT, Integer.valueOf(TJAdUnit.this.getScreenHeight()));
q.put(TJAdUnitConstants.String.ROTATION, Integer.valueOf(TJAdUnit.this.F));
return q;
}
@Override
public final VideoView getVideoView() {
return TJAdUnit.this.c;
}
@Override
public final Map<String, Object> getVolumeArgs() {
String format = String.format(Locale.ENGLISH, "%.2f", Float.valueOf(TJAdUnit.this.getVolume()));
boolean isMuted = TJAdUnit.this.isMuted();
TapjoyLog.d("TJAdUnit", "getVolumeArgs: volume=" + format + "; isMuted=" + isMuted);
HashMap hashMap = new HashMap();
hashMap.put(TJAdUnitConstants.String.CURRENT_VOLUME, format);
hashMap.put(TJAdUnitConstants.String.IS_MUTED, Boolean.valueOf(isMuted));
return hashMap;
}
@Override
public final WebView getWebView() {
return TJAdUnit.this.j;
}
@Override
public final boolean isMuted() {
return TJAdUnit.this.isMuted();
}
@Override
public final void loadVideoUrl(final String str, final TJTaskHandler<Boolean> tJTaskHandler) {
TapjoyUtil.runOnMainThread(new Runnable() {
@Override
public final void run() {
if (TJAdUnit.this.c == null) {
tJTaskHandler.onComplete(Boolean.FALSE);
return;
}
TapjoyLog.i("TJAdUnit", "loadVideoUrl: " + str);
TJAdUnit.this.c.setVideoPath(str);
TJAdUnit.this.c.setVisibility(0);
TJAdUnit.this.c.seekTo(0);
tJTaskHandler.onComplete(Boolean.TRUE);
}
});
}
@Override
public final void muteVideo(boolean z) {
TJAdUnit.this.a(z);
}
@Override
public final boolean pauseVideo() {
TJAdUnit.this.a();
VideoView videoView = TJAdUnit.this.c;
if (videoView == null || !videoView.isPlaying()) {
return false;
}
if (gd.c) {
TJAdUnit.this.getTjBeacon().a("pause", (Map) null);
}
TJAdUnit.this.c.pause();
TJAdUnit tJAdUnit = TJAdUnit.this;
tJAdUnit.l = tJAdUnit.c.getCurrentPosition();
TapjoyLog.i("TJAdUnit", "Video paused at: " + TJAdUnit.this.l);
TJAdUnit.this.h.onVideoPaused(TJAdUnit.this.l);
return true;
}
@Override
public final boolean playVideo() {
TapjoyLog.i("TJAdUnit", "playVideo");
VideoView videoView = TJAdUnit.this.c;
if (videoView == null) {
return false;
}
if (gd.c && !videoView.isPlaying() && TJAdUnit.this.c.getCurrentPosition() != 0) {
TJAdUnit.this.getTjBeacon().a("resume", (Map) null);
}
TJAdUnit.this.c.start();
TJAdUnit.B(TJAdUnit.this);
TJAdUnit.this.d.postDelayed(TJAdUnit.this.M, 200L);
return true;
}
@Override
public final void sendAdContentTracking(String str, JSONObject jSONObject) {
if (TJAdUnit.this.I != null) {
a();
fo foVar = TJAdUnit.this.I;
Map a = fo.a(jSONObject);
gj.e(str).a(((fs) foVar).a).a(a).b(fo.b(jSONObject)).c();
}
}
@Override
public final void setBackgroundColor(final String str, final TJTaskHandler<Boolean> tJTaskHandler) {
TapjoyUtil.runOnMainThread(new Runnable() {
@Override
public final void run() {
try {
TapjoyLog.d("TJAdUnit", "setBackgroundColor: " + str);
TJAdUnit.this.i.setBackgroundColor(Color.parseColor(str));
tJTaskHandler.onComplete(Boolean.TRUE);
} catch (Exception unused) {
TapjoyLog.d("TJAdUnit", "Error setting background color. backgroundWebView: " + TJAdUnit.this.i + ", hexColor: " + str);
tJTaskHandler.onComplete(Boolean.FALSE);
}
}
});
}
@Override
public final void setBackgroundContent(final String str, final TJTaskHandler<Boolean> tJTaskHandler) {
TapjoyUtil.runOnMainThread(new Runnable() {
@Override
public final void run() {
try {
TapjoyLog.d("TJAdUnit", "setBackgroundContent: " + str);
TJAdUnit.this.i.loadDataWithBaseURL(null, str, "text/html", "utf-8", null);
tJTaskHandler.onComplete(Boolean.TRUE);
} catch (Exception unused) {
TapjoyLog.d("TJAdUnit", "Error setting background content. backgroundWebView: " + TJAdUnit.this.i + ", content: " + str);
tJTaskHandler.onComplete(Boolean.FALSE);
}
}
});
}
@Override
public final void setCloseButtonClickable(final boolean z) {
TapjoyUtil.runOnMainThread(new Runnable() {
@Override
public final void run() {
if (TJAdUnit.this.g != null) {
TJAdUnit.this.g.setCloseButtonClickable(z);
} else {
TapjoyLog.d("TJAdUnit", "Cannot setCloseButtonClickable -- TJAdUnitActivity is null");
}
}
});
}
@Override
public final void setCloseButtonVisible(final boolean z) {
TapjoyUtil.runOnMainThread(new Runnable() {
@Override
public final void run() {
if (TJAdUnit.this.g != null) {
TJAdUnit.this.g.setCloseButtonVisibility(z);
} else {
TapjoyLog.d("TJAdUnit", "Cannot setCloseButtonVisible -- TJAdUnitActivity is null");
}
}
});
}
@Override
public final boolean setOrientation(int i) {
TJAdUnit.this.setOrientation(i);
return true;
}
@Override
public final boolean setVideoMargins(final float f, final float f2, final float f3, final float f4) {
if (TJAdUnit.this.g == null) {
return false;
}
TapjoyUtil.runOnMainThread(new Runnable() {
@Override
public final void run() {
TJAdUnitActivity tJAdUnitActivity = TJAdUnit.this.g;
float f5 = f;
float f6 = f2;
float f7 = f3;
float f8 = f4;
DisplayMetrics displayMetrics = tJAdUnitActivity.getResources().getDisplayMetrics();
int applyDimension = (int) TypedValue.applyDimension(1, f5, displayMetrics);
int applyDimension2 = (int) TypedValue.applyDimension(1, f6, displayMetrics);
int applyDimension3 = (int) TypedValue.applyDimension(1, f7, displayMetrics);
int applyDimension4 = (int) TypedValue.applyDimension(1, f8, displayMetrics);
ViewGroup viewGroup = (ViewGroup) tJAdUnitActivity.a.getVideoView().getParent();
((ViewGroup.MarginLayoutParams) viewGroup.getLayoutParams()).setMargins(applyDimension, applyDimension2, applyDimension3, applyDimension4);
viewGroup.requestLayout();
}
});
return true;
}
@Override
public final void setupSdkBeacons(ga gaVar) {
TJAdUnit.this.J = gaVar;
if (TJAdUnit.this.J == null || !TJAdUnit.this.w) {
return;
}
TJAdUnit.this.J.a();
}
@Override
public final void shouldClose(boolean z) {
if (!z || TJAdUnit.this.g == null) {
return;
}
TJAdUnit.this.g.finish();
}
@Override
public final void startAdContentTracking(String str, JSONObject jSONObject) {
if (TJAdUnit.this.I != null) {
TJAdUnit.this.I.a(str, jSONObject);
}
}
@Override
public final boolean unsetOrientation() {
TJAdUnitActivity tJAdUnitActivity = TJAdUnit.this.g;
if (tJAdUnitActivity != null) {
tJAdUnitActivity.setRequestedOrientation(-1);
}
TJAdUnit.z(TJAdUnit.this);
TJAdUnit.A(TJAdUnit.this);
return true;
}
public a(TJAdUnit tJAdUnit, byte b) {
this();
}
}
public static boolean A(TJAdUnit tJAdUnit) {
tJAdUnit.v = false;
return false;
}
public static boolean B(TJAdUnit tJAdUnit) {
tJAdUnit.o = false;
return false;
}
private static boolean a(int i) {
return i == 0 || i == 8 || i == 6 || i == 11;
}
private static boolean b(int i) {
return i == 1 || i == 9 || i == 7 || i == 12;
}
public static boolean m(TJAdUnit tJAdUnit) {
tJAdUnit.H = true;
return true;
}
public static boolean p(TJAdUnit tJAdUnit) {
tJAdUnit.A = true;
return true;
}
public static TJWebView t(TJAdUnit tJAdUnit) {
tJAdUnit.i = null;
return null;
}
public static TJWebView u(TJAdUnit tJAdUnit) {
tJAdUnit.j = null;
return null;
}
public static TJAdUnitJSBridge v(TJAdUnit tJAdUnit) {
tJAdUnit.h = null;
return null;
}
public static int z(TJAdUnit tJAdUnit) {
tJAdUnit.B = -1;
return -1;
}
public void closeRequested(boolean z) {
this.h.closeRequested(Boolean.valueOf(z));
}
@VisibleForTesting
public void destroy() {
TJAdUnitJSBridge tJAdUnitJSBridge = this.h;
if (tJAdUnitJSBridge != null) {
tJAdUnitJSBridge.destroy();
}
a();
TJWebView tJWebView = this.i;
if (tJWebView != null) {
tJWebView.removeAllViews();
this.i = null;
}
TJWebView tJWebView2 = this.j;
if (tJWebView2 != null) {
tJWebView2.removeAllViews();
this.j = null;
}
this.G = false;
this.z = false;
this.w = false;
setAdUnitActivity(null);
c();
this.k = null;
TJAdUnitWebViewListener tJAdUnitWebViewListener = this.e;
if (tJAdUnitWebViewListener != null) {
tJAdUnitWebViewListener.onClosed();
}
resetContentLoadState();
}
public void fireContentReady() {
TJAdUnitWebViewListener tJAdUnitWebViewListener = this.e;
if (tJAdUnitWebViewListener != null) {
tJAdUnitWebViewListener.onContentReady();
}
}
public void fireOnClick() {
TJAdUnitWebViewListener tJAdUnitWebViewListener = this.e;
if (tJAdUnitWebViewListener != null) {
tJAdUnitWebViewListener.onClick();
}
}
public void fireOnVideoComplete() {
TapjoyLog.v("TJAdUnit", "Firing onVideoComplete");
if (getPublisherVideoListener() != null) {
getPublisherVideoListener().onVideoComplete();
}
TJAdUnitVideoListener tJAdUnitVideoListener = this.f;
if (tJAdUnitVideoListener != null) {
tJAdUnitVideoListener.onVideoCompleted();
}
}
public void fireOnVideoError(String str) {
TapjoyLog.e("TJAdUnit", "Firing onVideoError with error: ".concat(String.valueOf(str)));
if (getPublisherVideoListener() != null) {
getPublisherVideoListener().onVideoError(3);
}
TJAdUnitVideoListener tJAdUnitVideoListener = this.f;
if (tJAdUnitVideoListener != null) {
tJAdUnitVideoListener.onVideoError(str);
}
}
public void fireOnVideoStart() {
TapjoyLog.v("TJAdUnit", "Firing onVideoStart");
if (getPublisherVideoListener() != null) {
getPublisherVideoListener().onVideoStart();
}
if (this.f != null) {
this.K.a(TJAdUnitConstants.String.VIDEO_START, (Map) null);
this.f.onVideoStart();
}
}
public TJWebView getBackgroundWebView() {
return this.i;
}
public boolean getCloseRequested() {
return this.h.closeRequested;
}
public int getLockedOrientation() {
return this.B;
}
public TJVideoListener getPublisherVideoListener() {
return a;
}
public int getScreenHeight() {
return this.E;
}
public String getScreenOrientationString() {
return a(d()) ? TJAdUnitConstants.String.LANDSCAPE : TJAdUnitConstants.String.PORTRAIT;
}
public int getScreenWidth() {
return this.D;
}
public ga getSdkBeacon() {
return this.J;
}
public int getTargetOrientation() {
return this.C;
}
public gd getTjBeacon() {
return this.K;
}
public int getVideoSeekTime() {
return this.l;
}
public VideoView getVideoView() {
return this.c;
}
public float getVolume() {
return this.r / this.s;
}
public TJWebView getWebView() {
return this.j;
}
public boolean hasCalledLoad() {
return this.x;
}
public void invokeBridgeCallback(String str, Object... objArr) {
TJAdUnitJSBridge tJAdUnitJSBridge = this.h;
if (tJAdUnitJSBridge == null || str == null) {
return;
}
tJAdUnitJSBridge.invokeJSCallback(str, objArr);
}
public boolean isLockedOrientation() {
return this.v;
}
public boolean isMuted() {
return this.u;
}
public boolean isPrerendered() {
return this.y;
}
public boolean isVideoComplete() {
return this.o;
}
public void load(final TJPlacementData tJPlacementData, final boolean z, final Context context) {
this.x = false;
TapjoyUtil.runOnMainThread(new Runnable() {
@Override
public final void run() {
if (TJAdUnit.this.a(context)) {
TapjoyLog.i("TJAdUnit", "Loading ad unit content");
TJAdUnit.this.x = true;
try {
if (TextUtils.isEmpty(tJPlacementData.getRedirectURL())) {
if (tJPlacementData.getBaseURL() == null || tJPlacementData.getHttpResponse() == null) {
TapjoyLog.e("TJAdUnit", new TapjoyErrorMessage(TapjoyErrorMessage.ErrorType.SDK_ERROR, "Error loading ad unit content"));
TJAdUnit.this.x = false;
} else {
TJAdUnit.this.j.loadDataWithBaseURL(tJPlacementData.getBaseURL(), tJPlacementData.getHttpResponse(), "text/html", "utf-8", null);
}
} else if (tJPlacementData.isPreloadDisabled()) {
TJAdUnit.this.j.postUrl(tJPlacementData.getRedirectURL(), null);
} else {
TJAdUnit.this.j.loadUrl(tJPlacementData.getRedirectURL());
}
} catch (Exception unused) {
TapjoyLog.e("TJAdUnit", new TapjoyErrorMessage(TapjoyErrorMessage.ErrorType.SDK_ERROR, "Error loading ad unit content"));
TJAdUnit.this.x = false;
}
TJAdUnit tJAdUnit = TJAdUnit.this;
tJAdUnit.y = tJAdUnit.x && z;
}
}
});
}
public void notifyOrientationChanged() {
this.h.notifyOrientationChanged(getScreenOrientationString(), this.D, this.E);
}
@Override
public void onCompletion(MediaPlayer mediaPlayer) {
TapjoyLog.i("TJAdUnit", "video -- onCompletion");
a();
this.o = true;
if (!this.m) {
this.h.onVideoCompletion();
}
this.m = false;
}
@Override
public boolean onError(MediaPlayer mediaPlayer, int i, int i2) {
TapjoyLog.e("TJAdUnit", new TapjoyErrorMessage(TapjoyErrorMessage.ErrorType.SDK_ERROR, android.support.v4.media.a.f("Error encountered when instantiating the VideoView: ", i, " - ", i2)));
this.m = true;
a();
String concat = (i != 100 ? "MEDIA_ERROR_UNKNOWN" : "MEDIA_ERROR_SERVER_DIED").concat(" -- ");
this.h.onVideoError(i2 != -1010 ? i2 != -1007 ? i2 != -1004 ? i2 != -110 ? android.support.v4.media.a.j(concat, "MEDIA_ERROR_EXTRA_UNKNOWN") : android.support.v4.media.a.j(concat, "MEDIA_ERROR_TIMED_OUT") : android.support.v4.media.a.j(concat, "MEDIA_ERROR_IO") : android.support.v4.media.a.j(concat, "MEDIA_ERROR_MALFORMED") : android.support.v4.media.a.j(concat, "MEDIA_ERROR_UNSUPPORTED"));
return i == 1 || i2 == -1004;
}
@Override
public boolean onInfo(MediaPlayer mediaPlayer, int i, int i2) {
String str;
if (i == 3) {
str = "MEDIA_INFO_VIDEO_RENDERING_START";
} else if (i != 801) {
switch (i) {
case 700:
str = "MEDIA_INFO_VIDEO_TRACK_LAGGING";
break;
case 701:
str = "MEDIA_INFO_BUFFERING_START";
break;
case 702:
str = "MEDIA_INFO_BUFFERING_END";
break;
default:
str = "";
break;
}
} else {
str = "MEDIA_INFO_NOT_SEEKABLE";
}
this.h.onVideoInfo(str);
return false;
}
@Override
public void onPrepared(MediaPlayer mediaPlayer) {
TapjoyLog.i("TJAdUnit", "video -- onPrepared");
final int duration = this.c.getDuration();
final int measuredWidth = this.c.getMeasuredWidth();
final int measuredHeight = this.c.getMeasuredHeight();
this.k = mediaPlayer;
boolean z = this.t;
if (z) {
a(z);
}
if (this.l <= 0 || this.c.getCurrentPosition() == this.l) {
TJAdUnitJSBridge tJAdUnitJSBridge = this.h;
if (tJAdUnitJSBridge != null) {
tJAdUnitJSBridge.onVideoReady(duration, measuredWidth, measuredHeight);
}
} else {
this.k.setOnSeekCompleteListener(new MediaPlayer.OnSeekCompleteListener() {
@Override
public final void onSeekComplete(MediaPlayer mediaPlayer2) {
TJAdUnit.this.h.onVideoReady(duration, measuredWidth, measuredHeight);
}
});
}
this.k.setOnInfoListener(this);
}
public void pause() {
this.G = true;
TJAdUnitJSBridge tJAdUnitJSBridge = this.h;
if (tJAdUnitJSBridge != null) {
tJAdUnitJSBridge.setEnabled(false);
}
this.b.pauseVideo();
}
public boolean preload(TJPlacementData tJPlacementData, Context context) {
if (this.x || !tJPlacementData.isPrerenderingRequested() || !TJPlacementManager.canPreRenderPlacement() || TapjoyConnectCore.isViewOpen()) {
fireContentReady();
return false;
}
TapjoyLog.i("TJAdUnit", "Pre-rendering ad unit for placement: " + tJPlacementData.getPlacementName());
TJPlacementManager.incrementPlacementPreRenderCount();
load(tJPlacementData, true, context);
return true;
}
public void resetContentLoadState() {
this.x = false;
this.A = false;
this.y = false;
this.B = -1;
this.C = -1;
this.v = false;
this.t = false;
}
public void resume(TJAdUnitSaveStateData tJAdUnitSaveStateData) {
TJAdUnitJSBridge tJAdUnitJSBridge = this.h;
if (tJAdUnitJSBridge == null) {
TJAdUnitActivity tJAdUnitActivity = this.g;
if (tJAdUnitActivity != null) {
tJAdUnitActivity.finish();
TapjoyLog.w("TJAdUnit", "Failed to resume TJAdUnit. TJAdUnitBridge is null.");
return;
}
return;
}
if (tJAdUnitJSBridge.didLaunchOtherActivity) {
TapjoyLog.d("TJAdUnit", "onResume bridge.didLaunchOtherActivity callbackID: " + this.h.otherActivityCallbackID);
TJAdUnitJSBridge tJAdUnitJSBridge2 = this.h;
tJAdUnitJSBridge2.invokeJSCallback(tJAdUnitJSBridge2.otherActivityCallbackID, Boolean.TRUE);
this.h.didLaunchOtherActivity = false;
}
this.G = false;
this.h.setEnabled(true);
if (tJAdUnitSaveStateData != null) {
int i = tJAdUnitSaveStateData.seekTime;
this.l = i;
this.c.seekTo(i);
if (this.k != null) {
this.t = tJAdUnitSaveStateData.isVideoMuted;
}
}
if (this.H) {
this.H = false;
this.d.postDelayed(this.M, 200L);
}
}
public void setAdContentTracker(fo foVar) {
this.I = foVar;
}
public void setAdUnitActivity(TJAdUnitActivity tJAdUnitActivity) {
this.g = tJAdUnitActivity;
}
public boolean setOrientation(int i) {
this.C = i;
TJAdUnitActivity tJAdUnitActivity = this.g;
if (tJAdUnitActivity != null) {
int d = d();
int i2 = this.B;
if (i2 != -1) {
d = i2;
}
if ((a(d) && a(i)) || (b(d) && b(i))) {
i = d;
}
tJAdUnitActivity.setRequestedOrientation(i);
this.B = i;
this.v = true;
}
return true;
}
public void setSdkBeacon() {
this.K = new gd();
}
public void setVideoListener(TJAdUnitVideoListener tJAdUnitVideoListener) {
this.f = tJAdUnitVideoListener;
}
public void setVisible(boolean z) {
this.h.notifyOrientationChanged(getScreenOrientationString(), this.D, this.E);
this.w = z;
if (z && this.A) {
b();
}
}
public void setWebViewListener(TJAdUnitWebViewListener tJAdUnitWebViewListener) {
this.e = tJAdUnitWebViewListener;
}
public boolean e() {
NetworkInfo activeNetworkInfo;
try {
if (this.j.getContext() == null || (activeNetworkInfo = ((ConnectivityManager) this.j.getContext().getSystemService("connectivity")).getActiveNetworkInfo()) == null || !activeNetworkInfo.isAvailable()) {
return false;
}
return activeNetworkInfo.isConnected();
} catch (Exception e) {
TapjoyLog.d("TJAdUnit", "Exception getting NetworkInfo: " + e.getLocalizedMessage());
}
return false;
}
public void c() {
TapjoyLog.d("TJAdUnit", "detachVolumeListener");
ScheduledFuture<?> scheduledFuture = this.p;
if (scheduledFuture != null) {
scheduledFuture.cancel(false);
this.p = null;
}
this.q = null;
}
private int d() {
Activity activity = this.g;
if (activity == null) {
activity = b.a();
}
if (activity == null) {
return -1;
}
int rotation = activity.getWindowManager().getDefaultDisplay().getRotation();
DisplayMetrics displayMetrics = new DisplayMetrics();
activity.getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
int i = displayMetrics.widthPixels;
this.D = i;
int i2 = displayMetrics.heightPixels;
this.E = i2;
if (((rotation == 0 || rotation == 2) && i2 > i) || ((rotation == 1 || rotation == 3) && i > i2)) {
if (rotation == 1) {
this.F = 270;
return 0;
}
if (rotation == 2) {
this.F = 180;
return 9;
}
if (rotation != 3) {
this.F = 0;
return 1;
}
this.F = 90;
return 8;
}
if (rotation == 0) {
this.F = 270;
} else {
if (rotation == 1) {
this.F = 0;
return 1;
}
if (rotation == 2) {
this.F = 90;
return 8;
}
if (rotation != 3) {
TapjoyLog.w("TJAdUnit", "Unknown screen orientation. Defaulting to landscape.");
this.F = 0;
} else {
this.F = 180;
return 9;
}
}
return 0;
}
public void b() {
TJAdUnitJSBridge tJAdUnitJSBridge = this.h;
if (tJAdUnitJSBridge == null) {
return;
}
tJAdUnitJSBridge.display();
}
public static boolean b(String str) {
try {
String host = new URL(TapjoyConnectCore.getHostURL()).getHost();
return (host != null && str.contains(host)) || str.contains(TapjoyConnectCore.getRedirectDomain()) || str.contains(TapjoyUtil.getRedirectDomain(TapjoyConnectCore.getPlacementURL()));
} catch (MalformedURLException unused) {
return false;
}
}
public static void c(TJAdUnit tJAdUnit) {
tJAdUnit.h.onVolumeChanged();
}
@VisibleForTesting
public final boolean a(Context context) {
if (Looper.myLooper() == Looper.getMainLooper() && !this.z && context != null) {
TapjoyLog.d("TJAdUnit", "Constructing ad unit");
this.z = true;
byte b = 0;
try {
TJWebView tJWebView = new TJWebView(context);
this.i = tJWebView;
tJWebView.loadDataWithBaseURL(null, "<!DOCTYPE html><html><head><title>Tapjoy Background Webview</title></head></html>", "text/html", "utf-8", null);
TJWebView tJWebView2 = new TJWebView(context);
this.j = tJWebView2;
tJWebView2.setWebViewClient(this.O);
this.j.setWebChromeClient(this.P);
VideoView videoView = new VideoView(context);
this.c = videoView;
videoView.setOnCompletionListener(this);
this.c.setOnErrorListener(this);
this.c.setOnPreparedListener(this);
this.c.setVisibility(4);
a aVar = new a(this, b);
this.b = aVar;
this.h = new TJAdUnitJSBridge(aVar);
if (context instanceof TJAdUnitActivity) {
setAdUnitActivity((TJAdUnitActivity) context);
}
} catch (Exception e) {
TapjoyLog.w("TJAdUnit", e.getMessage());
return false;
}
}
return this.z;
}
public final void a(boolean z) {
MediaPlayer mediaPlayer = this.k;
if (mediaPlayer != null) {
if (z) {
mediaPlayer.setVolume(0.0f, 0.0f);
} else {
mediaPlayer.setVolume(1.0f, 1.0f);
}
if (this.u != z) {
this.u = z;
this.h.onVolumeChanged();
return;
}
return;
}
this.t = z;
}
public final void a() {
this.d.removeCallbacks(this.M);
this.d.removeCallbacks(this.N);
}
}