diff --git a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/LoginFragment.kt b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/LoginFragment.kt index b5fccfbdab..c36113de63 100644 --- a/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/LoginFragment.kt +++ b/OCH/common/biz/src/main/java/com/mogo/och/biz/login/ui/LoginFragment.kt @@ -10,7 +10,6 @@ import android.view.* import android.view.ViewTreeObserver.OnGlobalLayoutListener import android.view.animation.DecelerateInterpolator import android.view.animation.LinearInterpolator -import android.widget.VideoView import androidx.core.content.ContextCompat import androidx.core.widget.addTextChangedListener import com.mogo.commons.AbsMogoApplication @@ -34,6 +33,9 @@ import com.mogo.och.biz.login.callback.ILoginViewCallback import com.mogo.och.biz.login.presenter.LoginPresenter import com.mogo.skin.Skin import com.mogo.skin.SkinManager +import com.mogo.skin.SkinManager.SkinLoadListener +import com.mogo.skin.utils.FileUtils +import com.mogo.skin.utils.SkinResources import com.shuyu.gsyvideoplayer.builder.GSYVideoOptionBuilder import com.shuyu.gsyvideoplayer.listener.GSYSampleCallBack import com.shuyu.gsyvideoplayer.utils.Debuger @@ -96,23 +98,31 @@ class LoginFragment : MvpFragment(), ILoginView CallerLogger.d(TAG, "init") // TODO yangyakun 根据后台配置的用户租户对应的皮肤包进行下载换肤 val skin = Skin( - "9b69f8c4a2b3b953e1600930eda6a099", - "YiXin-skin_v1_2024_10_23.apk", - "https://carlife-static-1255510688.cos.ap-beijing.myqcloud.com/MoGoEagleEye/YiXin-skin_v1_2024_10_23.apk" + "88a7b397d6a03966aa332aea17f5210a", + "YiXin-skin_v1_2024_10_24.apk", + "https://carlife-static-1255510688.cos.ap-beijing.myqcloud.com/MoGoEagleEye/YiXin-skin_v1_2024_10_24.apk" ) //换肤 - SkinManager.getInstance().selectSkin(Utils.getApp(), skin) + SkinManager.getInstance().downloadSkin(Utils.getApp(), skin, object : SkinLoadListener { + override fun onLoadSuccess() { + FileUtils.copyVideoRawToFile(Utils.getApp(), R.raw::class.java.fields) + } + + override fun onLoadFailed(e: java.lang.Exception?) { + + } + }) context?.let { - val videoUrl:String + val videoUrl: String if (AppIdentityModeUtils.isT1T2(FunctionBuildConfig.appIdentityMode)) { //aciv_login_bg.setImageResource(R.drawable.biz_login_bg_taxi_start) biz_login_svp.setBackgroundResource(R.drawable.biz_login_bg_taxi_start) - videoUrl = "android.resource://" + it.packageName + "/" + R.raw.biz_login_taxi_bg - }else{ + videoUrl = SkinResources.getInstance().getRawMp4FilePath(R.raw.video_biz_login_taxi_bg) + } else { //aciv_login_bg.setImageResource(R.drawable.biz_login_bg_bus_start) biz_login_svp.setBackgroundResource(R.drawable.biz_login_bg_bus_start) - videoUrl = "android.resource://" + it.packageName + "/" + R.raw.biz_login_bus_bg + videoUrl = SkinResources.getInstance().getRawMp4FilePath(R.raw.video_biz_login_bus_bg) } Debuger.enable() @@ -121,7 +131,8 @@ class LoginFragment : MvpFragment(), ILoginView biz_login_svp.enableshowProgressDialog = false biz_login_svp.enableDoubleClick = false - viewColdStart.setColdStartResultListener(object: ColdStartView.ColdStartResultListener{ + viewColdStart.setColdStartResultListener(object : + ColdStartView.ColdStartResultListener { override fun coldStartSuccess() { gsyVideoOptionBuilder.setUrl(videoUrl) .setCacheWithPlay(false) @@ -132,19 +143,25 @@ class LoginFragment : MvpFragment(), ILoginView override fun onAutoComplete(url: String?, vararg objects: Any?) { if (AppIdentityModeUtils.isT1T2(FunctionBuildConfig.appIdentityMode)) { biz_login_svp?.setBackgroundResource(R.drawable.biz_login_bg_taxi_end) - }else{ + } else { biz_login_svp?.setBackgroundResource(R.drawable.biz_login_bg_bus_end) } } }) if (showLoginInfoAnimator1 == null) { - showLoginInfoAnimator1 = ObjectAnimator.ofFloat(cl_login_info, "alpha", 0f, 1f) + showLoginInfoAnimator1 = + ObjectAnimator.ofFloat(cl_login_info, "alpha", 0f, 1f) showLoginInfoAnimator1?.interpolator = LinearInterpolator() } if (showLoginInfoAnimator2 == null) { val dp2px = AutoSizeUtils.dp2px(AbsMogoApplication.getApp(), -50f) - showLoginInfoAnimator2 = ObjectAnimator.ofFloat(cl_login_info, "translationY", 0f, dp2px.toFloat()) + showLoginInfoAnimator2 = ObjectAnimator.ofFloat( + cl_login_info, + "translationY", + 0f, + dp2px.toFloat() + ) showLoginInfoAnimator2?.interpolator = DecelerateInterpolator() } UiThreadHandler.postDelayed({ @@ -152,7 +169,7 @@ class LoginFragment : MvpFragment(), ILoginView val animatorSet = AnimatorSet() animatorSet.playTogether(showLoginInfoAnimator1, showLoginInfoAnimator2) animatorSet.duration = 500 - animatorSet.addListener(object :AnimatorListener{ + animatorSet.addListener(object : AnimatorListener { override fun onAnimationStart(animation: Animator) { cl_login_info?.visibility = View.VISIBLE } @@ -172,7 +189,7 @@ class LoginFragment : MvpFragment(), ILoginView }) animatorSet.start() } - },2_000,UiThreadHandler.MODE.QUEUE) + }, 2_000, UiThreadHandler.MODE.QUEUE) biz_login_svp.startPlayLogic() } @@ -223,12 +240,12 @@ class LoginFragment : MvpFragment(), ILoginView } } biz_actv_login_show_sn.text = SharedPrefsMgr.getInstance().sn - if(BuildConfig.DEBUG) { + if (BuildConfig.DEBUG) { biz_actv_login_show_sn.setOnLongClickListener { bv_switch_business.selectBusniess() true } - }else{ + } else { biz_actv_login_show_sn.setOnLongClickListener { context?.let { ToggleDebugView.toggleDebugView.toggle(it) diff --git a/OCH/common/biz/src/main/res/layout/biz_login_view.xml b/OCH/common/biz/src/main/res/layout/biz_login_view.xml index b77d3de518..2ce985f515 100644 --- a/OCH/common/biz/src/main/res/layout/biz_login_view.xml +++ b/OCH/common/biz/src/main/res/layout/biz_login_view.xml @@ -6,7 +6,7 @@ android:layout_width="match_parent" android:layout_height="match_parent"> - -