From 4c7cde7ae5ed57335405459e47de4bbd2726c4ba Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期六, 07 五月 2022 19:43:39 +0800
Subject: [PATCH] 功能完善

---
 android/app/src/main/java/com/yeshi/makemoney/video/app/ui/MainActivity.java |  155 ++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 150 insertions(+), 5 deletions(-)

diff --git a/android/app/src/main/java/com/yeshi/makemoney/video/app/ui/MainActivity.java b/android/app/src/main/java/com/yeshi/makemoney/video/app/ui/MainActivity.java
index 4a17e1a..7126502 100644
--- a/android/app/src/main/java/com/yeshi/makemoney/video/app/ui/MainActivity.java
+++ b/android/app/src/main/java/com/yeshi/makemoney/video/app/ui/MainActivity.java
@@ -3,6 +3,7 @@
 import android.content.DialogInterface;
 import android.content.Intent;
 import android.os.Bundle;
+import android.util.Log;
 import android.view.KeyEvent;
 import android.view.View;
 import android.widget.RadioButton;
@@ -12,27 +13,46 @@
 import com.demo.lib.common.activity.BaseActivity;
 import com.demo.lib.common.dialog.DialogUtil;
 import com.demo.lib.common.util.FragmentSwitchHelperV2;
+import com.demo.lib.common.util.common.StringUtils;
+import com.demo.library_ad.AdUtil;
 import com.demo.library_flutter.FlutterCommonActivity;
 import com.demo.library_flutter.FlutterMineFragment;
 import com.demo.library_flutter.FlutterRecommendFragment;
 import com.demo.library_flutter.utils.FlutterPageUtil;
 import com.idlefish.flutterboost.containers.FlutterBoostFragment;
 import com.jaeger.library.StatusBarUtil;
-import com.yeshi.makemoney.video.app.R;
+import com.yeshi.makemoney.video.R;
+import com.yeshi.makemoney.video.app.MyApplication;
+import com.yeshi.makemoney.video.app.entity.eventbus.UpdateConfig;
+import com.yeshi.makemoney.video.app.push.PushOpenClickActivity;
 import com.yeshi.makemoney.video.app.ui.dialog.ExitDialog;
 import com.yeshi.makemoney.video.app.ui.main.DYNewsFragment;
+import com.yeshi.makemoney.video.app.ui.main.FlutterTeamFragment;
 import com.yeshi.makemoney.video.app.ui.main.HomeFragment;
 import com.yeshi.makemoney.video.app.ui.main.MineFragment;
 import com.yeshi.makemoney.video.app.ui.main.NovelFragment;
+import com.yeshi.makemoney.video.app.ui.main.TeamFragment;
+import com.yeshi.makemoney.video.app.utils.AppConfigUtil;
+import com.yeshi.makemoney.video.app.utils.api.BasicTextHttpResponseHandler;
+import com.yeshi.makemoney.video.app.utils.api.HttpApiUtil;
+
+import org.apache.http.Header;
+import org.greenrobot.eventbus.EventBus;
+import org.greenrobot.eventbus.Subscribe;
+import org.json.JSONObject;
 
 import java.util.ArrayList;
 import java.util.HashMap;
+import java.util.Iterator;
 import java.util.List;
+import java.util.Map;
 
 import androidx.fragment.app.Fragment;
+import cn.jpush.android.api.JPushInterface;
 
 public class MainActivity extends BaseActivity {
 
+    private static final String TAG = "MainActivity";
     private AQuery mAQuery;
     private FragmentSwitchHelperV2 mFragmentSwitchHelper;
     private RadioGroup rg_nav;
@@ -51,9 +71,26 @@
         NovelFragment novelFragment = new NovelFragment();
         list.add(novelFragment);
 
+        Map<String, Object> params = new HashMap<>();
+        params.put("first", true);
+        params.put("nav", false);
+        FlutterTeamFragment teamFragment = new FlutterBoostFragment.CachedEngineFragmentBuilder(FlutterTeamFragment.class)
+                .url("TeamPage")
+                .urlParams(params)
+                .build();
+        list.add(teamFragment);
 
-        MineFragment mine = new MineFragment();
-        list.add(mine);
+
+
+        FlutterMineFragment mineFragment = new FlutterBoostFragment.CachedEngineFragmentBuilder(FlutterMineFragment.class)
+                .url("mine")
+                .build();
+        list.add(mineFragment);
+
+//        MineFragment mine = new MineFragment();
+//        list.add(mine);
+
+
 
         Fragment[] fs = new Fragment[list.size()];
         list.toArray(fs);
@@ -62,10 +99,42 @@
     }
 
 
+    //鍒濆鍖�
+    private void init() {
+        String regId = JPushInterface.getRegistrationID(getApplicationContext());
+        if (StringUtils.isEmpty(regId)) {
+            return;
+        }
+        HttpApiUtil.uploadPushRegId(getApplicationContext(), regId, new BasicTextHttpResponseHandler() {
+            @Override
+            public void onStart() {
+                super.onStart();
+            }
+
+            @Override
+            public void onSuccessPerfect(int statusCode, Header[] headers, JSONObject jsonObject) throws Exception {
+                super.onSuccessPerfect(statusCode, headers, jsonObject);
+            }
+
+            @Override
+            public void onFailure(int statusCode, Header[] headers, String jsonObject, Throwable e) {
+                super.onFailure(statusCode, headers, jsonObject, e);
+            }
+
+            @Override
+            public void onFinish() {
+                super.onFinish();
+            }
+        });
+
+
+    }
+
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_main);
+        EventBus.getDefault().register(this);
         mAQuery = new AQuery(this);
         rg_nav = findViewById(R.id.rg_nav);
         initFragment();
@@ -92,13 +161,15 @@
                     break;
 
                     case R.id.rb_nav_team: {
+//                        mFragmentSwitchHelper
+//                                .changeFragment(NovelFragment.class);
                         mFragmentSwitchHelper
-                                .changeFragment(NovelFragment.class);
+                                .changeFragment(FlutterTeamFragment.class);
                     }
                     break;
 
                     case R.id.rb_nav_mine: {
-                        mFragmentSwitchHelper.changeFragment(MineFragment.class);
+                        mFragmentSwitchHelper.changeFragment(FlutterMineFragment.class);
                     }
                     break;
                 }
@@ -125,6 +196,7 @@
                 DialogUtil.dismiss(exitDialog);
             }
         }).create();
+        init();
     }
 
     ExitDialog exitDialog = null;
@@ -139,4 +211,77 @@
         }
         return super.onKeyDown(keyCode, event);
     }
+
+    @Override
+    protected void onNewIntent(Intent intent) {
+        Log.i(TAG, "onNewIntent");
+        int position = intent.getIntExtra("position", -1);
+        if (position < 0)
+            return;
+
+        try {
+            switch (position) {
+                case 0:
+                    findViewById(R.id.rb_nav_recommend).performClick();
+                    break;
+                case 1:
+                    findViewById(R.id.rb_nav_discover).performClick();
+                    break;
+                case 2:
+                    findViewById(R.id.rb_nav_team).performClick();
+                    break;
+                case 3:
+                    findViewById(R.id.rb_nav_mine).performClick();
+                    break;
+            }
+        } catch (Exception e) {
+
+        }
+        super.onNewIntent(intent);
+    }
+
+    @Override
+    public void onResume() {
+        super.onResume();
+        PushOpenClickActivity.resumeJumpActivity(this);
+    }
+
+    @Override
+    protected void onDestroy() {
+        super.onDestroy();
+        EventBus.getDefault().unregister(this);
+    }
+
+    @Subscribe
+    public void onEventMainThread(UpdateConfig changeInfo) {
+        HttpApiUtil.getConfig(getApplicationContext(), new BasicTextHttpResponseHandler() {
+
+            @Override
+            public void onSuccessPerfect(int statusCode, Header[] headers, JSONObject jsonObject) throws Exception {
+                if (jsonObject != null) {
+                    if (jsonObject.getInt("code") == 0) {
+                        JSONObject data = jsonObject.getJSONObject("data");
+                        JSONObject ad = data.optJSONObject("ad");
+                        for (Iterator<String> its = data.keys(); its.hasNext(); ) {
+                            String key = its.next();
+                            AppConfigUtil.ConfigKey configKey = null;
+                            try {
+                                configKey = AppConfigUtil.ConfigKey.valueOf(key);
+                            } catch (Exception e) {
+
+                            }
+                            if (configKey != null) {
+                                //淇濆瓨閰嶇疆鏂囦欢
+                                AppConfigUtil.saveConfig(configKey, data.optString(configKey.name()), getApplicationContext());
+                            }
+                        }
+                        //淇濆瓨骞垮憡閰嶇疆
+                        AdUtil.saveAdConfig(getApplicationContext(), ad);
+                    }
+                }
+            }
+        });
+
+
+    }
 }
\ No newline at end of file

--
Gitblit v1.8.0