package com.edufound.reader.activity; import android.annotation.SuppressLint; import android.app.Activity; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.net.Uri; import android.os.Bundle; import android.view.KeyEvent; import android.view.ViewGroup; import android.widget.ImageView; import android.widget.RadioButton; import android.widget.RadioGroup; import com.baidu.duer.bot.directive.payload.AmountInfo; import com.baidu.duer.botsdk.BotIntent; import com.edufound.reader.R; import com.edufound.reader.annotation.BindView; import com.edufound.reader.base.BaseActivity; import com.edufound.reader.base.BaseMvpActivity; import com.edufound.reader.contract.MainContract; import com.edufound.reader.cusview.CusToast; import com.edufound.reader.popwindow.PopWindowUtil; import com.edufound.reader.presenter.MainPresenter; import com.edufound.reader.receiver.BackPageReceiver; import com.orhanobut.logger.Logger; import java.util.HashMap; import androidx.annotation.NonNull; import cn.jzvd.Jzvd; import cn.jzvd.JzvdStd; import io.reactivex.rxjava3.annotations.Nullable; public class MainActivity extends BaseMvpActivity implements MainContract.View { Activity mActivity; @BindView(id = R.id.main_left_tab_layout) RadioGroup mRadioGroupTab; @BindView(id = R.id.activity_main_exitapp_icon) ImageView mExitApp; @Override public int getLayoutId() { return R.layout.activity_main; } @SuppressLint("AutoDispose") @Override public void initView() { mPresenter = new MainPresenter(getSupportFragmentManager()); mPresenter.attachView(this); mActivity = this; // mRadioGroupTab = null; mRadioGroupTab.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup radioGroup, int id) { mPresenter.onRadioChecked(radioGroup, id); } }); addUiClickListener(mExitApp, o -> { PopWindowUtil.showExitAppWindow(getActivity(), getRootView()); }); mPresenter.userIsLogin(); mPresenter.checkModelIsDebug(); if (getIntent() != null && getIntent().getStringExtra("url") != null && !getIntent().getStringExtra("url").equals("")) { //efunbox://com.edufound.reader/main?resid=11132 Uri uri = Uri.parse(getIntent().getStringExtra("url")); String exampleId = uri.getQueryParameter("exampleId"); String backModel = uri.getQueryParameter("backModel"); Logger.e("从百度获取的url:" + uri); Logger.e("从百度获取的url-exampleId:" + exampleId); Logger.e("从百度获取的url-backModel:" + backModel); if (exampleId == null || exampleId.equals("")) { } else { Bundle bundle = new Bundle(); bundle.putString("exampleId", exampleId); bundle.putString("backModel", backModel); toNextActivity(RecordActivity.class, bundle); } } //efunbox://com.edufound.reader/main? } @Override public void onGetDisconnect() { } @Override public void onGetMobileConnect() { } @Override public void onGetWifiConnect() { } @Override public void onLoginSuccess() { } @Override public void showLoading() { } @Override public void hideLoading() { } @Override public void onError(String errMessage) { } @Override public Activity getActivity() { return mActivity; } @Override public void onBackPressed() { super.onBackPressed(); } @Override protected void onPause() { super.onPause(); unregisterReceiver(receiver); } @Override protected void onResume() { super.onResume(); mPresenter.activityResume(); IntentFilter intentFilter = new IntentFilter(); intentFilter.addAction(BackPageReceiver.BACK_HOME_REF_MY_FRAGMENT); intentFilter.addAction(BackPageReceiver.BACK_HOME_REF_VIDEO_ITEM); registerReceiver(receiver, intentFilter); } @Override protected void onDestroy() { super.onDestroy(); mPresenter.activityDestroy(); } BroadcastReceiver receiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { if (intent.getAction().equals(BackPageReceiver.BACK_HOME_REF_VIDEO_ITEM)) { //从其他页面回来了。查询一下单独的item数据,然后赋值 mPresenter.refRecordById(intent.getStringExtra("recordId")); } else if (intent.getAction().equals(BackPageReceiver.BACK_HOME_REF_MY_FRAGMENT)) { mPresenter.refMyFragment(); } } }; @Override protected void onStop() { super.onStop(); ((BaseActivity) getActivity()).removeFirstTipView(); } @Override public boolean onKeyDown(int keyCode, KeyEvent event) { return mPresenter.onKeyDown(keyCode, event); } @Override public ViewGroup getRootView() { return findViewById(android.R.id.content); } @Override public void setCheckIndex() { int defaultIndex = getIntent().getIntExtra("defaultIndex", 1); ((RadioButton) mRadioGroupTab.getChildAt(defaultIndex)).setChecked(true); } @Override protected void botHandleIntent(BotIntent intent, String customData) { super.botHandleIntent(intent, customData); Logger.e("botHandleIntent:" + customData); Logger.e("customData:" + customData); } @Override protected void botOnClickLink(String url, HashMap paramMap) { super.botOnClickLink(url, paramMap); Logger.e("botOnClickLink:" + url); } @Override protected void botOnHandleScreenNavigatorEvent(int event) { super.botOnHandleScreenNavigatorEvent(event); } @Override protected void botOnLinkAccountSucceed(String s, String s1) { super.botOnLinkAccountSucceed(s, s1); } @Override protected void botOnChargeStatusUpdated(String purchaseResult, AmountInfo authorizationAmount, AmountInfo capturedAmount, long creationTimestamp, String baiduOrderReferenceId, String sellerOrderId, String msg) { super.botOnChargeStatusUpdated(purchaseResult, authorizationAmount, capturedAmount, creationTimestamp, baiduOrderReferenceId, sellerOrderId, msg); } @Override protected void botOnBuyStatusUpdated(@NonNull String purchaseResult, @NonNull String productId, @NonNull String baiduOrderId, @NonNull String sellerOrderId, @Nullable String msg, String token) { super.botOnBuyStatusUpdated(purchaseResult, productId, baiduOrderId, sellerOrderId, msg, token); } }