浏览代码

修改一些初始化流程,用于上线

Pq 3 年之前
父节点
当前提交
25ff1884e2

+ 2 - 2
BaseLibrary/build.gradle

@@ -157,8 +157,8 @@ dependencies {
     //webview
     api 'com.just.agentweb:agentweb:4.1.4'
     //bugly 统计
-    api 'com.tencent.bugly:crashreport:3.2.33'
-    api 'com.tencent.bugly:nativecrashreport:3.7.471'
+    api 'com.tencent.bugly:crashreport:3.4.4'
+    api 'com.tencent.bugly:nativecrashreport:3.9.1'
     api 'com.gyf.immersionbar:immersionbar:3.0.0'
     api 'com.gyf.immersionbar:immersionbar-components:3.0.0'
 

+ 13 - 1
student/src/main/java/com/cooleshow/student/App.java

@@ -4,6 +4,7 @@ import android.app.ActivityManager;
 import android.content.Context;
 import android.os.Build;
 import android.text.TextUtils;
+import android.util.Log;
 import android.webkit.WebView;
 
 import androidx.annotation.RequiresApi;
@@ -16,6 +17,7 @@ import com.cooleshow.base.utils.ProcessUtils;
 import com.cooleshow.base.utils.Utils;
 import com.cooleshow.usercenter.helper.UserHelper;
 import com.daya.live_teaching.im.IMManager;
+import com.jaygoo.widget.BuildConfig;
 import com.rong.io.live.message.RCChatJoinRoomMessage;
 import com.rong.io.live.message.RCChatModeMessage;
 import com.rong.io.live.message.RCChatRoomCloseMessage;
@@ -43,6 +45,7 @@ import com.uuzuche.lib_zxing.activity.ZXingLibrary;
 import com.vanniktech.emoji.EmojiManager;
 import com.vanniktech.emoji.ios.IosEmojiProvider;
 
+import cn.jiguang.api.utils.JCollectionAuth;
 import cn.jpush.android.api.JPushInterface;
 import io.reactivex.rxjava3.annotations.NonNull;
 import io.reactivex.rxjava3.core.Observable;
@@ -79,7 +82,9 @@ public class App extends BaseApplication {
             webviewSetPath(this);
         }
         //极光推送
+        //用户同意之后才初始化极光推送
         JPushInterface.setDebugMode(true);
+        JCollectionAuth.setAuth(this, UserHelper.isAgreePrivacy());
         registrationId = JPushInterface.getRegistrationID(this);
         CrashReport.initCrashReport(getApplicationContext(), "b51fd73164", false);
         initRong();
@@ -104,7 +109,11 @@ public class App extends BaseApplication {
     }
 
     private void initUmeng() {
-        UMConfigure.init(this, "62a8394605844627b5b0554b", "app", UMConfigure.DEVICE_TYPE_PHONE, null);
+        if (UserHelper.isAgreePrivacy()) {
+            UMConfigure.init(this, "5f2b6f03b4b08b653e91a49e", "app", UMConfigure.DEVICE_TYPE_PHONE, null);
+        } else {
+            UMConfigure.preInit(this, "5f2b6f03b4b08b653e91a49e", "app");
+        }
         String FileProvider = "com.cooleshow.student.fileprovider";
         PlatformConfig.setWeixin("wx97408cd22c879ff7", "665a1608a16631dee40d737b4d1a0ad1");
         PlatformConfig.setWXFileProvider(FileProvider);
@@ -186,6 +195,9 @@ public class App extends BaseApplication {
     public String getProcessName(Context context) {
         if (context == null)
             return null;
+        if (!UserHelper.isAgreePrivacy()) {
+            return null;
+        }
         ActivityManager manager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
         for (ActivityManager.RunningAppProcessInfo processInfo : manager.getRunningAppProcesses()) {
             if (processInfo.pid == android.os.Process.myPid()) {

+ 2 - 0
student/src/main/java/com/cooleshow/student/ui/main/MainActivity.java

@@ -45,6 +45,7 @@ import com.google.android.material.bottomnavigation.BottomNavigationView;
 import com.google.gson.Gson;
 import com.rong.io.live.config.LiveConfig;
 import com.tbruyelle.rxpermissions3.RxPermissions;
+import com.tencent.bugly.crashreport.CrashReport;
 
 import org.greenrobot.eventbus.EventBus;
 import org.greenrobot.eventbus.Subscribe;
@@ -293,6 +294,7 @@ public class MainActivity extends BaseMVPActivity<ActivityMainBinding, MainPrese
             String userId = UserHelper.getUserId();
             LogUtils.i("pq", "registrationId:" + BaseApplication.registrationId);
             JPushInterface.setAlias(getApplicationContext(), 1, userId);
+            CrashReport.setDeviceId(getApplicationContext(), userId);
             isNeedSetPushId = false;
         }
     }

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

@@ -7,10 +7,12 @@ import android.text.SpannableStringBuilder
 import android.text.TextPaint
 import android.text.TextUtils
 import android.text.style.ClickableSpan
-import android.util.Log
 import android.view.View
+import cn.jiguang.api.utils.JCollectionAuth
+import cn.jpush.android.api.JPushInterface
 import com.alibaba.android.arouter.launcher.ARouter
 import com.cooleshow.base.bean.RouteBean
+import com.cooleshow.base.common.BaseApplication
 import com.cooleshow.base.common.ConstantKey
 import com.cooleshow.base.common.WebConstants
 import com.cooleshow.base.router.RouterPath
@@ -24,6 +26,7 @@ import com.cooleshow.student.databinding.ActivitySplashLayoutBinding
 import com.cooleshow.usercenter.constants.UserConstants
 import com.cooleshow.usercenter.helper.UserHelper
 import com.cooleshow.usercenter.ui.activity.VerifyCodeLoginActivity
+import com.umeng.commonsdk.UMConfigure
 import io.rong.imkit.utils.StatusBarUtil
 
 
@@ -123,6 +126,18 @@ class SplashActivity : BaseActivity<ActivitySplashLayoutBinding>() {
         }
         dialog.setOnConfirmClickListener {
             UserHelper.setAppPrivacyModeIsAgree()
+            //友盟
+            UMConfigure.init(
+                this.applicationContext,
+                "5f2b6f03b4b08b653e91a49e",
+                "app",
+                UMConfigure.DEVICE_TYPE_PHONE,
+                null
+            )
+            //极光推送
+            //用户同意之后才初始化极光推送
+            JCollectionAuth.setAuth(this.applicationContext, true)
+            BaseApplication.registrationId = JPushInterface.getRegistrationID(this.applicationContext)
             goIntent()
         }
     }

+ 10 - 1
teacher/src/main/java/com/cooleshow/teacher/App.java

@@ -37,6 +37,7 @@ import com.vanniktech.emoji.ios.IosEmojiProvider;
 
 import androidx.annotation.RequiresApi;
 
+import cn.jiguang.api.utils.JCollectionAuth;
 import cn.jpush.android.api.JPushInterface;
 import io.reactivex.rxjava3.annotations.NonNull;
 import io.reactivex.rxjava3.core.Observable;
@@ -91,6 +92,7 @@ public class App extends BaseApplication {
 
         //极光推送
         JPushInterface.setDebugMode(true);
+        JCollectionAuth.setAuth(this, UserHelper.isAgreePrivacy());
         registrationId = JPushInterface.getRegistrationID(this);
         initRong();
         initUmeng();
@@ -103,7 +105,11 @@ public class App extends BaseApplication {
     }*/
 
     private void initUmeng() {
-        UMConfigure.init(this, "62a8394605844627b5b0554b", "app", UMConfigure.DEVICE_TYPE_PHONE, null);
+        if(UserHelper.isAgreePrivacy()){
+            UMConfigure.init(this, "62a8394605844627b5b0554b", "app", UMConfigure.DEVICE_TYPE_PHONE, null);
+        }else{
+            UMConfigure.preInit(this, "62a8394605844627b5b0554b", "app");
+        }
 
         String FileProvider = "com.cooleshow.teacher.fileprovider";
         PlatformConfig.setWeixin("wx149a928c415c137a", "d3f119b577ccacb262da153f4210174f");
@@ -179,6 +185,9 @@ public class App extends BaseApplication {
     public String getProcessName(Context context) {
         if (context == null)
             return null;
+        if(!UserHelper.isAgreePrivacy()){
+            return null;
+        }
         ActivityManager manager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
         for (ActivityManager.RunningAppProcessInfo processInfo : manager.getRunningAppProcesses()) {
             if (processInfo.pid == android.os.Process.myPid()) {

+ 2 - 0
teacher/src/main/java/com/cooleshow/teacher/ui/main/MainActivity.java

@@ -42,6 +42,7 @@ import com.google.android.material.bottomnavigation.BottomNavigationView;
 import com.google.android.material.snackbar.Snackbar;
 import com.rong.io.live.config.LiveConfig;
 import com.tbruyelle.rxpermissions3.RxPermissions;
+import com.tencent.bugly.crashreport.CrashReport;
 import com.tencent.open.im.IM;
 
 import org.greenrobot.eventbus.EventBus;
@@ -302,6 +303,7 @@ public class MainActivity extends BaseMVPActivity<ActivityMainBinding, MainPrese
             String userId = UserHelper.getUserId();
             LogUtils.i("pq", "registrationId:" + BaseApplication.registrationId);
             JPushInterface.setAlias(getApplicationContext(), 1, userId);
+            CrashReport.setDeviceId(getApplicationContext(), userId);
             isNeedSetPushId = false;
         }
     }

+ 15 - 1
teacher/src/main/java/com/cooleshow/teacher/ui/splash/SplashActivity.kt

@@ -7,8 +7,11 @@ import android.text.TextPaint
 import android.text.TextUtils
 import android.text.style.ClickableSpan
 import android.view.View
+import cn.jiguang.api.utils.JCollectionAuth
+import cn.jpush.android.api.JPushInterface
 import com.alibaba.android.arouter.launcher.ARouter
 import com.cooleshow.base.bean.RouteBean
+import com.cooleshow.base.common.BaseApplication
 import com.cooleshow.base.common.ConstantKey
 import com.cooleshow.base.common.WebConstants
 import com.cooleshow.base.router.RouterPath
@@ -18,11 +21,11 @@ import com.cooleshow.base.utils.JumpUtils
 import com.cooleshow.base.utils.SPUtils
 import com.cooleshow.base.utils.ToastUtil
 import com.cooleshow.base.widgets.dialog.PrivacyTipDialog
-import com.cooleshow.teacher.R
 import com.cooleshow.teacher.databinding.ActivitySplashLayoutBinding
 import com.cooleshow.usercenter.constants.UserConstants
 import com.cooleshow.usercenter.helper.UserHelper
 import com.cooleshow.usercenter.ui.activity.VerifyCodeLoginActivity
+import com.umeng.commonsdk.UMConfigure
 
 
 /**
@@ -116,6 +119,17 @@ class SplashActivity : BaseActivity<ActivitySplashLayoutBinding>() {
         }
         dialog.setOnConfirmClickListener {
             UserHelper.setAppPrivacyModeIsAgree()
+            UMConfigure.init(
+                this.applicationContext,
+                "62a8394605844627b5b0554b",
+                "app",
+                UMConfigure.DEVICE_TYPE_PHONE,
+                null
+            )
+            //极光推送
+            //用户同意之后才初始化极光推送
+            JCollectionAuth.setAuth(this.applicationContext, true)
+            BaseApplication.registrationId = JPushInterface.getRegistrationID(this.applicationContext)
             goIntent()
         }
     }

+ 4 - 0
usercenter/src/main/java/com/cooleshow/usercenter/helper/UserHelper.java

@@ -31,6 +31,10 @@ public class UserHelper {
         return SPUtils.getInstance().getInt(PRIVACY_KEY, 0);
     }
 
+    public static boolean isAgreePrivacy() {
+        return getAppPrivacyMode() == 1;
+    }
+
     /**
      * 设置用户已同意app隐私协议
      */