导航菜单

页面标题

页面副标题

Credmex v3.12.2 - MainActivity.java 源代码

正在查看: Credmex v3.12.2 应用的 MainActivity.java JAVA 源代码文件

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


package com.credmex.activity;

import android.annotation.SuppressLint;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
import android.os.Message;
import android.text.TextUtils;
import android.util.SparseArray;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentPagerAdapter;
import androidx.viewpager.widget.ViewPager;
import butterknife.BindView;
import com.credmex.appconfig.GeneralConfigManager;
import com.credmex.commom.BaseFragment;
import com.credmex.commom.CommonActivity;
import com.credmex.commom.IUserSession;
import com.credmex.commom.OrderFragmentDecorator;
import com.credmex.fragment.HomeFragment;
import com.credmex.fragment.PersonalCenterFragment;
import com.credmex.helper.RateUsHelper;
import com.credmex.models.CashBooleanResponse;
import com.credmex.models.EasyCashVersionInfo;
import com.credmex.models.EventChangeMainTab;
import com.credmex.models.EventFinishLoginOrRegister;
import com.credmex.models.GeneralConfigResponse;
import com.credmex.models.GgPhoneNumInfo;
import com.credmex.models.GgPhoneNumInfoListRequest;
import com.credmex.models.event.ShowRateUsEvent;
import com.credmex.models.event.routeAfterLoginEvent;
import com.credmex.models.repository.HomeCore;
import com.credmex.models.response.ForceUpdateResponse;
import com.credmex.models.response.GrowthPlanResponse;
import com.credmex.models.response.MessageUnreadCountResponse;
import com.credmex.models.response.TelNumberResponse;
import com.credmex.net.CredMexObserver;
import com.credmex.net.IApiRoutes;
import com.credmex.route.RouteCenter;
import com.credmex.utils.OpenAppStaticUtil;
import com.credmex.widght.UnableTouchHorizontalViewPager;
import com.credmex.widght.dialog.CommonPictureDialog;
import com.credmex.widght.dialog.DialogButtonListener;
import com.credmex.widght.dialogmanager.DialogManager;
import com.credmex.widght.dialogmanager.DialogTask;
import com.google.android.material.tabs.TabLayout;
import com.google.gson.reflect.TypeToken;
import com.umeng.analytics.MobclickAgent;
import com.veda.android.bananalibrary.infrastructure.BaseActivity;
import com.veda.supertoolkit.customtools.CollectionUtils;
import com.veda.supertoolkit.customtools.CrashReporter;
import com.veda.supertoolkit.lifecycle.LifecycleEvent;
import com.veda.supertoolkit.resourcetools.SharedPreferenceUtils;
import io.reactivex.disposables.CompositeDisposable;
import io.reactivex.disposables.Disposable;
import io.sentry.Sentry;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;

public class MainActivity extends CommonActivity implements IUserSession.IUserLoginStateChangeListener, ViewPager.OnPageChangeListener, OrderFragmentDecorator {
    public static final int HOME_FRAGMENT_INDEX = 0;
    public static final int NOT_SPECIFIED_INDEX = -1;
    public static final int PERSON_FRAGMENT_INDEX = 1;
    private HomeFragment E;
    private PersonalCenterFragment F;
    private RateUsHelper H;
    private DialogManager I;
    private boolean J;
    private boolean K;

    @BindView(2131361919)
    TabLayout bnvTabs;

    @BindView(2131363311)
    UnableTouchHorizontalViewPager vpContent;
    private SparseArray<BaseFragment> D = new SparseArray<>(2);
    private CompositeDisposable G = new CompositeDisposable();

    public static class IntentBuilder {
        private final Context a;
        private String c;
        private int b = -1;
        private boolean d = false;
        private int e = -1;

        private IntentBuilder(Context context) {
            this.a = context;
        }

        public static IntentBuilder f(@NonNull Context context) {
            Objects.requireNonNull(context);
            return new IntentBuilder(context);
        }

        public Intent a() {
            Intent intent = new Intent(this.a, (Class<?>) MainActivity.class);
            intent.setFlags(603979776);
            intent.putExtra("push_notification_id", String.valueOf(this.b));
            intent.putExtra("is_need_to_request_notification_permission", this.d);
            intent.putExtra("home_page_index", this.e);
            intent.putExtra("redirect_url", this.c);
            return intent;
        }

        public IntentBuilder b(boolean z) {
            this.d = z;
            return this;
        }

        public IntentBuilder c(int i2) {
            this.e = i2;
            return this;
        }

        public IntentBuilder d(int i2) {
            this.b = i2;
            return this;
        }

        public IntentBuilder e(String str) {
            this.c = str;
            return this;
        }
    }

    public void A0() {
        this.F.r0(false);
        this.E.K1(false);
        this.G.e();
    }

    private void B0() {
        if (!HomeCore.getInstance().isDelayHomeSubTabInit() || isFinishing() || isDestroyed() || this.K || getSupportFragmentManager().isStateSaved()) {
            return;
        }
        this.K = true;
        try {
            this.vpContent.setOffscreenPageLimit(2);
        } catch (Exception e) {
            Sentry.h(e);
        }
    }

    private void C0() {
        if (isLoggedIn()) {
            this.G.e();
            ((IApiRoutes) this.apiHelper.a()).o().a(new CredMexObserver<MessageUnreadCountResponse>(this) {
                public void onSuccess(MessageUnreadCountResponse messageUnreadCountResponse) {
                    if (MainActivity.this.isAppOnForeground()) {
                        boolean z = messageUnreadCountResponse.body.unreadCount > 0;
                        MainActivity.this.F.q0(z);
                        MainActivity.this.E.H1(z);
                    }
                }

                public void onSubscribe(Disposable disposable) {
                    super.onSubscribe(disposable);
                    MainActivity.this.G.b(disposable);
                }

                protected boolean superShowErrorToast() {
                    return false;
                }
            });
        }
    }

    public void D0(final EasyCashVersionInfo easyCashVersionInfo) {
        ?? a = CommonPictureDialog.CommonPictureDialogBuilder.b(this).h(2131231140).g(2131820776).e(easyCashVersionInfo.desc).i("dialog_app_update").f(getString(2131821353), new DialogButtonListener() {
            @Override
            public final void a(Dialog dialog) {
                MainActivity.this.x0(easyCashVersionInfo, dialog);
            }
        }).c(new DialogInterface.OnDismissListener() {
            @Override
            public final void onDismiss(DialogInterface dialogInterface) {
                MainActivity.this.y0(dialogInterface);
            }
        }).d(1.0f).a();
        a.show();
        this.I.b(DialogTask.c, a);
    }

    private void E0() {
        OpenAppStaticUtil.c().d(this);
    }

    private void F0() {
        ArrayList<GgPhoneNumInfo> r0 = r0();
        if (CollectionUtils.a(r0)) {
            return;
        }
        ((IApiRoutes) this.apiHelper.a()).U(new GgPhoneNumInfoListRequest(r0)).a(new CredMexObserver<CashBooleanResponse>(this) {
            protected boolean superShowErrorToast() {
                return false;
            }

            public void onSuccess(CashBooleanResponse cashBooleanResponse) {
                SharedPreferenceUtils.m(MainActivity.this, "google_fetch_phone_number_list", "");
            }
        });
    }

    private void n0() {
        ((IApiRoutes) this.apiHelper.a()).O().a(new CredMexObserver<TelNumberResponse>(this) {
            public void onSuccess(TelNumberResponse telNumberResponse) {
                if (telNumberResponse != null) {
                    MainActivity.this.userSession.f().customerServiceNumber = telNumberResponse.body.telephone;
                    MainActivity.this.userSession.f().appStoreUrl = telNumberResponse.body.appStoreUrl;
                    MainActivity.this.userSession.f().workingTime = telNumberResponse.body.workingTime;
                }
            }

            protected boolean superShowErrorToast() {
                return false;
            }
        });
        o0();
    }

    private void o0() {
        new GeneralConfigManager(this).g(new GeneralConfigManager.FetchGeneralConfigListener() {
            @Override
            public void onSuccess(GeneralConfigResponse generalConfigResponse) {
                MainActivity.this.refreshPersonPageConfigView();
            }

            @Override
            public void onError(GeneralConfigResponse generalConfigResponse) {
            }
        });
    }

    private void p0() {
        if (isLoggedIn()) {
            ((IApiRoutes) this.apiHelper.a()).y0().a(new CredMexObserver<GrowthPlanResponse>(this) {
                @Override
                public void onError(Throwable th, GrowthPlanResponse growthPlanResponse) {
                    super.onError(th, (Throwable) growthPlanResponse);
                    CrashReporter.a(th);
                    MainActivity.this.refreshPersonPageGrowthPlanView(null);
                }

                public void onSuccess(GrowthPlanResponse growthPlanResponse) {
                    if (growthPlanResponse == null) {
                        MainActivity.this.refreshPersonPageGrowthPlanView(null);
                    } else {
                        MainActivity.this.refreshPersonPageGrowthPlanView(growthPlanResponse.body);
                    }
                }
            });
        }
    }

    private void q0() {
        this.I.a();
        ((IApiRoutes) this.apiHelper.a()).e().a(new CredMexObserver<ForceUpdateResponse>(this) {
            @Override
            public void onError(Throwable th, ForceUpdateResponse forceUpdateResponse) {
                super.onError(th, (Throwable) forceUpdateResponse);
                MainActivity.this.I.d();
            }

            public void onSuccess(ForceUpdateResponse forceUpdateResponse) {
                if (MainActivity.this.v0(forceUpdateResponse)) {
                    MainActivity.this.D0(forceUpdateResponse.body);
                }
                MainActivity.this.I.d();
            }

            protected boolean superShowErrorToast() {
                return false;
            }
        });
    }

    private ArrayList<GgPhoneNumInfo> r0() {
        ArrayList<GgPhoneNumInfo> arrayList = new ArrayList<>();
        try {
            return (ArrayList) ((BaseActivity) this).gson.l(SharedPreferenceUtils.g(this, "google_fetch_phone_number_list", ""), new TypeToken<List<GgPhoneNumInfo>>() {
            }.getType());
        } catch (Exception e) {
            CrashReporter.a(e);
            return arrayList;
        }
    }

    private void s0() {
        t0();
        u0();
    }

    private void t0() {
        if (this.E == null) {
            this.E = HomeFragment.s1();
        }
        if (this.F == null) {
            this.F = PersonalCenterFragment.k0();
        }
        this.D.clear();
        this.D.put(0, this.E);
        this.D.put(1, this.F);
    }

    private void u0() {
        FragmentPagerAdapter fragmentPagerAdapter = new FragmentPagerAdapter(getSupportFragmentManager(), 1) {
            public int getCount() {
                return MainActivity.this.D.size();
            }

            public Fragment getItem(int i2) {
                return (Fragment) MainActivity.this.D.get(i2);
            }
        };
        if (HomeCore.getInstance().isDelayHomeSubTabInit()) {
            this.vpContent.setOffscreenPageLimit(1);
        } else {
            this.vpContent.setOffscreenPageLimit(2);
        }
        this.vpContent.setAdapter(fragmentPagerAdapter);
        this.vpContent.addOnPageChangeListener(this);
        this.vpContent.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(this.bnvTabs));
        this.bnvTabs.addOnTabSelectedListener((TabLayout.OnTabSelectedListener) new TabLayout.ViewPagerOnTabSelectedListener(this.vpContent));
    }

    public boolean v0(ForceUpdateResponse forceUpdateResponse) {
        EasyCashVersionInfo easyCashVersionInfo;
        return (forceUpdateResponse == null || (easyCashVersionInfo = forceUpdateResponse.body) == null || TextUtils.isEmpty(easyCashVersionInfo.url)) ? false : true;
    }

    public void w0() {
        if (this.J) {
            showLoadingDialog();
        }
    }

    public void x0(EasyCashVersionInfo easyCashVersionInfo, Dialog dialog) {
        openBrowser(easyCashVersionInfo.url);
    }

    public void y0(DialogInterface dialogInterface) {
        this.I.e(DialogTask.c);
        MobclickAgent.onKillProcess(this);
        System.exit(0);
    }

    public void z0() {
        this.F.r0(true);
        this.E.K1(true);
    }

    @Override
    protected void D() {
        p0();
        n0();
        E0();
        q0();
    }

    @Override
    protected void G(@NonNull Bundle bundle) {
        super.G(bundle);
        HomeFragment fragment = getSupportFragmentManager().getFragment(bundle, "HOME_FRAGMENT_TAG");
        if (fragment instanceof BaseFragment) {
            HomeFragment homeFragment = fragment;
            this.E = homeFragment;
            this.D.put(0, homeFragment);
        }
        PersonalCenterFragment fragment2 = getSupportFragmentManager().getFragment(bundle, "PERSON_FRAGMENT_TAG");
        if (fragment2 instanceof BaseFragment) {
            PersonalCenterFragment personalCenterFragment = fragment2;
            this.F = personalCenterFragment;
            this.D.put(1, personalCenterFragment);
        }
        String string = bundle.getString("redirect_url", "");
        if (TextUtils.isEmpty(string)) {
            RouteCenter.x(this);
        } else {
            RouteCenter.y(this, string);
        }
        boolean z = bundle.getBoolean("is_need_to_request_notification_permission", false);
        bundle.remove("is_need_to_request_notification_permission");
        if (!z || Build.VERSION.SDK_INT < 33) {
            return;
        }
        this.permissionHelper.requestPermission(this, new String[]{"android.permission.POST_NOTIFICATIONS"});
    }

    @Override
    protected void K() {
        s0();
    }

    @Override
    protected void X(@NonNull Bundle bundle) {
        super.X(bundle);
        HomeFragment homeFragment = this.E;
        if (homeFragment != null && homeFragment.isAdded()) {
            getSupportFragmentManager().putFragment(bundle, "HOME_FRAGMENT_TAG", this.E);
        }
        PersonalCenterFragment personalCenterFragment = this.F;
        if (personalCenterFragment == null || !personalCenterFragment.isAdded()) {
            return;
        }
        getSupportFragmentManager().putFragment(bundle, "PERSON_FRAGMENT_TAG", this.F);
    }

    @Override
    public void dismissLoadingDialog() {
        this.J = false;
        super.dismissLoadingDialog();
    }

    @Override
    public DialogManager getDialogManager() {
        return this.I;
    }

    public String getHostActivityType() {
        return "MAIN_ACTIVITY";
    }

    @Override
    public int getLayoutID() {
        return 2131558439;
    }

    @Override
    protected void init() {
        super.init();
        this.userSession.i(this);
        DialogManager dialogManager = new DialogManager();
        this.I = dialogManager;
        dialogManager.g(new DialogManager.DialogManagerListener() {
            @Override
            public final void a() {
                MainActivity.this.w0();
            }
        });
    }

    public boolean isNeedManualRequestOrderPageInfo() {
        return false;
    }

    @Subscribe(threadMode = ThreadMode.MAIN)
    public void onEventLoginOrRegister(EventChangeMainTab eventChangeMainTab) {
        p0();
        o0();
        this.vpContent.setCurrentItem(0);
    }

    @Subscribe(threadMode = ThreadMode.MAIN)
    public void onEventLoginSuccess(EventFinishLoginOrRegister eventFinishLoginOrRegister) {
        if (eventFinishLoginOrRegister.loginEnd) {
            F0();
            this.E.f258t = true;
        }
    }

    @Override
    protected void onNewIntent(Intent intent) {
        super.onNewIntent(intent);
        int intExtra = intent.getIntExtra("home_page_index", -1);
        if (intExtra != -1) {
            setCurrentTabIndex(intExtra);
        }
        UnableTouchHorizontalViewPager unableTouchHorizontalViewPager = this.vpContent;
        if (unableTouchHorizontalViewPager == null || unableTouchHorizontalViewPager.getCurrentItem() == 0) {
            return;
        }
        refreshHomePage();
        B0();
    }

    public void onPageSelected(int i2) {
        if (1 != i2) {
            this.E.S1();
            return;
        }
        setWindowStatusBarColor(this, 2131099974);
        if (HomeCore.getInstance().isDelayHomeSubTabInit()) {
            B0();
        }
    }

    @Subscribe(threadMode = ThreadMode.MAIN)
    public void onReceiveHomeEvent(Message message) {
        int i2 = message.what;
        if (i2 == 1) {
            setCurrentTabIndex(message.arg1);
        } else {
            if (i2 != 2) {
                return;
            }
            setCurrentTabIndex(0);
        }
    }

    @Override
    protected void onResume() {
        super.onResume();
        C0();
    }

    @Subscribe(threadMode = ThreadMode.MAIN)
    public void onShowRateUs(ShowRateUsEvent showRateUsEvent) {
        if (this.H == null) {
            this.H = new RateUsHelper(this);
        }
        this.H.r();
    }

    public void refreshHomePage() {
        HomeFragment homeFragment = this.E;
        if (homeFragment == null) {
            return;
        }
        homeFragment.W0();
    }

    public void refreshPersonPage() {
        PersonalCenterFragment personalCenterFragment = this.F;
        if (personalCenterFragment == null) {
            return;
        }
        personalCenterFragment.p0();
    }

    public void refreshPersonPageConfigView() {
        PersonalCenterFragment personalCenterFragment = this.F;
        if (personalCenterFragment == null) {
            return;
        }
        personalCenterFragment.l0();
    }

    public void refreshPersonPageGrowthPlanView(GrowthPlanResponse.GrowthPlanInfo growthPlanInfo) {
        PersonalCenterFragment personalCenterFragment = this.F;
        if (personalCenterFragment == null) {
            return;
        }
        personalCenterFragment.n0(growthPlanInfo);
    }

    @Subscribe(sticky = true, threadMode = ThreadMode.MAIN)
    public void routeAfterLogin(routeAfterLoginEvent routeafterloginevent) {
        EventBus.c().q(routeafterloginevent);
        RouteCenter.y(this, routeafterloginevent.routeUrl);
    }

    @Override
    @SuppressLint({"CheckResult"})
    public Disposable runOnCreated(@NonNull Runnable runnable) {
        return com.veda.supertoolkit.lifecycle.i.a(this, runnable);
    }

    @Override
    @SuppressLint({"CheckResult"})
    public Disposable runOnDestroy(@NonNull Runnable runnable) {
        return com.veda.supertoolkit.lifecycle.i.b(this, runnable);
    }

    @Override
    @SuppressLint({"CheckResult"})
    public Disposable runOnEvent(@NonNull LifecycleEvent lifecycleEvent, @Nullable Runnable runnable) {
        return com.veda.supertoolkit.lifecycle.i.c(this, lifecycleEvent, runnable);
    }

    public void setCurrentTabIndex(int i2) {
        if (i2 == 0 || i2 == 1) {
            this.vpContent.setCurrentItem(i2);
        }
    }

    @Override
    public void showLoadingDialog() {
        if (this.I.c()) {
            this.J = true;
        } else {
            this.J = false;
            super.showLoadingDialog();
        }
    }

    @Override
    public void userLogin() {
        runOnUiThread(new Runnable() {
            @Override
            public final void run() {
                MainActivity.this.z0();
            }
        });
    }

    @Override
    public void userLogout() {
        runOnUiThread(new Runnable() {
            @Override
            public final void run() {
                MainActivity.this.A0();
            }
        });
    }

    protected void e() {
    }

    public void onPageScrollStateChanged(int i2) {
    }

    public void setViewPagerInterceptable(boolean z) {
    }

    public void onPageScrolled(int i2, float f, int i3) {
    }
}