导航菜单

页面标题

页面副标题

CallApp v2.226 - POBVideoPlayerActivity.java 源代码

正在查看: CallApp v2.226 应用的 POBVideoPlayerActivity.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package com.pubmatic.sdk.webrendering.mraid;

import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.res.Configuration;
import android.media.MediaPlayer;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.ImageButton;
import android.widget.MediaController;
import android.widget.VideoView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.pubmatic.sdk.common.R;
import com.pubmatic.sdk.common.log.POBLog;
import com.pubmatic.sdk.common.utility.POBUtils;
import com.pubmatic.sdk.webrendering.POBUIUtil;
import java.util.ArrayList;
import java.util.List;

public class POBVideoPlayerActivity extends Activity {
    public static final String ACTION_FINISH = "com.pubmatic.sdk.webrendering.mraid.POBVideoPlayerActivity.finish";
    public static final String ALLOW_ORIENTATION_KEY = "AllowOrientationChange";
    public static final String FORCE_ORIENTATION_KEY = "ForceOrientation";
    public static final String MSG_VIDEO_PLAYER_EMPTY_URL = "Can't launch video player due to null or empty value of URL";
    private static List g;
    private MediaController a;
    private VideoView b;
    private int c;
    private boolean d;
    private BroadcastReceiver e;
    private int f;

    public interface POBVideoPlayerActivityListener {
        void onDismiss();

        void onStart();
    }

    public class POBVideoPlayerBroadcast extends BroadcastReceiver {
        public POBVideoPlayerBroadcast() {
        }

        @Override
        public void onReceive(Context context, Intent intent) {
            if (intent == null || !POBVideoPlayerActivity.ACTION_FINISH.equals(intent.getAction())) {
                return;
            }
            POBVideoPlayerActivity.this.finish();
        }
    }

    public class a implements View.OnClickListener {
        public a() {
        }

        @Override
        public void onClick(View view) {
            POBVideoPlayerActivity.this.finish();
        }
    }

    public class b implements MediaPlayer.OnCompletionListener {
        public b() {
        }

        @Override
        public void onCompletion(MediaPlayer mediaPlayer) {
            POBVideoPlayerActivity.this.d = true;
        }
    }

    private void b() {
        List<POBVideoPlayerActivityListener> list = g;
        if (list != null) {
            for (POBVideoPlayerActivityListener pOBVideoPlayerActivityListener : list) {
                if (this.f == pOBVideoPlayerActivityListener.hashCode()) {
                    pOBVideoPlayerActivityListener.onDismiss();
                    a(pOBVideoPlayerActivityListener);
                    return;
                }
            }
        }
    }

    private void c() {
        List<POBVideoPlayerActivityListener> list = g;
        if (list != null) {
            for (POBVideoPlayerActivityListener pOBVideoPlayerActivityListener : list) {
                if (this.f == pOBVideoPlayerActivityListener.hashCode()) {
                    pOBVideoPlayerActivityListener.onStart();
                    return;
                }
            }
        }
    }

    private void d() {
        VideoView videoView = this.b;
        if (videoView == null) {
            POBLog.debug("POBVideoPlayerActivity", "Unable to pause video, VideoView not available.", new Object[0]);
            return;
        }
        videoView.pause();
        this.c = this.b.getCurrentPosition();
        POBLog.debug("POBVideoPlayerActivity", "VideoView visibility is false. Seeked position =" + this.c, new Object[0]);
    }

    private void e() {
        if (this.d) {
            POBLog.debug("POBVideoPlayerActivity", "Video Ad is completed", new Object[0]);
            return;
        }
        VideoView videoView = this.b;
        if (videoView == null) {
            POBLog.debug("POBVideoPlayerActivity", "Unable to resume video, VideoView not available.", new Object[0]);
        } else {
            if (videoView.isPlaying()) {
                this.b.seekTo(this.c);
                return;
            }
            POBLog.debug("POBVideoPlayerActivity", "VideoView visibility is false. Seeked position =" + this.c, new Object[0]);
        }
    }

    public static void startNewActivity(@NonNull Context context, @NonNull String str, @Nullable Bundle bundle, @NonNull POBVideoPlayerActivityListener pOBVideoPlayerActivityListener) {
        if (g == null) {
            g = new ArrayList();
        }
        g.add(pOBVideoPlayerActivityListener);
        Intent intent = new Intent(context, (Class<?>) POBVideoPlayerActivity.class);
        intent.addFlags(268435456);
        intent.putExtra("URL", str);
        intent.putExtra("listener_hash_code", pOBVideoPlayerActivityListener.hashCode());
        intent.putExtra("bundle_extra", bundle);
        try {
            POBUtils.startActivity(context, intent);
        } catch (Exception e) {
            POBLog.warn("POBVideoPlayerActivity", "Error in starting video player activity. Error: %s", e.getMessage());
        }
    }

    @Override
    public void onConfigurationChanged(@NonNull Configuration configuration) {
        super.onConfigurationChanged(configuration);
    }

    @Override
    public void onCreate(@Nullable Bundle bundle) {
        String str;
        boolean z;
        char c;
        super.onCreate(bundle);
        Intent intent = getIntent();
        String stringExtra = intent.getStringExtra("URL");
        if (POBUtils.isNullOrEmpty(stringExtra)) {
            POBLog.error("POBVideoPlayerActivity", MSG_VIDEO_PLAYER_EMPTY_URL, new Object[0]);
            finish();
        }
        Bundle bundleExtra = intent.getBundleExtra("bundle_extra");
        if (bundleExtra != null) {
            str = bundleExtra.getString(FORCE_ORIENTATION_KEY);
            z = bundleExtra.getBoolean(ALLOW_ORIENTATION_KEY, true);
        } else {
            str = null;
            z = true;
        }
        if (!z) {
            if (str == null) {
                str = "none";
            }
            switch (str.hashCode()) {
                case -1700437898:
                    if (str.equals("sensor_landscape")) {
                        c = 0;
                        break;
                    }
                    c = 65535;
                    break;
                case -31410088:
                    if (str.equals("reverse_portrait")) {
                        c = 1;
                        break;
                    }
                    c = 65535;
                    break;
                case 729267099:
                    if (str.equals("portrait")) {
                        c = 2;
                        break;
                    }
                    c = 65535;
                    break;
                case 1430647483:
                    if (str.equals("landscape")) {
                        c = 3;
                        break;
                    }
                    c = 65535;
                    break;
                default:
                    c = 65535;
                    break;
            }
            switch (c) {
                case 0:
                    setRequestedOrientation(6);
                    break;
                case 1:
                    setRequestedOrientation(7);
                    break;
                case 2:
                    setRequestedOrientation(1);
                    break;
                case 3:
                    setRequestedOrientation(0);
                    break;
            }
        }
        View a2 = a(a(stringExtra), -1, -1);
        int i = Build.VERSION.SDK_INT;
        if (i >= 30) {
            POBUtils.setSystemFitWindowsForEdgeToEdge(a2);
        }
        setContentView(a2);
        POBVideoPlayerBroadcast pOBVideoPlayerBroadcast = new POBVideoPlayerBroadcast();
        this.e = pOBVideoPlayerBroadcast;
        try {
            if (i >= 33) {
                registerReceiver(pOBVideoPlayerBroadcast, new IntentFilter(ACTION_FINISH), 4);
            } else {
                registerReceiver(pOBVideoPlayerBroadcast, new IntentFilter(ACTION_FINISH));
            }
        } catch (Exception e) {
            POBLog.warn("POBVideoPlayerActivity", "Error in registering broadcast receiver. Error: %s", e.getMessage());
        }
        this.f = getIntent().getIntExtra("listener_hash_code", 0);
        c();
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        a();
        try {
            unregisterReceiver(this.e);
        } catch (Exception e) {
            POBLog.warn("POBVideoPlayerActivity", "Error in unregistering broadcast receiver. Error: %s", e.getMessage());
        }
        this.e = null;
        b();
    }

    @Override
    public void onPause() {
        super.onPause();
        d();
    }

    @Override
    public void onResume() {
        super.onResume();
        e();
    }

    private void a(POBVideoPlayerActivityListener pOBVideoPlayerActivityListener) {
        List list = g;
        if (list != null) {
            list.remove(pOBVideoPlayerActivityListener);
            if (g.isEmpty()) {
                g = null;
            }
        }
    }

    private void a() {
        VideoView videoView = this.b;
        if (videoView != null) {
            videoView.suspend();
        }
        this.b = null;
        this.a = null;
    }

    private View a(View view, int i, int i2) {
        FrameLayout frameLayout = new FrameLayout(this);
        FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(i, i2);
        layoutParams.gravity = 17;
        layoutParams.setMargins(0, 0, 0, 0);
        if (view != null) {
            frameLayout.addView(view, layoutParams);
        }
        ImageButton createSkipButton = POBUIUtil.createSkipButton(this, R.id.pob_close_btn, com.pubmatic.sdk.webrendering.R.drawable.pob_ic_close_black_24dp);
        frameLayout.addView(createSkipButton);
        createSkipButton.setOnClickListener(new a());
        return frameLayout;
    }

    private View a(String str) {
        this.b = new VideoView(this);
        if (this.a == null) {
            MediaController mediaController = new MediaController(this);
            this.a = mediaController;
            mediaController.setMediaPlayer(this.b);
        }
        this.b.setMediaController(this.a);
        this.a.setAnchorView(this.b);
        this.b.setOnCompletionListener(new b());
        this.b.setVideoURI(Uri.parse(str));
        this.b.start();
        return this.b;
    }
}