导航菜单

页面标题

页面副标题

OLX India v19.42.007 - UserConsentActivity.java 源代码

正在查看: OLX India v19.42.007 应用的 UserConsentActivity.java JAVA 源代码文件

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


package net.pubnative.lite.sdk.consent;

import android.app.Activity;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.text.TextUtils;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.FrameLayout;
import net.pubnative.lite.sdk.HyBid;
import net.pubnative.lite.sdk.utils.Logger;

public class UserConsentActivity extends Activity {
    private static final String REDIRECT_ACCEPT = "https://cdn.pubnative.nes/static/consent/GDPR-consent-dialog-accept.html";
    private static final String REDIRECT_CLOSE = "https://pubnative.nes/";
    private static final String REDIRECT_REJECT = "https://cdn.pubnative.nes/static/consent/GDPR-consent-dialog-reject.html";
    public static final int RESULT_CONSENT_ACCEPTED = 200;
    public static final int RESULT_CONSENT_REJECTED = 201;
    private static final String TAG = "UserConsentActivity";
    private final WebViewClient webViewClient = new WebViewClient() {
        @Override
        public void onPageFinished(WebView webView, String str) {
            super.onPageFinished(webView, str);
        }

        @Override
        public void onPageStarted(WebView webView, String str, Bitmap bitmap) {
            super.onPageStarted(webView, str, bitmap);
        }

        @Override
        public boolean shouldOverrideUrlLoading(WebView webView, String str) {
            str.hashCode();
            switch (str) {
                case "https://pubnative.nes/":
                    UserConsentActivity.this.finish();
                    return false;
                case "https://cdn.pubnative.nes/static/consent/GDPR-consent-dialog-accept.html":
                    HyBid.getUserDataManager().grantConsent();
                    UserConsentActivity.this.setResult(200);
                    return false;
                case "https://cdn.pubnative.nes/static/consent/GDPR-consent-dialog-reject.html":
                    HyBid.getUserDataManager().denyConsent();
                    UserConsentActivity.this.setResult(201);
                    return false;
                default:
                    return super.shouldOverrideUrlLoading(webView, str);
            }
        }
    };

    private void loadConsentPage(WebView webView) {
        if (!HyBid.isInitialized() || HyBid.getUserDataManager() == null) {
            Logger.e(TAG, "HyBid SDK has not been initialised yet. Dropping call.");
            finish();
            return;
        }
        String consentPageLink = HyBid.getUserDataManager().getConsentPageLink();
        if (!TextUtils.isEmpty(consentPageLink)) {
            webView.loadUrl(consentPageLink);
        } else {
            Logger.e(TAG, "Invalid consent page URL. Dropping call.");
            finish();
        }
    }

    private void setupWebView(WebView webView) {
        webView.setVerticalScrollBarEnabled(false);
        webView.setHorizontalScrollBarEnabled(false);
        WebSettings settings = webView.getSettings();
        settings.setJavaScriptEnabled(true);
        settings.setDomStorageEnabled(true);
        settings.setAllowFileAccess(false);
        settings.setAllowContentAccess(false);
        settings.setLoadWithOverviewMode(true);
        settings.setLoadsImagesAutomatically(true);
        settings.setSupportZoom(false);
        settings.setBuiltInZoomControls(false);
        webView.setWebViewClient(this.webViewClient);
        setContentView(webView, new FrameLayout.LayoutParams(-1, -1));
    }

    @Override
    public void onBackPressed() {
    }

    @Override
    protected void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        WebView webView = new WebView(this);
        setupWebView(webView);
        loadConsentPage(webView);
    }
}