MainActivity.java 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236
  1. package com.edufound.reader.activity;
  2. import android.annotation.SuppressLint;
  3. import android.app.Activity;
  4. import android.content.BroadcastReceiver;
  5. import android.content.Context;
  6. import android.content.Intent;
  7. import android.content.IntentFilter;
  8. import android.net.Uri;
  9. import android.os.Bundle;
  10. import android.view.KeyEvent;
  11. import android.view.ViewGroup;
  12. import android.widget.ImageView;
  13. import android.widget.RadioButton;
  14. import android.widget.RadioGroup;
  15. import com.baidu.duer.bot.directive.payload.AmountInfo;
  16. import com.baidu.duer.botsdk.BotIntent;
  17. import com.edufound.reader.R;
  18. import com.edufound.reader.annotation.BindView;
  19. import com.edufound.reader.base.BaseActivity;
  20. import com.edufound.reader.base.BaseMvpActivity;
  21. import com.edufound.reader.contract.MainContract;
  22. import com.edufound.reader.cusview.CusToast;
  23. import com.edufound.reader.popwindow.PopWindowUtil;
  24. import com.edufound.reader.presenter.MainPresenter;
  25. import com.edufound.reader.receiver.BackPageReceiver;
  26. import com.orhanobut.logger.Logger;
  27. import java.util.HashMap;
  28. import androidx.annotation.NonNull;
  29. import cn.jzvd.Jzvd;
  30. import cn.jzvd.JzvdStd;
  31. import io.reactivex.rxjava3.annotations.Nullable;
  32. public class MainActivity extends BaseMvpActivity<MainPresenter> implements MainContract.View {
  33. Activity mActivity;
  34. @BindView(id = R.id.main_left_tab_layout)
  35. RadioGroup mRadioGroupTab;
  36. @BindView(id = R.id.activity_main_exitapp_icon)
  37. ImageView mExitApp;
  38. @Override
  39. public int getLayoutId() {
  40. return R.layout.activity_main;
  41. }
  42. @SuppressLint("AutoDispose")
  43. @Override
  44. public void initView() {
  45. mPresenter = new MainPresenter(getSupportFragmentManager());
  46. mPresenter.attachView(this);
  47. mActivity = this;
  48. // mRadioGroupTab = null;
  49. mRadioGroupTab.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
  50. @Override
  51. public void onCheckedChanged(RadioGroup radioGroup, int id) {
  52. mPresenter.onRadioChecked(radioGroup, id);
  53. }
  54. });
  55. addUiClickListener(mExitApp, o -> {
  56. PopWindowUtil.showExitAppWindow(getActivity(), getRootView());
  57. });
  58. mPresenter.userIsLogin();
  59. mPresenter.checkModelIsDebug();
  60. if (getIntent() != null && getIntent().getStringExtra("url") != null && !getIntent().getStringExtra("url").equals("")) {
  61. //efunbox://com.edufound.reader/main?resid=11132
  62. Uri uri = Uri.parse(getIntent().getStringExtra("url"));
  63. String exampleId = uri.getQueryParameter("exampleId");
  64. String backModel = uri.getQueryParameter("backModel");
  65. Logger.e("从百度获取的url:" + uri);
  66. Logger.e("从百度获取的url-exampleId:" + exampleId);
  67. Logger.e("从百度获取的url-backModel:" + backModel);
  68. if (exampleId == null || exampleId.equals("")) {
  69. } else {
  70. Bundle bundle = new Bundle();
  71. bundle.putString("exampleId", exampleId);
  72. bundle.putString("backModel", backModel);
  73. toNextActivity(RecordActivity.class, bundle);
  74. }
  75. }
  76. //efunbox://com.edufound.reader/main?
  77. }
  78. @Override
  79. public void onGetDisconnect() {
  80. }
  81. @Override
  82. public void onGetMobileConnect() {
  83. }
  84. @Override
  85. public void onGetWifiConnect() {
  86. }
  87. @Override
  88. public void onLoginSuccess() {
  89. }
  90. @Override
  91. public void showLoading() {
  92. }
  93. @Override
  94. public void hideLoading() {
  95. }
  96. @Override
  97. public void onError(String errMessage) {
  98. }
  99. @Override
  100. public Activity getActivity() {
  101. return mActivity;
  102. }
  103. @Override
  104. public void onBackPressed() {
  105. super.onBackPressed();
  106. }
  107. @Override
  108. protected void onPause() {
  109. super.onPause();
  110. unregisterReceiver(receiver);
  111. }
  112. @Override
  113. protected void onResume() {
  114. super.onResume();
  115. mPresenter.activityResume();
  116. IntentFilter intentFilter = new IntentFilter();
  117. intentFilter.addAction(BackPageReceiver.BACK_HOME_REF_MY_FRAGMENT);
  118. intentFilter.addAction(BackPageReceiver.BACK_HOME_REF_VIDEO_ITEM);
  119. registerReceiver(receiver, intentFilter);
  120. }
  121. @Override
  122. protected void onDestroy() {
  123. super.onDestroy();
  124. mPresenter.activityDestroy();
  125. }
  126. BroadcastReceiver receiver = new BroadcastReceiver() {
  127. @Override
  128. public void onReceive(Context context, Intent intent) {
  129. if (intent.getAction().equals(BackPageReceiver.BACK_HOME_REF_VIDEO_ITEM)) {
  130. //从其他页面回来了。查询一下单独的item数据,然后赋值
  131. mPresenter.refRecordById(intent.getStringExtra("recordId"));
  132. } else if (intent.getAction().equals(BackPageReceiver.BACK_HOME_REF_MY_FRAGMENT)) {
  133. mPresenter.refMyFragment();
  134. }
  135. }
  136. };
  137. @Override
  138. protected void onStop() {
  139. super.onStop();
  140. ((BaseActivity) getActivity()).removeFirstTipView();
  141. }
  142. @Override
  143. public boolean onKeyDown(int keyCode, KeyEvent event) {
  144. return mPresenter.onKeyDown(keyCode, event);
  145. }
  146. @Override
  147. public ViewGroup getRootView() {
  148. return findViewById(android.R.id.content);
  149. }
  150. @Override
  151. public void setCheckIndex() {
  152. int defaultIndex = getIntent().getIntExtra("defaultIndex", 1);
  153. ((RadioButton) mRadioGroupTab.getChildAt(defaultIndex)).setChecked(true);
  154. }
  155. @Override
  156. protected void botHandleIntent(BotIntent intent, String customData) {
  157. super.botHandleIntent(intent, customData);
  158. Logger.e("botHandleIntent:" + customData);
  159. Logger.e("customData:" + customData);
  160. }
  161. @Override
  162. protected void botOnClickLink(String url, HashMap<String, String> paramMap) {
  163. super.botOnClickLink(url, paramMap);
  164. Logger.e("botOnClickLink:" + url);
  165. }
  166. @Override
  167. protected void botOnHandleScreenNavigatorEvent(int event) {
  168. super.botOnHandleScreenNavigatorEvent(event);
  169. }
  170. @Override
  171. protected void botOnLinkAccountSucceed(String s, String s1) {
  172. super.botOnLinkAccountSucceed(s, s1);
  173. }
  174. @Override
  175. protected void botOnChargeStatusUpdated(String purchaseResult, AmountInfo authorizationAmount, AmountInfo capturedAmount, long creationTimestamp, String baiduOrderReferenceId, String sellerOrderId, String msg) {
  176. super.botOnChargeStatusUpdated(purchaseResult, authorizationAmount, capturedAmount, creationTimestamp, baiduOrderReferenceId, sellerOrderId, msg);
  177. }
  178. @Override
  179. protected void botOnBuyStatusUpdated(@NonNull String purchaseResult, @NonNull String productId, @NonNull String baiduOrderId, @NonNull String sellerOrderId, @Nullable String msg, String token) {
  180. super.botOnBuyStatusUpdated(purchaseResult, productId, baiduOrderId, sellerOrderId, msg, token);
  181. }
  182. }