Mad Aces v1.2.2.3版本的 MD5 值为:f29ebd7c5808053d9f3f3722a5db1688

以下内容为反编译后的 FullScreenAdActivity.java 源代码,内容仅作参考


package com.vungle.publisher;

import android.R;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentTransaction;
import android.view.KeyEvent;
import android.view.View;
import com.google.android.gms.drive.DriveFile;
import com.vungle.log.Logger;
import com.vungle.publisher.ad.AdManager;
import com.vungle.publisher.db.model.Ad;
import com.vungle.publisher.db.model.EventTracking;
import com.vungle.publisher.db.model.LocalAd;
import com.vungle.publisher.db.model.LocalArchive;
import com.vungle.publisher.db.model.LoggedException;
import com.vungle.publisher.db.model.Video;
import com.vungle.publisher.display.view.AdFragment;
import com.vungle.publisher.display.view.PostRollFragment;
import com.vungle.publisher.display.view.VideoFragment;
import com.vungle.publisher.env.SdkState;
import com.vungle.publisher.event.EventBus;
import com.vungle.publisher.inject.Injector;
import com.vungle.publisher.reporting.AdReportEventListener;
import com.vungle.publisher.util.IntentFactory;
import java.io.File;
import javax.inject.Inject;
import javax.inject.Singleton;

public class FullScreenAdActivity extends FragmentActivity {
    public static final String AD_CONFIG_EXTRA_KEY = "adConfig";
    public static final String AD_ID_EXTRA_KEY = "adId";
    Ad a;
    AdReportEventListener b;

    @Inject
    AdEventListener.Factory c;

    @Inject
    AdManager d;

    @Inject
    AdReportEventListener.Factory e;

    @Inject
    bt f;

    @Inject
    EventBus g;

    @Inject
    VideoFragment.Factory h;

    @Inject
    PostRollFragment.Factory i;

    @Inject
    SdkState j;

    @Inject
    IntentFactory k;

    @Inject
    LoggedException.Factory l;
    private AdFragment m;
    private PostRollFragment n;
    private View o;
    private VideoFragment p;
    private AdEventListener q;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        int i;
        LocalArchive u;
        try {
            Logger.d(Logger.AD_TAG, "interstital ad");
            super.onCreate(savedInstanceState);
            Injector.getInstance().a.inject(this);
            Intent intent = getIntent();
            a aVar = (a) intent.getParcelableExtra(AD_CONFIG_EXTRA_KEY);
            String stringExtra = intent.getStringExtra(AD_ID_EXTRA_KEY);
            AdManager adManager = this.d;
            Ad<?, ?, ?> a = adManager.g.a(stringExtra);
            if (a == null) {
                a = adManager.n.a(stringExtra);
            }
            this.a = a;
            if (a == null) {
                Logger.w(Logger.AD_TAG, "no ad in activity");
                this.g.a(new az());
                finish();
                return;
            }
            this.o = getWindow().getDecorView();
            Video k = a.k();
            this.q = this.c.getInstance(this);
            AdReportEventListener.Factory factory = this.e;
            factory.a.a(a);
            this.b = factory.a;
            this.q.registerOnce();
            this.b.registerOnce();
            boolean z = savedInstanceState != null;
            if (!z) {
                this.g.a(new ag(a, aVar));
            }
            VideoFragment.Factory factory2 = this.h;
            VideoFragment a2 = VideoFragment.Factory.a(this);
            if (a2 == null) {
                a2 = factory2.a.get();
            }
            this.p = VideoFragment.Factory.a(a2, a, aVar);
            if ((a instanceof LocalAd) && (u = ((LocalAd) a).u()) != null) {
                String uri = new File(cc.a(u.j(), "index.html")).toURI().toString();
                PostRollFragment.Factory factory3 = this.i;
                PostRollFragment a3 = PostRollFragment.Factory.a(this);
                if (a3 == null) {
                    a3 = factory3.a.get();
                }
                this.n = PostRollFragment.Factory.a(a3, uri);
            }
            a(aVar);
            Orientation orientation = aVar.getOrientation();
            switch (orientation) {
                case autoRotate:
                    Logger.d(Logger.AD_TAG, "ad orientation " + orientation);
                    i = 10;
                    break;
                default:
                    if (!((k.g == null || k.n == null || k.n.intValue() <= k.g.intValue()) ? false : true)) {
                        if (!((k.g == null || k.n == null || k.g.intValue() <= k.n.intValue()) ? false : true)) {
                            Logger.d(Logger.AD_TAG, "ad orientation " + orientation + " (unknown) --> auto-rotate");
                            i = 10;
                            break;
                        } else {
                            Logger.d(Logger.AD_TAG, "ad orientation " + orientation + " (portrait)");
                            i = 7;
                            break;
                        }
                    } else {
                        Logger.d(Logger.AD_TAG, "ad orientation " + orientation + " (landscape)");
                        i = 6;
                        break;
                    }
                    break;
            }
            setRequestedOrientation(i);
            if ("postRollFragment".equals(z ? savedInstanceState.getString("currentFragment") : null)) {
                a();
            } else {
                b();
            }
        } catch (Exception e) {
            this.l.a(Logger.AD_TAG, "error playing ad", e);
            a(false, false);
        }
    }

    @Override
    public void onSaveInstanceState(Bundle outState) {
        try {
            super.onSaveInstanceState(outState);
            outState.putString("currentFragment", this.m.b());
        } catch (Exception e) {
            this.l.a(Logger.AD_TAG, "error in onSaveInstanceState", e);
        }
    }

    final void a(final a aVar) {
        if (this.f.a(br.KITKAT) && aVar.isImmersiveMode()) {
            this.o.setSystemUiVisibility(5894);
            this.o.setOnSystemUiVisibilityChangeListener(new View.OnSystemUiVisibilityChangeListener() {
                @Override
                public final void onSystemUiVisibilityChange(int visibility) {
                    if ((visibility & 4) == 0) {
                        FullScreenAdActivity.this.a(aVar);
                    }
                }
            });
        }
    }

    @Override
    public void onResume() {
        try {
            super.onResume();
            SdkState sdkState = this.j;
            Logger.d(Logger.AD_TAG, "onAdActivityResume()");
            sdkState.a(false);
            sdkState.m = 0L;
        } catch (Exception e) {
            this.l.a(Logger.AD_TAG, "error in onResume()", e);
        }
    }

    @Override
    public void onPause() {
        try {
            super.onPause();
            SdkState sdkState = this.j;
            Logger.d(Logger.AD_TAG, "onAdActivityPause()");
            sdkState.m = sdkState.f();
        } catch (Exception e) {
            this.l.a(Logger.AD_TAG, "error in onPause()", e);
        }
    }

    @Override
    public void onBackPressed() {
        try {
            Logger.v(Logger.AD_TAG, "back button pressed");
            this.g.a(new d());
            this.m.a();
        } catch (Exception e) {
            this.l.a(Logger.AD_TAG, "error in onBackPressed", e);
        }
    }

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        this.m.a(keyCode);
        return super.onKeyDown(keyCode, event);
    }

    final void a() {
        if (this.n == null) {
            a(true, false);
        } else {
            this.g.a(new z());
            a(this.n);
        }
    }

    final void b() {
        if (this.p == null) {
            a();
        } else {
            a(this.p);
        }
    }

    final void a(boolean z, boolean z2) {
        try {
            this.g.a(z ? new be(this.a, z2) : new bd(this.a, z2));
        } catch (Exception e) {
            this.l.a(Logger.AD_TAG, "error exiting ad", e);
        } finally {
            finish();
        }
    }

    private void a(AdFragment adFragment) {
        if (adFragment != this.m) {
            FragmentTransaction beginTransaction = getSupportFragmentManager().beginTransaction();
            beginTransaction.setCustomAnimations(R.anim.fade_in, R.anim.fade_out);
            this.m = adFragment;
            beginTransaction.replace(R.id.content, adFragment, adFragment.b());
            beginTransaction.commit();
        }
    }

    @Override
    public void onWindowFocusChanged(boolean hasFocus) {
        try {
            super.onWindowFocusChanged(hasFocus);
            this.m.a(hasFocus);
        } catch (Exception e) {
            this.l.a(Logger.AD_TAG, "error in onWindowFocusChanged", e);
        }
    }

    @Singleton
    public static class AdEventListener extends by {
        private FullScreenAdActivity a;

        @Inject
        public AdEventListener() {
        }

        public void onEvent(x xVar) {
            Logger.v(Logger.EVENT_TAG, "postRoll.onCancel()");
            this.a.a(true, false);
        }

        public void onEvent(g event) {
            EventTracking.a aVar = event.a;
            Logger.v(Logger.EVENT_TAG, "cta click event: " + aVar);
            FullScreenAdActivity fullScreenAdActivity = this.a;
            String str = null;
            boolean z = false;
            try {
                str = fullScreenAdActivity.a.f();
                Logger.v(Logger.AD_TAG, "call to action destination " + str);
                if (str != null) {
                    Intent a = IntentFactory.a("android.intent.action.VIEW", Uri.parse(str));
                    a.addFlags(DriveFile.MODE_READ_ONLY);
                    fullScreenAdActivity.startActivity(a);
                    fullScreenAdActivity.g.a(new h(fullScreenAdActivity.a, aVar));
                }
                z = true;
            } catch (Exception e) {
                fullScreenAdActivity.l.a(Logger.AD_TAG, "error loading call-to-action URL " + str, e);
            }
            fullScreenAdActivity.a(z, true);
        }

        public void onEvent(y yVar) {
            Logger.v(Logger.EVENT_TAG, "postRoll.onRepeat()");
            this.a.b();
        }

        public void onEvent(ar arVar) {
            this.a.a(false, false);
        }

        public void onEvent(al alVar) {
            Logger.v(Logger.EVENT_TAG, "video.onCancel()");
            this.a.a();
        }

        public void onEvent(am amVar) {
            Logger.v(Logger.EVENT_TAG, "video.onNext()");
            this.a.a();
        }

        public void onEvent(ac acVar) {
            FullScreenAdActivity fullScreenAdActivity = this.a;
            try {
                Intent a = IntentFactory.a("android.intent.action.VIEW", Uri.parse("https://www.vungle.com/privacy/"));
                a.addFlags(DriveFile.MODE_READ_ONLY);
                fullScreenAdActivity.startActivity(a);
            } catch (Exception e) {
                fullScreenAdActivity.l.a(Logger.AD_TAG, "error loading privacy URL", e);
            }
        }

        @Singleton
        public static class Factory {

            @Inject
            AdEventListener a;

            public AdEventListener getInstance(FullScreenAdActivity activity) {
                this.a.a = activity;
                return this.a;
            }
        }
    }
}