Browse Source

修复启动APP跳转问题

Pq 3 years ago
parent
commit
82693fa5cf

+ 1 - 1
BaseLibrary/src/main/java/com/cooleshow/base/widgets/BadgeIconListView.java

@@ -18,7 +18,7 @@ import androidx.annotation.Nullable;
  */
 public class BadgeIconListView extends LinearLayout {
     public static final String STYLE_TYPE = "STYLE";
-    public static final String VIDEON_TYPE = "VIDEON";
+    public static final String VIDEON_TYPE = "VIDEO";
     public static final String LIVE_TYPE = "LIVE";
     public static final String MUSIC_TYPE = "MUSIC";
     private ImageView mIvVipIcon;

+ 16 - 2
student/src/main/java/com/cooleshow/student/ui/splash/GuideActivity.java

@@ -3,6 +3,7 @@ package com.cooleshow.student.ui.splash;
 import android.content.Context;
 import android.graphics.Point;
 import android.os.Bundle;
+import android.text.TextUtils;
 import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.MotionEvent;
@@ -13,9 +14,11 @@ import android.widget.TextView;
 import androidx.annotation.Nullable;
 import androidx.viewpager.widget.ViewPager;
 
+import com.alibaba.android.arouter.facade.Postcard;
 import com.alibaba.android.arouter.facade.annotation.Route;
 import com.alibaba.android.arouter.launcher.ARouter;
 import com.cooleshow.base.common.ConstantKey;
+import com.cooleshow.base.constanst.Constants;
 import com.cooleshow.base.router.RouterPath;
 import com.cooleshow.base.ui.activity.BaseMVPActivity;
 import com.cooleshow.base.utils.SPUtils;
@@ -43,9 +46,13 @@ public class GuideActivity extends BaseMVPActivity<ActivityGuideBinding, GuidePr
     private MyViewPage vp;
     private ViewPagerAdapter vpAdapter;
     private TextView tv_go;
+    private String extra;
 
     @Override
     protected void initView() {
+        if (getIntent().hasExtra(Constants.COMMON_EXTRA_KEY)) {
+            extra = getIntent().getStringExtra(Constants.COMMON_EXTRA_KEY);
+        }
         LayoutInflater inflater = LayoutInflater.from(this);
         views = new ArrayList<View>();
         views.add(inflater.inflate(R.layout.guide_one, null));
@@ -63,13 +70,14 @@ public class GuideActivity extends BaseMVPActivity<ActivityGuideBinding, GuidePr
             }
         });
     }
+
     @Override
     protected void onCreate(@Nullable Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         StatusBarUtil.setStatusBarDarkTheme(this, true);
     }
 
-    private void goAction(){
+    private void goAction() {
         SPUtils.getInstance().put(ConstantKey.IS_FIRST_LAUNCH, true);
         if (UserHelper.isLogin()) {
             jumpMain();
@@ -77,9 +85,15 @@ public class GuideActivity extends BaseMVPActivity<ActivityGuideBinding, GuidePr
             jumpLogin();
         }
     }
+
     private void jumpLogin() {
-        ARouter.getInstance().build(RouterPath.UserCenter.PATH_VERIFY_LOGIN).navigation();
+        Postcard build = ARouter.getInstance().build(RouterPath.UserCenter.PATH_VERIFY_LOGIN);
+        if (!TextUtils.isEmpty(extra)) {
+            build.withString(Constants.COMMON_EXTRA_KEY, extra);
+        }
+        build.navigation();
     }
+
     private void jumpMain() {
         ARouter.getInstance().build(RouterPath.APPCenter.PATH_HOME).navigation();
     }

+ 20 - 16
student/src/main/java/com/cooleshow/student/ui/splash/SplashActivity.kt

@@ -130,21 +130,21 @@ class SplashActivity : BaseActivity<ActivitySplashLayoutBinding>() {
 
     private fun goIntent() {
         val isFirstLaunch = SPUtils.getInstance().getBoolean(ConstantKey.IS_FIRST_LAUNCH, false)
-        if (isFirstLaunch) {
-            val uri: Uri? = intent.data
-            var params: String = ""
-            if (uri != null && uri.isHierarchical) {
-                LogUtils.i("splash", "uri params:${uri.toString()}")
-                params = uri.getQueryParameter("url").toString()
-                if (!TextUtils.isEmpty(params)) {
-                    try {
-                        params = URLDecoder.decode(params, "UTF-8")
-                        LogUtils.i("splash", "h5 params:$params")
-                    } catch (e: Exception) {
-                        e.printStackTrace()
-                    }
+        val uri: Uri? = intent.data
+        var params: String = ""
+        if (uri != null && uri.isHierarchical) {
+            LogUtils.i("splash", "uri params:${uri.toString()}")
+            params = uri.getQueryParameter("url").toString()
+            if (!TextUtils.isEmpty(params)) {
+                try {
+                    params = URLDecoder.decode(params, "UTF-8")
+                    LogUtils.i("splash", "h5 params:$params")
+                } catch (e: Exception) {
+                    e.printStackTrace()
                 }
             }
+        }
+        if (isFirstLaunch) {
             if (UserHelper.isLogin()) {
                 //接收h5跳转意图
                 jumpMain(params)
@@ -152,14 +152,18 @@ class SplashActivity : BaseActivity<ActivitySplashLayoutBinding>() {
                 jumpLogin(params)
             }
         } else {
-            goGuide();
+            goGuide(params);
         }
 
         finish()
     }
 
-    private fun goGuide() {
-        ARouter.getInstance().build(RouterPath.SplashCenter.SPLASH_GUIDE).navigation()
+    private fun goGuide(extra: String) {
+        var build: Postcard = ARouter.getInstance().build(RouterPath.SplashCenter.SPLASH_GUIDE)
+        if (extra.isNotEmpty()) {
+            build.withString(Constants.COMMON_EXTRA_KEY, extra)
+        }
+        build.navigation()
     }
 
     private fun jumpMain(extra: String) {

+ 0 - 1
teacher/src/main/java/com/cooleshow/teacher/ui/main/HomeFragment.kt

@@ -131,7 +131,6 @@ class HomeFragment : BaseMVPFragment<FragmentHomeLayoutBinding, HomePresenter>()
                 mViewBinding.ivCertificationStatus.visibility = View.GONE
                 mViewBinding.ivUnCertificationTip.visibility = View.GONE
                 mViewBinding.groupTeacherExtra.visibility = View.VISIBLE
-                mViewBinding.llBadge.setStyleIcon(true)
             }
             else -> {
                 //未通过或者未申请

+ 16 - 2
teacher/src/main/java/com/cooleshow/teacher/ui/splash/GuideActivity.java

@@ -3,6 +3,7 @@ package com.cooleshow.teacher.ui.splash;
 import android.content.Context;
 import android.graphics.Point;
 import android.os.Bundle;
+import android.text.TextUtils;
 import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.MotionEvent;
@@ -13,9 +14,11 @@ import android.widget.TextView;
 import androidx.annotation.Nullable;
 import androidx.viewpager.widget.ViewPager;
 
+import com.alibaba.android.arouter.facade.Postcard;
 import com.alibaba.android.arouter.facade.annotation.Route;
 import com.alibaba.android.arouter.launcher.ARouter;
 import com.cooleshow.base.common.ConstantKey;
+import com.cooleshow.base.constanst.Constants;
 import com.cooleshow.base.router.RouterPath;
 import com.cooleshow.base.ui.activity.BaseMVPActivity;
 import com.cooleshow.base.utils.SPUtils;
@@ -43,9 +46,13 @@ public class GuideActivity extends BaseMVPActivity<ActivityGuideBinding, GuidePr
     private MyViewPage vp;
     private ViewPagerAdapter vpAdapter;
     private TextView tv_go;
+    private String extra;
 
     @Override
     protected void initView() {
+        if (getIntent().hasExtra(Constants.COMMON_EXTRA_KEY)) {
+            extra = getIntent().getStringExtra(Constants.COMMON_EXTRA_KEY);
+        }
         LayoutInflater inflater = LayoutInflater.from(this);
         views = new ArrayList<View>();
         views.add(inflater.inflate(R.layout.guide_one, null));
@@ -63,13 +70,14 @@ public class GuideActivity extends BaseMVPActivity<ActivityGuideBinding, GuidePr
             }
         });
     }
+
     @Override
     protected void onCreate(@Nullable Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         StatusBarUtil.setStatusBarDarkTheme(this, true);
     }
 
-    private void goAction(){
+    private void goAction() {
         SPUtils.getInstance().put(ConstantKey.IS_FIRST_LAUNCH, true);
         if (UserHelper.isLogin()) {
             jumpMain();
@@ -77,9 +85,15 @@ public class GuideActivity extends BaseMVPActivity<ActivityGuideBinding, GuidePr
             jumpLogin();
         }
     }
+
     private void jumpLogin() {
-        ARouter.getInstance().build(RouterPath.UserCenter.PATH_VERIFY_LOGIN).navigation();
+        Postcard build = ARouter.getInstance().build(RouterPath.UserCenter.PATH_VERIFY_LOGIN);
+        if (!TextUtils.isEmpty(extra)) {
+            build.withString(Constants.COMMON_EXTRA_KEY, extra);
+        }
+        build.navigation();
     }
+
     private void jumpMain() {
         ARouter.getInstance().build(RouterPath.APPCenter.PATH_HOME).navigation();
     }

+ 20 - 16
teacher/src/main/java/com/cooleshow/teacher/ui/splash/SplashActivity.kt

@@ -126,21 +126,21 @@ class SplashActivity : BaseActivity<ActivitySplashLayoutBinding>() {
 
     private fun goIntent() {
         val isFirstLaunch = SPUtils.getInstance().getBoolean(ConstantKey.IS_FIRST_LAUNCH, false)
-        if (isFirstLaunch) {
-            val uri: Uri? = intent.data
-            var params: String = ""
-            if (uri != null && uri.isHierarchical) {
-                LogUtils.i("splash", "uri params:${uri.toString()}")
-                params = uri.getQueryParameter("url").toString()
-                if (!TextUtils.isEmpty(params)) {
-                    try {
-                        params = URLDecoder.decode(params, "UTF-8")
-                        LogUtils.i("splash", "h5 params:$params")
-                    } catch (e: Exception) {
-                        e.printStackTrace()
-                    }
+        val uri: Uri? = intent.data
+        var params: String = ""
+        if (uri != null && uri.isHierarchical) {
+            LogUtils.i("splash", "uri params:${uri.toString()}")
+            params = uri.getQueryParameter("url").toString()
+            if (!TextUtils.isEmpty(params)) {
+                try {
+                    params = URLDecoder.decode(params, "UTF-8")
+                    LogUtils.i("splash", "h5 params:$params")
+                } catch (e: Exception) {
+                    e.printStackTrace()
                 }
             }
+        }
+        if (isFirstLaunch) {
             if (UserHelper.isLogin()) {
                 //接收h5跳转意图
                 jumpMain(params)
@@ -148,14 +148,18 @@ class SplashActivity : BaseActivity<ActivitySplashLayoutBinding>() {
                 jumpLogin(params)
             }
         } else {
-            goGuide();
+            goGuide(params);
         }
 
         finish()
     }
 
-    private fun goGuide() {
-        ARouter.getInstance().build(RouterPath.SplashCenter.SPLASH_GUIDE).navigation()
+    private fun goGuide(extra: String) {
+        var build: Postcard = ARouter.getInstance().build(RouterPath.SplashCenter.SPLASH_GUIDE)
+        if (extra.isNotEmpty()) {
+            build.withString(Constants.COMMON_EXTRA_KEY, extra)
+        }
+        build.navigation()
     }
 
 

+ 2 - 2
teacher/src/main/res/layout/fragment_home_layout.xml

@@ -29,13 +29,13 @@
             app:layout_constraintTop_toTopOf="parent" />
 
         <ImageView
-            android:layout_marginEnd="4dp"
+            android:layout_marginEnd="8dp"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_marginTop="@dimen/dp_11"
             android:src="@drawable/bg_home_header2"
             app:layout_constraintRight_toRightOf="parent"
-            app:layout_constraintTop_toTopOf="@+id/iv_avatar" />
+            app:layout_constraintTop_toBottomOf="@+id/tv_nickname" />
 
         <ImageView
             android:id="@+id/iv_app_name"