ソースを参照

feat: aab动态下载,真人认证模块

XiaodongLin 6 ヶ月 前
コミット
bd9bb291e9

+ 3 - 3
app/src/main/java/com/adealink/weparty/aab/AABConfig.kt

@@ -17,15 +17,15 @@ class AABConfig : IAABConfig {
         get() = object : ILog {
 
             override fun logD(tag: String, msg: String) {
-//                Log.d(tag, msg)
+                Log.d(tag, msg)
             }
 
             override fun logI(tag: String, msg: String) {
-//                Log.i(tag, msg)
+                Log.i(tag, msg)
             }
 
             override fun logE(tag: String, msg: String, e: Exception?) {
-//                Log.e(tag, msg, e)
+                Log.e(tag, msg, e)
             }
 
         }

+ 1 - 1
app/src/main/java/com/adealink/weparty/module/certification/CertificationModule.kt

@@ -63,7 +63,7 @@ object CertificationModule : BaseDynamicModule<ICertificationService>(ICertifica
      * 检查是否安装了动态模块
      */
     fun tryToDownload() {
-//        AAB.installNow(CertificationModule)
+        AAB.installNow(CertificationModule)
     }
 
 }

+ 12 - 0
app/src/main/java/com/adealink/weparty/ui/MainStartUpFragment.kt

@@ -4,6 +4,7 @@ import android.os.Bundle
 import android.os.SystemClock
 import androidx.core.app.NotificationManagerCompat
 import androidx.lifecycle.lifecycleScope
+import com.adealink.frame.aab.AAB
 import com.adealink.frame.base.fastLazy
 import com.adealink.frame.coroutine.dispatcher.Dispatcher
 import com.adealink.frame.log.Log
@@ -21,6 +22,7 @@ import com.adealink.weparty.module.account.AccountModule
 import com.adealink.weparty.module.anchor.AnchorModule
 import com.adealink.weparty.module.anchor.data.FromScene
 import com.adealink.weparty.module.attribution.AttributionModule
+import com.adealink.weparty.module.certification.CertificationModule
 import com.adealink.weparty.module.couple.CoupleModule
 import com.adealink.weparty.module.emotion.EmotionModule
 import com.adealink.weparty.module.family.FamilyModule
@@ -103,9 +105,19 @@ class MainStartUpFragment : BaseFragment() {
         runIfUiValid { countryViewModel?.getCountryList(true) }
         runIfUiValid { walletViewModel?.checkThirdPayOpen() }
         runIfUiValid { anchorViewModel?.getAnchorMessages() }
+        installDynamicModule()
         Log.d(TAG, "importantLoad-end, cost:${SystemClock.elapsedRealtime() - startTs}ms")
     }
 
+    // 启动后,交给Google Play,延迟安装所有模块(后台自动下载)
+    private fun installDynamicModule() {
+        AAB.deferredInstall(
+            listOf(
+                CertificationModule.featureName
+            )
+        )
+    }
+
     private fun checkNoReplyMessageIfNeed() {
         if (ProfileModule.getMyUserInfo()?.isFemale() == true) {
             lifecycleScope.launch(Dispatcher.WENEXT_THREAD_POOL) {

+ 1 - 3
module/certification/src/main/AndroidManifest.xml

@@ -6,9 +6,7 @@
         dist:instant="false"
         dist:title="@string/module_certification">
         <dist:delivery>
-            <dist:install-time>
-                <dist:removable dist:value="true" />
-            </dist:install-time>
+            <dist:on-demand />
         </dist:delivery>
         <dist:fusing dist:include="true" />
     </dist:module>