From 3a8542425bfbcef5dccfff5845108b2035fe4858 Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Tue, 17 Nov 2020 18:02:38 +0800 Subject: [PATCH 1/7] =?UTF-8?q?=E5=AE=9A=E4=BD=8D=E6=8C=89=E9=92=AE?= =?UTF-8?q?=E5=AE=9E=E7=8E=B0=E8=B0=83=E6=95=B4=E8=BD=A6=E5=A4=B4=E6=96=B9?= =?UTF-8?q?=E5=90=91=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../extensions/entrance/EntranceFragment.java | 34 ++++++++++++++++--- .../service/ttsConfig/TtsConfigProvider.java | 4 ++- .../src/main/res/values/strings.xml | 1 - 3 files changed, 32 insertions(+), 7 deletions(-) diff --git a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java index a01330099d..3d9aabd36d 100644 --- a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java +++ b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java @@ -11,6 +11,7 @@ import android.view.LayoutInflater; import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; +import android.widget.ImageButton; import android.widget.ImageView; import android.widget.TextView; @@ -112,7 +113,7 @@ public class EntranceFragment extends MvpFragment() { + mTtsModleData.playTts(new RefreshCallback< TtsConfigEntity >() { @Override public void onSuccess(TtsConfigEntity o) { } diff --git a/modules/mogo-module-service/src/main/res/values/strings.xml b/modules/mogo-module-service/src/main/res/values/strings.xml index 8bfbb2b0d2..46bb81ce90 100644 --- a/modules/mogo-module-service/src/main/res/values/strings.xml +++ b/modules/mogo-module-service/src/main/res/values/strings.xml @@ -9,7 +9,6 @@ 距离导航目的地 查看车友信息 电话 - 很抱歉,目的地%dKM内未找到车友 很抱歉,目的地%d公里内未找到车友 目的地车友 加载失败,请点击重试 From 20e57bb118def03a601e4994b4dfbf8c06107ba9 Mon Sep 17 00:00:00 2001 From: tongchenfei Date: Fri, 20 Nov 2020 15:33:33 +0800 Subject: [PATCH 2/7] opt ui --- libraries/map-amap/src/main/res/values/dimens.xml | 4 ++-- .../mogo/module/extensions/entrance/EntrancePresenter.java | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/libraries/map-amap/src/main/res/values/dimens.xml b/libraries/map-amap/src/main/res/values/dimens.xml index 21d58bd9ed..d8d50de3af 100644 --- a/libraries/map-amap/src/main/res/values/dimens.xml +++ b/libraries/map-amap/src/main/res/values/dimens.xml @@ -1,7 +1,7 @@ 60px - 44px - 66px + 33px + 50px 146px \ No newline at end of file diff --git a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntrancePresenter.java b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntrancePresenter.java index 31ac15568d..fb6d339554 100644 --- a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntrancePresenter.java +++ b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntrancePresenter.java @@ -120,7 +120,9 @@ public class EntrancePresenter extends Presenter implements Weathe // 相当于每次onResume都会请求一下个人信息,目的是能够相对及时的同步手机端的个人信息修改 requestUserInfo(); } - requestCarModelList(); + if(DebugConfig.isMapBased()) { + requestCarModelList(); + } getCommonConfig(); } From 69eca19bc0f287b4220dc46ffd153ad930b9596b Mon Sep 17 00:00:00 2001 From: liujing Date: Fri, 20 Nov 2020 16:00:07 +0800 Subject: [PATCH 3/7] =?UTF-8?q?[add]=20=E7=99=BD=E5=A4=A9=E6=A8=A1?= =?UTF-8?q?=E5=BC=8F=E5=9B=BE=E7=89=87=E8=B5=84=E6=BA=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../drawable-mdpi/icon_history_heart_back.png | Bin 0 -> 3705 bytes .../icon_history_heart_back_light.png | Bin 0 -> 1696 bytes .../icon_history_heart_back_light.png | Bin 0 -> 3126 bytes 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 modules/mogo-module-v2x/src/main/res/drawable-mdpi/icon_history_heart_back.png create mode 100644 skin/mogo-skin-light/src/main/module-v2x-res/drawable-mdpi/icon_history_heart_back_light.png create mode 100644 skin/mogo-skin-light/src/main/module-v2x-res/drawable-xhdpi/icon_history_heart_back_light.png diff --git a/modules/mogo-module-v2x/src/main/res/drawable-mdpi/icon_history_heart_back.png b/modules/mogo-module-v2x/src/main/res/drawable-mdpi/icon_history_heart_back.png new file mode 100644 index 0000000000000000000000000000000000000000..119a39baa7764342e3cff0048c029e9b6f5ece78 GIT binary patch literal 3705 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 iv>siMv%~P96y*) zpbw57IGwQK>`g|zHOgY_I?OY_86r}Y1IA7b2yR2Q)*m|~W=|Kem&%J9b;{9Wtp(h2=t zOXnBH?dz+*q2Ov+6;&}dC#w=wRnMBZL|(mOa_-9pHWm z8^{yoJac{K0$>~AZ99^pC@owVwfKj!o#@v@45fMnP^9#~xDPQ6)xZnENNreLVJ$w3 zv0CG|NEow@Y7UR7^;1(%j%@VWOIQnAXc$$>D46Ltn;XuqYIc^0wgAn(#F|cg%)nPg z#yNxg(3XhI$ZArVrbKu8+3!xQ}hNDP| z^YV-toM+wdQ8Kqx5L6ixfoF!$Irb)eKeIgWRV;Ob?K347M*I&7yyEb_w=ZOt5N5t? zvYbI`m8r@~m?bBaif95EmIl-~OgN=jS8Ls-bFBOlJIpuh3lEz?hRb=2*uVeCfsMBP zDZj0evu791U~bhI9>%89J5FpEqa}Ov zD+p$!t=li7^bg`m?+eIqD|X0MI>Y?qUfcc~n13RHcaX+kJDtvzGiRRr%bg}MESCQO X!|6VgE=00001b5ch_0Itp) z=>Px*T1iAfRA>d&TT4?FM--m!nVX9OmqZXF8eWD(^3shzBa5Ue6ku?d%8r#45t1sa z5}z>}ciBo1i&Q0x{0ui@Vl<+FL^Q#m0ek@W&P@7iJyU(h?zyj-d(B<5Cc+fNZVV>E$pb8)*J;&$Tu* zaw*~?hxRNOD^UUPaD%afU6%uy@B8f3#XI`~fyg|gGBLMb6(SE!c3e|I4WIF(QYbC2 z(q=r%^SZ2<9U1JnDtk+^b3ZI+*4Sz{mBXoONGcXm&>3KOXeTbr=RLG=LtWY4()-yy z-}mymtZNvS@sa-B(_vvTE>{W<#a?qvy> zG#GWpPBqOjET5aU-A2NsQ;xMdX%N*u$Ht%vlFoDNLP>+D_BpmZOjuQzR9;RGGXC}X z`Ce}OX)4E^(p(JYApoYPrtF#Qf%oGC!vZ`y*ma$3<^hthT-S{Bkz#wGm0p!=0o4Y` zpPG8meRF-Kq!3w%iXPy9{J51cCL|ocFM|acw9U# z=K3p#hxXhr1Vo^bfX95F*GoRVWLS)MPdt-y$e@C@30#-6=8~x1e@TbkII^Y)o z;~J^l%B~(g_||L~G!O9HxtTPMeBnlAmu)*Y*5Ce{svnFxOodp%fFjPY*wnRv(!^%N-qO)g%X;B>CwSViJAY_#><)#P%?GPa7h0t1srt&j1- zS=QO{Tib(a5w~%jJ>Og=8LgvsGo7cAd4V0yZ?TWfAUU zD}^3KT=j5CIsA~g3`W@@-UKNuh2-{e7*9Y3K<#}s(b27A5;;x=_ zXUnmV7X&Wg1bykO!E-1&ZdVR!m36=coB%7XN2cpH?Tqmo3N-q^{#r8W8{D-T5{-4$ z^5Hyu__T$4bxuPqJCP(dxN#YjPZFhuw!w|##-WCNNERBmDY#Ba7NvI9!HwgtsCHdQ z78%?)F2XEv&`cJp2G#{9aC;V66UYA=bRkhlgf!rjN>4_{HpI&05Qax-iof$0t{DlhE12RrbhW&zyP= zq;^_@R4K2wThl$^PoSy3=BcDBjqf)aBczI1Ke0 zX;B1K1pq1aRP18&6%o{dV1YV2er2m=)z`Zgs}tY%q;n}J#W!;{E_$VoaDwrbo|DaG@jnT+ qPx=@JU2LRCodHUCVFW#u+Dv%YDd_71xdJSh6F@b`m%Z+FQ|6k!yio3RHGtH$eUY z-|G00074ThiF5Nm5TKP4M+JH*&}-0BuT6v6Nn}g1EG2ea*VV&X?Q%(mKdM8`&XU|A zclgknI%ppJ-rsUKocX??q6GX+&)z-x{`GGr{4T3(=auUVKV#c${qmXdf6}&x6ox>7 z^`>(F{F~$V2|7d&0B4kyLnvKNqDVl%pUY{xD*m6qO5)(#kVG{aTal42o_S$DGE!6o zz(?{E5a49bdT<;%!~W>6!sA4NgM3C20M~(p&JRCbI&7Q9{-2Lb+A)=Lj@-4%~IEerwI-kvX=a9UUP& zM$lsVFU$Mwx^YC7MwAKYwK1X$Y};0+KUw@KZAU3Fiqb)m#q(vv0?<01MR>H(HZAcG zz?e?kL8UOGso8%Imh08Sq*AF_meEkE`a^y^i^b&K*~M{U*uz1{Y(MJ@wjXt0O|H#6 z+PkiOm(D(alZWeIB4e!MwQ6G`g8|ioW#mmOrf=MNfda@VS%Ez!wn+wL z5NByz`P1TaXeay3A@)I!3Cmq}{p#$(A@vWR%)PAHC0#agmL5r(0hoD?XF1ER7fd2q zw13Ry4v_3P6Uhz&z$Hy>ByO&^PLJJknHWvwD*>S*gJ_!V&i-8{Q*Vw(UMmsdc;WQK z7l2FUq1DC&TxI+S*r#HLCg{LlFN}Bwpx2=ZI_X~&W`@3bdusCK4T{T_p-d=X(0rK? z<$o7n8(*YwL8TCrAY|JA(I4;csh8Hr;y#;fVm^BNwd40Fy|`s8Wv)647>3URMqDBM z@GwS1y@iF9!4xow8JeFWeBTLu?B?X8+T{EBcBnGFyn^wJWVB1R{-3wbjxGn$3REV_ zogYLzseVnj7A{O4Tjl9@C=>Ukizl2$n;)Colu6^pmaQbKkT-?-$a%+3dW4d#2%cPxMMKYkbTe2-b$O7DNVrEE|%tRXr?&SRQCNbGS+^ z4}!>$fw;?#GAQMM2EqDi4&;y`0ufyZmclJTB6#OJ3;8Nje}oB*6$cH>?B+_~*dnYM{0q@A9*d(u{|axNw3gfd(uy{>^;$qM`UGqg4i)KjO|E0{#uka z7Q1WT8}oEzih@gFdsc=LqUGnG+ogXzUKv*Fo5QxMmz~L}uZ`8H* zwVN+(V!MVa?Ly?sQrv{<1drrI)Ut)a!=zj5eE90gdM*vd@(_1gh`ts!-9*wWS2 zcP7UcSOKHdBP%oY@j_KED=$T15*1c=VxP`Cu}@L)A}N#h>|n^=JAdx%{xwmhgp|p0 zMxbie=B3legn}ZwDigG4B5EyJaA8k=$|F>nyiI4=phcu>x9RGopBx>^U{5B?Nu{5Vd|y!PQ-?C$T*(v8qKzFqY`yTj+mxX} zQ#?=}+kSz2ZOSMqOzmYF2Kz}YJx>{gz_S;2L!IAG@|2+=+PgssRz_@+(YC7$Ua)A# zZY$YMGFKTHZ;DwO0Xu)-@BPfO6sA|+2z3Dsf{A3W#InYxF+0R=T5dpY)&j}kPyB-F zWe`rA2KHwA;+}!wYUa@1zEQ?hjsEeBLQ3({8`HiYMEDU))BEOUrnDMX-zZ}dV)TtN zs%Td_*L%QIuF#a5Tciy=Slm zmz5wg_|gayR~hUj${?CG4Of|7Hbt{mfIS1k8=4V=lC@xQ__GH#c*^lI9GDW6804!AgcR8jOWQQSXL9{4c%>~ zmj7Vp-YZUwi$>dNmqD3Kyc|Nx0O`Hidn2mRdX^`Ubi3PjIm=&I86ZvBHmQEL@QP`w zk?>fC!gWi1aQSy*kzP+?35BIl-55A7ELa3UdH_-c6c03(G8FsTwYf_DfIiVO?F#LS zTk5)VSm5M%*K_B>==Y=yOZeK~<|3w9mHGeKKylSib@e z2`dOHu^(6Ow;pHt&YG%YFraJJ(81jnae#+~N!A}E5xmU(F1%)B?^m=v-f`#)MV;jdHGH~cY;l0p`?U=lU zq4#2hq;R{PDHFywvSad+;1H%%-mdwb@Z3#CVaFhKX1=-n;?w#J>1N1o*YOORD35*} zw4%)83ppmMWj|inerN}sgv{#}>KMF-l&>$nv|IA%dFArj##UeR%+asH-h%=igB;9i z&3>_8UJUc*BsclIu71t$#Zoza9h2l*IAvUv+ZG5qqO)V;&rP{bXoI3~MyCa^83dd2 zSK1td)n3_o@I1q!-Dv^X9JXh#v^fU5UhKu9o}LAG+k1||u@`yS6G_h;`QZfH!v|C% z*D=^JjC&RdB~+BXTL3rm={a~EdZYooLd_RQC!Hx0`LiO z<8htn_e>-xn08vg@dbS1&d8A4(FsxXWMKj73)eA7xWS3lSqM__+_39NHeL0uPocB`XOD0_%10|7H`Tl3~C$jodcHRvwDj&YYa`Du}oJhW=kYgz0tUqH$ z<=Bm-=#e;7w@8kmNJZWywM6$aZa!u#$3PqmZ&$CcjO6VrI^9i`4g~Tq&z~7t5gE4p zB#P}AmROOOxnqqu`IbA_J2feeq2!RKdE1&Fd)g)mc&HyI6N{qxmDFBgrBuhTj4;jK zP&P*UHBAuddV|W~a+DAFvG(a!Ps}kaW26lZ)U*-)J3}nYZm8o;eY0+^1f}Q6)FBne z@B$-)YEQj+kp1Kk50i&>*;!nCQY$}TPZCZ`u1p-`ryM?`)X+D6WZCv!`r#fwxFq_p zK}A$`tzr!RmtA^Kf|n@G+&CsoU_`(F{o&1OxinnS8dk-!wyL(Kl@#Z57)r_cP(jl< zOO*yLI-mQn%FY?ZEhlc?329VKvqeaC%dC(_v$fjz<+CTZ@I` Date: Fri, 20 Nov 2020 16:01:17 +0800 Subject: [PATCH 4/7] =?UTF-8?q?Revert=20"[add]=20=E7=88=B1=E5=BF=83?= =?UTF-8?q?=E5=9B=BE=E7=89=87=E6=9B=BF=E6=8D=A2-=E5=B7=AE=E7=BA=A2?= =?UTF-8?q?=E6=A1=83=E5=BF=83"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit a512b5977d07732d000ae0b36d17ba34b1d7569c. --- .../v2x/adapter/holder/V2XIllegalParkVH.java | 6 ------ .../v2x/adapter/holder/V2XRoadEventVH.java | 5 ----- .../holder/V2XScenarioHistoryIllegalParkVH.java | 5 ----- .../holder/V2XScenarioHistoryRoadEventVH.java | 4 ---- .../com/mogo/module/v2x/view/HeartLikeView.java | 3 +-- .../drawable-xhdpi/icon_history_heart_back.png | Bin 9769 -> 0 bytes .../main/res/layout/item_v2x_event_detail.xml | 6 +++--- .../res/layout/item_v2x_scennario_history.xml | 1 - .../src/main/res/layout/view_heart_like.xml | 1 + .../src/main/res/values/style.xml | 5 ----- 10 files changed, 5 insertions(+), 31 deletions(-) delete mode 100644 modules/mogo-module-v2x/src/main/res/drawable-xhdpi/icon_history_heart_back.png diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XIllegalParkVH.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XIllegalParkVH.java index 2bdd6bfabd..b57ff5d648 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XIllegalParkVH.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XIllegalParkVH.java @@ -1,14 +1,10 @@ package com.mogo.module.v2x.adapter.holder; -import android.content.res.TypedArray; -import android.graphics.drawable.Drawable; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; -import androidx.core.content.ContextCompat; - import com.mogo.module.common.entity.MarkerExploreWay; import com.mogo.module.common.entity.V2XEventShowEntity; import com.mogo.module.common.entity.V2XHistoryScenarioData; @@ -56,8 +52,6 @@ public class V2XIllegalParkVH extends V2XBaseViewHolder { mAddressTv = itemView.findViewById(R.id.tvAddress); mIllegalNumTv = itemView.findViewById(R.id.tvIllegalNum); mIlIllegalParkingLike = itemView.findViewById(R.id.llIllegalParkingLike); - Drawable drawable = ContextCompat.getDrawable(viewGroup.getContext(), R.drawable.icon_heart_like_bg); - mIlIllegalParkingLike.setBackground(drawable); mIIllegalParkingUnLike = itemView.findViewById(R.id.llIllegalParkingUnLike); // 设置视图状态监听 diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XRoadEventVH.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XRoadEventVH.java index ba73a92fc6..85c7effcc5 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XRoadEventVH.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XRoadEventVH.java @@ -1,7 +1,6 @@ package com.mogo.module.v2x.adapter.holder; import android.content.Intent; -import android.graphics.drawable.Drawable; import android.text.TextUtils; import android.util.Log; import android.view.LayoutInflater; @@ -10,8 +9,6 @@ import android.view.ViewGroup; import android.widget.ImageView; import android.widget.TextView; -import androidx.core.content.ContextCompat; - import com.mogo.commons.debug.DebugConfig; import com.mogo.module.common.entity.MarkerExploreWay; import com.mogo.module.common.entity.MarkerUserInfo; @@ -136,8 +133,6 @@ public class V2XRoadEventVH extends V2XBaseViewHolder { ivEventLive = itemView.findViewById(R.id.ivEventLive); ivEventCallChart = itemView.findViewById(R.id.ivEventCallChart); ivEventZan = itemView.findViewById(R.id.ivEventZan); - Drawable drawable = ContextCompat.getDrawable(itemView.getContext(), R.drawable.icon_heart_like_bg); - ivEventZan.setBackground(drawable); ivEventReportTrue = itemView.findViewById(R.id.ivEventReportTrue); ivEventReportErr = itemView.findViewById(R.id.ivEventReportErr); } diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryIllegalParkVH.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryIllegalParkVH.java index 3998c9a69a..e32d6aef52 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryIllegalParkVH.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryIllegalParkVH.java @@ -1,14 +1,11 @@ package com.mogo.module.v2x.adapter.holder; -import android.content.res.TypedArray; -import android.graphics.drawable.Drawable; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; import androidx.annotation.NonNull; -import androidx.core.content.ContextCompat; import com.mogo.module.common.entity.MarkerExploreWay; import com.mogo.module.common.entity.V2XHistoryScenarioData; @@ -50,8 +47,6 @@ public class V2XScenarioHistoryIllegalParkVH extends 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 DXo2wC diff --git a/modules/mogo-module-v2x/src/main/res/layout/item_v2x_event_detail.xml b/modules/mogo-module-v2x/src/main/res/layout/item_v2x_event_detail.xml index 451abab86d..bc25522ee9 100644 --- a/modules/mogo-module-v2x/src/main/res/layout/item_v2x_event_detail.xml +++ b/modules/mogo-module-v2x/src/main/res/layout/item_v2x_event_detail.xml @@ -194,10 +194,10 @@ diff --git a/modules/mogo-module-v2x/src/main/res/layout/view_heart_like.xml b/modules/mogo-module-v2x/src/main/res/layout/view_heart_like.xml index 9abaf966f6..8080b8a457 100644 --- a/modules/mogo-module-v2x/src/main/res/layout/view_heart_like.xml +++ b/modules/mogo-module-v2x/src/main/res/layout/view_heart_like.xml @@ -3,6 +3,7 @@ android:id="@+id/llIllegalParkingLike" android:layout_width="@dimen/module_v2x_event_button_size" android:layout_height="@dimen/module_v2x_event_button_size" + android:background="@drawable/icon_heart_like_bg" android:gravity="center"> @dimen/dp_40 - - - - - \ No newline at end of file From 9fc4cd3cba32c8ba7b819bf399430e8e4bee07ab Mon Sep 17 00:00:00 2001 From: lixiaopeng Date: Fri, 20 Nov 2020 16:02:51 +0800 Subject: [PATCH 5/7] opt --- .../v2x/adapter/V2XSurroundingAdapter.java | 7 +- .../v2x/fragment/V2XEventPanelFragment.kt | 115 ++++++- .../v2x/fragment/V2XSurroundingFragment.java | 168 ++++------ .../SurroundingItemClickListener.java | 2 +- .../bg_v2x_surrounding_event_list_item.xml | 6 + .../drawable/bg_v2x_surrounding_road_type.xml | 8 + ...odule_event_panel_fragment_surrounding.xml | 291 +++++++----------- ...e_v2x_event_panel_fragment_event_panel.xml | 47 ++- ...dule_v2x_event_surrounding_detail_item.xml | 22 +- .../drawable-ldpi/v2x_back_image_light.png | Bin 0 -> 1457 bytes .../drawable-mdpi/v2x_back_image_light.png | Bin 0 -> 1457 bytes ..._v2x_surrounding_event_list_item_light.xml | 6 + 12 files changed, 370 insertions(+), 302 deletions(-) create mode 100644 modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_surrounding_event_list_item.xml create mode 100644 modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_surrounding_road_type.xml create mode 100644 skin/mogo-skin-light/src/main/module-v2x-res/drawable-ldpi/v2x_back_image_light.png create mode 100644 skin/mogo-skin-light/src/main/module-v2x-res/drawable-mdpi/v2x_back_image_light.png create mode 100644 skin/mogo-skin-light/src/main/module-v2x-res/drawable/bg_v2x_surrounding_event_list_item_light.xml diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/V2XSurroundingAdapter.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/V2XSurroundingAdapter.java index 2fefe935c1..fa111adadc 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/V2XSurroundingAdapter.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/V2XSurroundingAdapter.java @@ -74,16 +74,11 @@ public class V2XSurroundingAdapter extends RecyclerView.Adapter() + private val mV2XScenarioHistoryFragment = V2XScenarioHistoryFragment() private val mV2XShareEventsFragment = V2XShareEventsFragment() private val mV2XSurroundingFragment = V2XSurroundingFragment() @@ -77,6 +101,11 @@ class V2XEventPanelFragment : MvpFragment try { @@ -120,6 +149,12 @@ class V2XEventPanelFragment : MvpFragment "封路" + MarkerPoiTypeEnum.FOURS_ICE -> "道路结冰" + MarkerPoiTypeEnum.FOURS_FOG -> "浓雾" + MarkerPoiTypeEnum.TRAFFIC_CHECK -> "交通检查" + MarkerPoiTypeEnum.FOURS_ACCIDENT -> "交通事故" + MarkerPoiTypeEnum.FOURS_BLOCK_UP -> "拥堵" + MarkerPoiTypeEnum.FOURS_ROAD_WORK -> "施工" + MarkerPoiTypeEnum.FOURS_PONDING -> "道路积水" + MarkerPoiTypeEnum.FOURS_LIVING -> "实时路况" + else -> "实时路况" + } + return typeName + } + private fun selectWithItem(item: Int) { when (item) { 0 -> { diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/fragment/V2XSurroundingFragment.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/fragment/V2XSurroundingFragment.java index a9d2cfd849..92ebcde361 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/fragment/V2XSurroundingFragment.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/fragment/V2XSurroundingFragment.java @@ -26,6 +26,7 @@ import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; import com.alibaba.android.arouter.launcher.ARouter; +import com.mogo.commons.debug.DebugConfig; import com.mogo.commons.mvp.MvpFragment; import com.mogo.commons.voice.AIAssist; import com.mogo.map.MogoLatLng; @@ -53,6 +54,8 @@ import com.mogo.service.MogoServicePaths; import com.mogo.utils.WorkThreadHandler; import com.mogo.utils.logger.Logger; +import org.greenrobot.eventbus.EventBus; + import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; @@ -82,14 +85,6 @@ public class V2XSurroundingFragment extends MvpFragment markerExploreWays = new ArrayList<>(); - - @Override protected int getLayoutId() { @@ -118,13 +113,6 @@ public class V2XSurroundingFragment extends MvpFragment 0) { AIAssist.getInstance(V2XUtils.getApp()). speakTTSVoice("为您找到周边以下事件请查看", null); @@ -323,99 +300,76 @@ public class V2XSurroundingFragment extends MvpFragment "); + } + + @Override + public void onAnimEnd() { + if (mogoMarker.isDestroyed()) { + return; + } + Logger.d(TAG, " onItemClickListener onAnimEnd ------> "); + mogoMarker.startScaleAnimation(1.2f, 1, 1.2f, 1, 100, new LinearInterpolator(), null); + } + }); + mogoMarker.setOwner(markerShowEntity.getMarkerType()); + mogoMarker.setObject(markerShowEntity); + } + }, i * 100L); + } + + //自适应显示 + showBonndsRoadtion(exploreWayList); + } else { + Logger.e(TAG, "onItemClickListener exploreWayList == null"); + } + } catch (Exception e) { + e.printStackTrace(); + } + } } } -// @Override -// public void onItemClickListener(View v, int position, SurroundingConstruction construction) { -// if (construction != null) { -// //卡片消失 -// V2XEventPanelFragment.Companion.getInstance().hidePanel(); -// //清除道路事件 -// V2XServiceManager.getMarkerManager().removeMarkers(ServiceConst.CARD_TYPE_ROAD_CONDITION); -// -// try { -// //处理 marker的显示 -// List exploreWayList = construction.getConstrutList(); -// Logger.d(TAG, "onItemClickListener exploreWayList.size() = " + exploreWayList.size()); -// if (exploreWayList != null && exploreWayList.size() > 0) { -// for (int i = 0; i < exploreWayList.size(); i++) { -// MarkerExploreWay exploreWay = exploreWayList.get(i); -// MarkerShowEntity markerShowEntity = new MarkerShowEntity(); -// markerShowEntity.setBindObj(exploreWay); -// markerShowEntity.setChecked(false); -// markerShowEntity.setTextContent(exploreWay.getAddr()); -// markerShowEntity.setMarkerLocation(exploreWay.getLocation()); -// markerShowEntity.setMarkerType(ServiceConst.CARD_TYPE_ROAD_CONDITION); -// -// WorkThreadHandler.getInstance().postDelayed(() -> { -// IMogoMarker mogoMarker = V2XServiceManager.getIMogoMarkerService().drawMarker(markerShowEntity); -// // 点击监听,天际弹窗展示详情 -// if (mogoMarker != null) { -// mogoMarker.startScaleAnimation(0, 1.2f, 0, 1.2f, 300, new AccelerateInterpolator(), new OnMarkerAnimationListener() { -// @Override -// public void onAnimStart() { -// Logger.d(TAG, " onItemClickListener onAnimStart -----> "); -// } -// -// @Override -// public void onAnimEnd() { -// if (mogoMarker.isDestroyed()) { -// return; -// } -// Logger.d(TAG, " onItemClickListener onAnimEnd ------> "); -// mogoMarker.startScaleAnimation(1.2f, 1, 1.2f, 1, 100, new LinearInterpolator(), null); -// } -// }); -// mogoMarker.setOwner(markerShowEntity.getMarkerType()); -// mogoMarker.setObject(markerShowEntity); -// } -// }, i * 100L); -// } -// -// //自适应显示 -// showBonndsRoadtion(exploreWayList); -// } else { -// Logger.e(TAG, "onItemClickListener exploreWayList == null"); -// } -// } catch (Exception e) { -// e.printStackTrace(); -// } -// } -// } - - /** * 自适应显示 * diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/listener/SurroundingItemClickListener.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/listener/SurroundingItemClickListener.java index 83eef72f09..3ebf7bccf3 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/listener/SurroundingItemClickListener.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/listener/SurroundingItemClickListener.java @@ -10,5 +10,5 @@ import com.mogo.module.v2x.entity.panel.SurroundingConstruction; * @since 2020/8/10 */ public interface SurroundingItemClickListener { - void onItemClickListener(View v, int position, SurroundingConstruction construction, String poiType); + void onItemClickListener(View v, int position, SurroundingConstruction construction); } diff --git a/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_surrounding_event_list_item.xml b/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_surrounding_event_list_item.xml new file mode 100644 index 0000000000..d1f0a2354f --- /dev/null +++ b/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_surrounding_event_list_item.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_surrounding_road_type.xml b/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_surrounding_road_type.xml new file mode 100644 index 0000000000..e789d681a3 --- /dev/null +++ b/modules/mogo-module-v2x/src/main/res/drawable/bg_v2x_surrounding_road_type.xml @@ -0,0 +1,8 @@ + + + + + \ No newline at end of file diff --git a/modules/mogo-module-v2x/src/main/res/layout/module_event_panel_fragment_surrounding.xml b/modules/mogo-module-v2x/src/main/res/layout/module_event_panel_fragment_surrounding.xml index dca25c89b9..d335682a1c 100644 --- a/modules/mogo-module-v2x/src/main/res/layout/module_event_panel_fragment_surrounding.xml +++ b/modules/mogo-module-v2x/src/main/res/layout/module_event_panel_fragment_surrounding.xml @@ -5,201 +5,148 @@ android:layout_width="match_parent" android:layout_height="match_parent"> - + - - + - + android:layout_height="@dimen/module_v2x_surrounding_top_height" + android:visibility="visible"> + + + + + android:layout_width="@dimen/module_v2x_surrounding_top_bt_width" + android:layout_height="@dimen/module_v2x_surrounding_top_bt_height" + android:layout_alignParentRight="true" + android:layout_centerVertical="true" + android:layout_marginEnd="@dimen/module_v2x_surrounding_margin_left" + android:background="@drawable/bg_v2x_refresh" + android:gravity="center"> + + + + + + + + + + + + + + + + - + android:layout_width="match_parent" + android:layout_height="match_parent" + android:layout_below="@+id/tv_main_empty_2" + android:layout_marginTop="@dimen/module_v2x_surrounding_empty_bt_margin_top"> + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + diff --git a/modules/mogo-module-v2x/src/main/res/layout/module_v2x_event_surrounding_detail_item.xml b/modules/mogo-module-v2x/src/main/res/layout/module_v2x_event_surrounding_detail_item.xml index 3753401c25..cf502b43fc 100644 --- a/modules/mogo-module-v2x/src/main/res/layout/module_v2x_event_surrounding_detail_item.xml +++ b/modules/mogo-module-v2x/src/main/res/layout/module_v2x_event_surrounding_detail_item.xml @@ -5,7 +5,7 @@ android:id="@+id/surrounding_root" android:layout_width="match_parent" android:layout_height="wrap_content" - android:background="@drawable/bg_v2x_event_list_item"> + android:background="@drawable/bg_v2x_surrounding_event_list_item"> + tools:text="小黄庄北街与北三环辅路交叉口" /> + tools:text="小蘑菇" /> @@ -51,14 +53,14 @@ android:id="@+id/surrounding_road_type" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_marginStart="@dimen/dp_36" - android:layout_marginTop="@dimen/dp_12" + android:layout_marginStart="20px" + android:layout_marginTop="6px" android:layout_marginBottom="@dimen/dp_36" android:background="@drawable/bg_v2x_event_type_read" android:gravity="center" - android:paddingLeft="5px" + android:paddingLeft="6px" android:paddingTop="3px" - android:paddingRight="5px" + android:paddingRight="6px" android:paddingBottom="3px" android:text="违章停车" android:textColor="#ffffff" diff --git a/skin/mogo-skin-light/src/main/module-v2x-res/drawable-ldpi/v2x_back_image_light.png b/skin/mogo-skin-light/src/main/module-v2x-res/drawable-ldpi/v2x_back_image_light.png new file mode 100644 index 0000000000000000000000000000000000000000..532c21499dc08beb93261b81220bbef66801f4fd GIT binary patch literal 1457 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 + + + + \ No newline at end of file From dbf6a6a95a7808b5c87d5b2d51f5fd228f6a5154 Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Fri, 20 Nov 2020 16:25:21 +0800 Subject: [PATCH 6/7] =?UTF-8?q?1.=20=E5=B0=8F=E6=99=BA=E5=8A=A8=E7=94=BB?= =?UTF-8?q?=E5=88=87=E6=8D=A2=E9=80=BB=E8=BE=91=E4=BF=AE=E6=94=B9=202.=20?= =?UTF-8?q?=E7=8B=AC=E7=AB=8Bapp=E5=8D=A1=E7=89=87=E5=88=B7=E6=96=B0?= =?UTF-8?q?=E6=AC=A1=E6=95=B0=E9=99=90=E5=88=B6=203.=20=E5=85=B6=E4=BB=96?= =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mogo-base-services-sdk/build.gradle | 2 +- .../module/apps/AppNavigatorFragment.java | 24 +++++++- .../module/apps/AppNavigatorPresenter.java | 30 +++++++++- .../mogo/module/apps/AppNavigatorView.java | 8 +++ .../java/com/mogo/module/apps/anim/Anim.java | 4 ++ .../com/mogo/module/apps/anim/AnimRes.java | 35 ++++++++--- .../mogo/module/apps/anim/AnimWrapper.java | 29 +++++---- .../com/mogo/module/apps/anim/KitkatAnim.java | 24 +++++++- .../com/mogo/module/apps/anim/OthersAnim.java | 60 ++++++++++++++++++- .../launchercard/LauncherCardRefresher.java | 32 +++++++--- .../service/network/RefreshApiService.java | 2 +- .../service/network/bean/TtsConfigData.java | 26 ++++---- .../module/share/StrategyShareProvider.kt | 1 - .../service/impl/adas/MogoADASController.java | 6 +- 14 files changed, 229 insertions(+), 54 deletions(-) diff --git a/foudations/mogo-base-services-sdk/build.gradle b/foudations/mogo-base-services-sdk/build.gradle index 6a9ad088e4..cc2a2bf725 100644 --- a/foudations/mogo-base-services-sdk/build.gradle +++ b/foudations/mogo-base-services-sdk/build.gradle @@ -30,7 +30,7 @@ dependencies { implementation fileTree(dir: "libs", include: ["*.jar"]) implementation rootProject.ext.dependencies.arouter // 上报位置 - implementation 'com.zhidao.locupload:loc-upload-sdk:1.1.3' + implementation 'com.zhidao.locupload:loc-upload-sdk:1.1.7' // 长链 implementation 'com.zhidao.socket:built-in-socket:1.0.15' // passport diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppNavigatorFragment.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppNavigatorFragment.java index 1a18f4acc9..dea7792240 100644 --- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppNavigatorFragment.java +++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppNavigatorFragment.java @@ -13,6 +13,7 @@ import androidx.recyclerview.widget.RecyclerView; import com.mogo.commons.AbsMogoApplication; import com.mogo.commons.mvp.MvpFragment; import com.mogo.module.apps.adapter.AppIndicatorAdapter; +import com.mogo.module.apps.anim.AnimRes; import com.mogo.module.apps.anim.AnimWrapper; import com.mogo.module.apps.applaunch.AppLauncher; import com.mogo.module.apps.applaunch.BaseAppLauncher; @@ -45,7 +46,7 @@ public class AppNavigatorFragment extends MvpFragment< AppNavigatorView, AppNavi private ImageView mAIAssist; private View mAIAssistContainer; - private AnimWrapper mAnim = new AnimWrapper(); + private AnimWrapper mAnim; private BaseAppLauncher mLauncher; @@ -71,7 +72,13 @@ public class AppNavigatorFragment extends MvpFragment< AppNavigatorView, AppNavi mAIAssistContainer = findViewById( R.id.module_apps_id_ai_assist_container ); mAIAssist = findViewById( R.id.module_apps_id_ai_assist ); - mAnim.initAnim( mAIAssist ); + + mAnim = new AnimWrapper( mAIAssist ); + boolean naviStatus = AppServiceHandler.getApis().getMapServiceApi().getNavi( getContext() ).isNaviing(); + if ( naviStatus ) { + setCurrentXiaoZhiEmoji( AnimRes.EmojiType.Navigation ); + } + mAIAssist.setOnClickListener( new OnAiAssistClickListener() ); mAIAssistContainer.setOnClickListener( view -> { mAIAssist.performClick(); @@ -100,6 +107,16 @@ public class AppNavigatorFragment extends MvpFragment< AppNavigatorView, AppNavi mAppIndicatorAdapter.setDatas( NavigatorApps.getApps() ); } + @Override + public void setCurrentXiaoZhiEmoji( AnimRes.EmojiType type ) { + boolean started = mAnim.isStarted(); + mAnim.stop(); + mAnim.setCurrentAnim( type ); + if ( started ) { + mAnim.start(); + } + } + @Override public void onResume() { super.onResume(); @@ -157,6 +174,9 @@ public class AppNavigatorFragment extends MvpFragment< AppNavigatorView, AppNavi if ( mPresenter != null ) { mPresenter.onDestroy( getViewLifecycleOwner() ); } + if ( mAnim != null ) { + mAnim.release(); + } AppServiceHandler.getApis().getFragmentManagerApi().removeMainFragmentStackTransactionListener( this ); } } diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppNavigatorPresenter.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppNavigatorPresenter.java index 5aaf7a9c38..39d5d63f83 100644 --- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppNavigatorPresenter.java +++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppNavigatorPresenter.java @@ -10,8 +10,11 @@ import com.mogo.commons.mvp.Presenter; import com.mogo.commons.voice.AIAssist; import com.mogo.commons.voice.IMogoVoiceCmdCallBack; import com.mogo.map.navi.IMogoNaviListener2; +import com.mogo.module.apps.anim.AnimRes; import com.mogo.module.apps.model.AppsModel; import com.mogo.service.intent.IMogoIntentListener; +import com.mogo.service.statusmanager.IMogoStatusChangedListener; +import com.mogo.service.statusmanager.StatusDescriptor; import com.mogo.utils.LaunchUtils; import com.mogo.utils.TipToast; @@ -26,7 +29,8 @@ import org.json.JSONObject; */ public class AppNavigatorPresenter extends Presenter< AppNavigatorView > implements IMogoIntentListener, IMogoVoiceCmdCallBack, - IMogoNaviListener2 { + IMogoNaviListener2, + IMogoStatusChangedListener { private static final String TAG = "AppNavigatorPresenter"; @@ -42,6 +46,7 @@ public class AppNavigatorPresenter extends Presenter< AppNavigatorView > impleme // 预加载应用列表,空间换时间 AppsModel.getInstance( getContext() ).load( null ); } + AppServiceHandler.getApis().getStatusManagerApi().registerStatusChangedListener( TAG, StatusDescriptor.MEDIA_PLAYER_STATUS, this ); } @Override @@ -117,15 +122,38 @@ public class AppNavigatorPresenter extends Presenter< AppNavigatorView > impleme super.onDestroy( owner ); AppServiceHandler.getApis().getRegisterCenterApi().unregisterMogoNaviListener( TAG ); AppServiceHandler.getApis().getIntentManagerApi().unregisterIntentListener( AppsConst.COMMAND_OPERATION, this ); + AppServiceHandler.getApis().getStatusManagerApi().unregisterStatusChangedListener( TAG, StatusDescriptor.MEDIA_PLAYER_STATUS, this ); } @Override public void onStartNavi() { mView.hideNavigationEntrance(); + mView.setCurrentXiaoZhiEmoji( AnimRes.EmojiType.Navigation ); } @Override public void onStopNavi() { mView.showNavigationEntrance(); + if ( AppServiceHandler.getApis().getStatusManagerApi().isMediaPlaying() ) { + mView.setCurrentXiaoZhiEmoji( AnimRes.EmojiType.Music ); + } else { + mView.setCurrentXiaoZhiEmoji( AnimRes.EmojiType.Others ); + } + } + + @Override + public void onStatusChanged( StatusDescriptor descriptor, boolean isTrue ) { + if ( descriptor != StatusDescriptor.MEDIA_PLAYER_STATUS ) { + return; + } + if ( AppServiceHandler.getApis().getMapServiceApi().getNavi( getContext() ).isNaviing() ) { + // 导航优先级更高 + return; + } + if ( isTrue ) { + mView.setCurrentXiaoZhiEmoji( AnimRes.EmojiType.Music ); + } else { + mView.setCurrentXiaoZhiEmoji( AnimRes.EmojiType.Others ); + } } } diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppNavigatorView.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppNavigatorView.java index f67673cb2c..4a66217251 100644 --- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppNavigatorView.java +++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppNavigatorView.java @@ -2,6 +2,7 @@ package com.mogo.module.apps; import com.mogo.commons.mvp.IView; +import com.mogo.module.apps.anim.AnimRes; /** * @author congtaowang @@ -19,4 +20,11 @@ public interface AppNavigatorView extends IView { void hideNavigationEntrance(); void showNavigationEntrance(); + + /** + * 设置当前小智形象表情 + * + * @param type + */ + void setCurrentXiaoZhiEmoji( AnimRes.EmojiType type ); } diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/Anim.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/Anim.java index e98e07ee8a..281a1d6e5b 100644 --- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/Anim.java +++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/Anim.java @@ -11,4 +11,8 @@ public interface Anim { void start(); void stop(); + + void setCurrentAnim( AnimRes.EmojiType type ); + + void release(); } diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/AnimRes.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/AnimRes.java index e579d0658a..d5b53da892 100644 --- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/AnimRes.java +++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/AnimRes.java @@ -11,7 +11,21 @@ import com.mogo.module.apps.R; */ public class AnimRes { - public static final int sRes[] = { + public enum EmojiType { + Navigation, + Music, + Others + } + + public static final int sNavigation[] = { + + }; + + public static final int sMusic[] = { + + }; + + public static final int sAll[][] = new int[][]{{ R.drawable.mogo_tts_icon_00000, R.drawable.mogo_tts_icon_00001, R.drawable.mogo_tts_icon_00002, @@ -23,7 +37,8 @@ public class AnimRes { R.drawable.mogo_tts_icon_00008, R.drawable.mogo_tts_icon_00009, R.drawable.mogo_tts_icon_00010, - R.drawable.mogo_tts_icon_00011, + R.drawable.mogo_tts_icon_00011 + }, { R.drawable.mogo_tts_icon_00012, R.drawable.mogo_tts_icon_00013, R.drawable.mogo_tts_icon_00014, @@ -35,7 +50,8 @@ public class AnimRes { R.drawable.mogo_tts_icon_00020, R.drawable.mogo_tts_icon_00021, R.drawable.mogo_tts_icon_00022, - R.drawable.mogo_tts_icon_00023, + R.drawable.mogo_tts_icon_00023 + }, { R.drawable.mogo_tts_icon_00024, R.drawable.mogo_tts_icon_00025, R.drawable.mogo_tts_icon_00026, @@ -47,7 +63,8 @@ public class AnimRes { R.drawable.mogo_tts_icon_00032, R.drawable.mogo_tts_icon_00033, R.drawable.mogo_tts_icon_00034, - R.drawable.mogo_tts_icon_00035, + R.drawable.mogo_tts_icon_00035 + }, { R.drawable.mogo_tts_icon_00036, R.drawable.mogo_tts_icon_00037, R.drawable.mogo_tts_icon_00038, @@ -59,7 +76,8 @@ public class AnimRes { R.drawable.mogo_tts_icon_00044, R.drawable.mogo_tts_icon_00045, R.drawable.mogo_tts_icon_00046, - R.drawable.mogo_tts_icon_00047, + R.drawable.mogo_tts_icon_00047 + }, { R.drawable.mogo_tts_icon_00048, R.drawable.mogo_tts_icon_00049, R.drawable.mogo_tts_icon_00050, @@ -71,7 +89,8 @@ public class AnimRes { R.drawable.mogo_tts_icon_00056, R.drawable.mogo_tts_icon_00057, R.drawable.mogo_tts_icon_00058, - R.drawable.mogo_tts_icon_00059, + R.drawable.mogo_tts_icon_00059 + }, { R.drawable.mogo_tts_icon_00060, R.drawable.mogo_tts_icon_00061, R.drawable.mogo_tts_icon_00062, @@ -80,5 +99,7 @@ public class AnimRes { R.drawable.mogo_tts_icon_00065, R.drawable.mogo_tts_icon_00066, R.drawable.mogo_tts_icon_00067 - }; + }}; + + public static int sRes[] = sAll[0]; } diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/AnimWrapper.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/AnimWrapper.java index 058ac981ef..97356c4102 100644 --- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/AnimWrapper.java +++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/AnimWrapper.java @@ -1,12 +1,8 @@ package com.mogo.module.apps.anim; -import android.graphics.drawable.AnimationDrawable; import android.widget.ImageView; -import com.mogo.module.apps.R; import com.mogo.module.common.utils.CarSeries; -import com.mogo.utils.ThreadPoolService; -import com.mogo.utils.UiThreadHandler; import com.mogo.utils.logger.Logger; /** @@ -18,20 +14,14 @@ import com.mogo.utils.logger.Logger; public class AnimWrapper implements Anim { private static final String TAG = "AnimWrapper"; - private ImageView mTarget; private Anim mDelegate; private boolean mIsStarted = false; - public AnimWrapper() { - } - - public void initAnim( ImageView target ) { - mTarget = target; + public AnimWrapper( ImageView target ) { if ( CarSeries.isF8xxSeries() ) { mDelegate = new OthersAnim( target ); - start(); } else { - mTarget.setImageResource( R.drawable.mogo_tts_icon_00000 ); + mDelegate = new KitkatAnim( target ); } } @@ -53,7 +43,22 @@ public class AnimWrapper implements Anim { } } + @Override + public void setCurrentAnim( AnimRes.EmojiType type ) { + if ( mDelegate != null ) { + mDelegate.setCurrentAnim( type ); + } + } + + public boolean isStarted() { + return mIsStarted; + } + + @Override public void release() { + if ( mDelegate != null ) { + mDelegate.release(); + } mDelegate = null; } } diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/KitkatAnim.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/KitkatAnim.java index 2f3f864367..889aff3bfe 100644 --- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/KitkatAnim.java +++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/KitkatAnim.java @@ -1,20 +1,40 @@ package com.mogo.module.apps.anim; +import android.widget.ImageView; + +import com.mogo.module.apps.R; + /** * @author congtaowang * @since 2020-02-26 *

* 描述 */ -public class KitkatAnim implements Anim{ +public class KitkatAnim implements Anim { + + private ImageView mTarget; + + public KitkatAnim( ImageView target ) { + this.mTarget = target; + } @Override public void start() { - + mTarget.setImageResource( R.drawable.mogo_tts_icon_00000 ); } @Override public void stop() { } + + @Override + public void setCurrentAnim( AnimRes.EmojiType type ) { + + } + + @Override + public void release() { + mTarget = null; + } } diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/OthersAnim.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/OthersAnim.java index aa7259c6ae..dddde7fd71 100644 --- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/OthersAnim.java +++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/anim/OthersAnim.java @@ -9,17 +9,20 @@ import android.widget.ImageView; * @author congtaowang * @since 2020-02-26 *

- * 描述 + * 导航>音乐>其他(自己轮询) */ public class OthersAnim implements Anim { private int mStartIndex = 0; private final static int MSG_LOOP = 3003; + public static final int MSG_CHANGE = 3004; public static final long INTERVAL = 100L; private boolean mStarted = false; - private final ImageView mImageView; + private ImageView mImageView; + + private int mEmojiIndex = 0; private Handler mHandler = new Handler( Looper.getMainLooper() ) { @Override @@ -28,27 +31,80 @@ public class OthersAnim implements Anim { switch ( msg.what ) { case MSG_LOOP: if ( mStarted ) { + if ( AnimRes.sRes.length == 0 ) { + return; + } mImageView.setImageResource( AnimRes.sRes[mStartIndex++ % AnimRes.sRes.length] ); mHandler.sendEmptyMessageDelayed( MSG_LOOP, INTERVAL ); } break; + case MSG_CHANGE: + if ( mLastType == AnimRes.EmojiType.Others ) { + boolean start = mStarted; + stop(); + mEmojiIndex++; + AnimRes.sRes = AnimRes.sAll[mEmojiIndex % AnimRes.sAll.length]; + mStartIndex = 0; + if ( start ) { + start(); + } + mHandler.sendEmptyMessageDelayed( MSG_CHANGE, 60 * 1_000L ); + } + break; } } }; + private AnimRes.EmojiType mLastType; + public OthersAnim( ImageView imageView ) { this.mImageView = imageView; + mLastType = AnimRes.EmojiType.Others; + AnimRes.sRes = AnimRes.sAll[mEmojiIndex]; } @Override public void start() { + if ( mStarted ) { + return; + } mStarted = true; mHandler.sendEmptyMessage( MSG_LOOP ); + mHandler.sendEmptyMessageDelayed( MSG_CHANGE, 60 * 1_000L ); } @Override public void stop() { mStarted = false; mHandler.removeMessages( MSG_LOOP ); + mHandler.removeMessages( MSG_CHANGE ); + } + + @Override + public void setCurrentAnim( AnimRes.EmojiType type ) { + if ( mLastType == type ) { + return; + } + mLastType = type; + switch ( type ) { + case Navigation: + mStartIndex = 0; + AnimRes.sRes = AnimRes.sNavigation; + break; + case Music: + mStartIndex = 0; + AnimRes.sRes = AnimRes.sMusic; + break; + case Others: + mHandler.sendEmptyMessageDelayed( MSG_CHANGE, 0 * 1_000L ); + break; + } + } + + @Override + public void release() { + stop(); + mHandler = null; + mImageView = null; } } diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/launchercard/LauncherCardRefresher.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/launchercard/LauncherCardRefresher.java index 6aae344515..184b2578e9 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/launchercard/LauncherCardRefresher.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/launchercard/LauncherCardRefresher.java @@ -25,7 +25,6 @@ import com.mogo.module.service.network.bean.TtsConfigData; import com.mogo.service.passport.IMogoTicketCallback; import com.mogo.utils.AppUtils; import com.mogo.utils.NetworkUtils; -import com.mogo.utils.glide.GlideApp; import com.mogo.utils.logger.Logger; import com.mogo.utils.network.RequestOptions; import com.mogo.utils.network.utils.GsonUtil; @@ -33,6 +32,7 @@ import com.mogo.utils.storage.SharedPrefsMgr; import java.util.ArrayList; import java.util.Arrays; +import java.util.Date; import java.util.List; import java.util.Map; @@ -54,6 +54,8 @@ class LauncherCardRefresher { public static final String KEY_LauncherCardTipLastTipTime = "LauncherCardTipLastTipTime"; public static final String KEY_LAST_LOAD_TTS_TYPE = "keyLastLoadTtsType"; + public static final String KEY_LAST_LOAD_TTS_DATE = "keyLastLoadTtsDate"; + private static volatile LauncherCardRefresher sInstance; @@ -374,9 +376,20 @@ class LauncherCardRefresher { */ private void requestTtsStrategyConfig() { + long lastPlayDateTime = SharedPrefsMgr.getInstance( mContext ).getLong( KEY_LAST_LOAD_TTS_DATE, 0L ); + if ( lastPlayDateTime != 0 ) { + Date lastPlayDate = new Date( lastPlayDateTime ); + if ( lastPlayDate.getDate() == new Date( System.currentTimeMillis() ).getDate() ) { + Logger.d( TAG, "一天只播报一次" ); + return; + } + } + String name = SharedPrefsMgr.getInstance( mContext ).getString( KEY_LAST_LOAD_TTS_TYPE, LauncherCardRefreshType.Weather.name() ); LauncherCardRefreshType type = LauncherCardRefreshType.valueOf( name ); + Logger.d( TAG, "本次播报:%s", name ); + MogoLocation location = MogoApisHandler.getInstance().getApis().getMapServiceApi().getSingletonLocationClient( mContext ).getLastKnowLocation(); TtsConfigBody body = new TtsConfigBody() .addType( LauncherCardRefreshType.NearRoads.getVal() ) @@ -395,6 +408,7 @@ class LauncherCardRefresher { @Override public void onError( Throwable e ) { super.onError( e ); + Logger.e( TAG, e, "queryBroadCastInfo" ); } @Override @@ -469,6 +483,7 @@ class LauncherCardRefresher { break; } + Logger.d( TAG, "header = %s", header.type.getVal() ); TtsConfigNode pointer = header; do { @@ -561,13 +576,13 @@ class LauncherCardRefresher { * @return */ private boolean handleExplorerWayTtsConfig( TtsConfigData.OnlineCarVsExplorerWay explorerWay ) { - if ( explorerWay == null || explorerWay.pois == 0 ) { + if ( explorerWay == null || explorerWay.poiTotal == 0 ) { return false; } String tts = mContext.getString( R.string.module_service_launcher_card_tips ); String info = mContext.getString( R.string.module_service_launcher_card_info ); - speakTTS( String.format( tts, explorerWay.pois, LauncherCardRefreshType.ExplorerWay.getDesc() ), false ); - notifyRefreshChanged( String.format( info, explorerWay.pois, LauncherCardRefreshType.ExplorerWay ), explorerWay.pois, tts ); + speakTTS( String.format( tts, explorerWay.poiTotal, LauncherCardRefreshType.ExplorerWay.getDesc() ), false ); + notifyRefreshChanged( String.format( info, explorerWay.poiTotal, LauncherCardRefreshType.ExplorerWay ), explorerWay.poiTotal, tts ); return true; } @@ -578,13 +593,13 @@ class LauncherCardRefresher { * @return */ private boolean handleOnlineCarTtsConfig( TtsConfigData.OnlineCarVsExplorerWay onlineCar ) { - if ( onlineCar == null || onlineCar.friends == 0 ) { + if ( onlineCar == null || onlineCar.carTotal == 0 ) { return false; } String tts = mContext.getString( R.string.module_service_launcher_card_tips ); String info = mContext.getString( R.string.module_service_launcher_card_info ); - speakTTS( String.format( tts, onlineCar.friends, LauncherCardRefreshType.OnlineCar.getDesc() ), false ); - notifyRefreshChanged( String.format( info, onlineCar.friends, LauncherCardRefreshType.OnlineCar ), onlineCar.friends, tts ); + speakTTS( String.format( tts, onlineCar.carTotal, LauncherCardRefreshType.OnlineCar.getDesc() ), false ); + notifyRefreshChanged( String.format( info, onlineCar.carTotal, LauncherCardRefreshType.OnlineCar ), onlineCar.carTotal, tts ); return true; } @@ -595,7 +610,8 @@ class LauncherCardRefresher { */ private void writeNextLoadType( LauncherCardRefreshType type ) { SharedPrefsMgr.getInstance( mContext ).putString( KEY_LAST_LOAD_TTS_TYPE, type.getNext() ); - Logger.d( TAG, "本次播报:%s,下次播报:%s", type.getVal(), LauncherCardRefreshType.valueOf( type.getNext() ).getVal() ); + Logger.d( TAG, "本次播报:%s,下次播报:%s", type.name(), LauncherCardRefreshType.valueOf( type.getNext() ).name() ); + SharedPrefsMgr.getInstance( mContext ).putLong( KEY_LAST_LOAD_TTS_DATE, System.currentTimeMillis() ); } diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/network/RefreshApiService.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/network/RefreshApiService.java index 9827e26941..8ba5edf003 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/network/RefreshApiService.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/network/RefreshApiService.java @@ -45,6 +45,6 @@ public interface RefreshApiService { Observable< HomeCompanyDistanceForPushResponse > calculationNotHomeCompanyDistanceForPush( @FieldMap Map< String, Object > parameters ); @FormUrlEncoded - @POST( "/yycp-launcherSnapshot/appCard/queryBroadCastInfo" ) + @POST( "/yycp-launcherSnapshot/appCard/queryAppCardData" ) Observable< TtsConfigData > queryBroadCastInfo( @FieldMap Map< String, Object > parameters ); } diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/network/bean/TtsConfigData.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/network/bean/TtsConfigData.java index 43cac9bf43..2c055df068 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/network/bean/TtsConfigData.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/network/bean/TtsConfigData.java @@ -31,20 +31,14 @@ class TtsConfigData extends BaseData { } public static class Weather extends BaseConfig { - - public String time; - public String date; - public String ymd; - public String week; - public String sunrise; - public String high; - public String low; - public String sunset; - public int aqi; - public String fx; - public String fl; - public String type; - public String notice; + public String cityName; + public String cityId; + public String weather; + public int hour; + public int weatherCode; + public double weatherTime; + public int alarmLevel; + public int alarmType; } public static class News extends BaseConfig { @@ -78,12 +72,12 @@ class TtsConfigData extends BaseData { /** * 车友数量 */ - public int friends; + public int carTotal; /** * 道路事件数量 */ - public int pois; + public int poiTotal; } } diff --git a/modules/mogo-module-share/src/main/java/com/mogo/module/share/StrategyShareProvider.kt b/modules/mogo-module-share/src/main/java/com/mogo/module/share/StrategyShareProvider.kt index f0ab2cfd02..13782a98fe 100644 --- a/modules/mogo-module-share/src/main/java/com/mogo/module/share/StrategyShareProvider.kt +++ b/modules/mogo-module-share/src/main/java/com/mogo/module/share/StrategyShareProvider.kt @@ -52,7 +52,6 @@ class StrategyShareProvider : IProvider { } } catch (e: Exception) { Logger.e(S_TAG, e, "解析adas数据异常") - e.printStackTrace() } } diff --git a/services/mogo-service/src/main/java/com/mogo/service/impl/adas/MogoADASController.java b/services/mogo-service/src/main/java/com/mogo/service/impl/adas/MogoADASController.java index 4da127db85..141b24d974 100644 --- a/services/mogo-service/src/main/java/com/mogo/service/impl/adas/MogoADASController.java +++ b/services/mogo-service/src/main/java/com/mogo/service/impl/adas/MogoADASController.java @@ -101,7 +101,11 @@ public class MogoADASController implements IMogoADASController { public void sendMsg(String msg) { Logger.d(TAG, "收到adas数据回调: " + msg); for (IMogoAdasDataCallback callback : adasDataCallbackList) { - callback.onAdasDataCallback(msg); + try { + callback.onAdasDataCallback(msg); + } catch ( Exception e ) { + Logger.e( TAG, e, "sendMsg" ); + } } } From cd37051d1d3e1f0dc162810d7221e2a4d43c2052 Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Fri, 20 Nov 2020 17:42:37 +0800 Subject: [PATCH 7/7] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=A8=A1=E5=9D=97?= =?UTF-8?q?=E4=BE=9D=E8=B5=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 7 +++---- app/functions/backwidget.gradle | 9 +++++++++ .../com/mogo/launcher/MogoApplication.java | 5 +---- .../mogo/module/back/BackToLauncherConst.java | 14 ------------- .../back/BackToLauncherModuleProvider.java | 6 ++++-- .../com/mogo/module/main/MainActivity.java | 8 ++++++-- .../com/mogo/module/main/SchemeIntent.java | 4 +++- .../com/mogo/module/map/MapPresenter.java | 20 ++++++++++++++----- .../com/mogo/module/service/MogoServices.java | 2 -- .../service/intent/MyLocationHandler.java | 4 +++- .../WholeVoiceCommandIntentHandler.java | 4 +++- .../module/widgets/AutoNaviIntentHandler.java | 4 +++- .../com/mogo/service/MogoServicePaths.java | 5 +++++ 13 files changed, 55 insertions(+), 37 deletions(-) create mode 100644 app/functions/backwidget.gradle delete mode 100644 modules/mogo-module-back/src/main/java/com/mogo/module/back/BackToLauncherConst.java diff --git a/app/build.gradle b/app/build.gradle index ebc29b2bc6..374e60534d 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -214,9 +214,9 @@ android { // 是否支持换肤 buildConfigField 'boolean', 'IS_SKIN_SUPPORTED', 'true' // 是否支持查询导航目的地车友 - buildConfigField 'boolean', 'IS_SUPPORTED_SEARCH_DESTINATION_ONLINE_CAR_LIST', 'true' + buildConfigField 'boolean', 'IS_SUPPORTED_SEARCH_DESTINATION_ONLINE_CAR_LIST', 'false' // 是否支持桌面卡片刷新 - buildConfigField 'boolean', 'IS_SUPPORT_LAUNCHER_CARD_REFRESH_STRATEGY', 'true' + buildConfigField 'boolean', 'IS_SUPPORT_LAUNCHER_CARD_REFRESH_STRATEGY', 'false' // 是否基于地图 buildConfigField 'boolean', 'IS_MAP_BASED', 'false' } @@ -363,7 +363,6 @@ dependencies { implementation rootProject.ext.dependencies.moduleshare implementation rootProject.ext.dependencies.tanluupload implementation rootProject.ext.dependencies.mogomonitor - implementation rootProject.ext.dependencies.mogomoduleback implementation rootProject.ext.dependencies.guideshow implementation rootProject.ext.dependencies.moduleextensions implementation rootProject.ext.dependencies.modulemap @@ -380,7 +379,6 @@ dependencies { implementation project(':modules:mogo-module-share') implementation project(':libraries:tanlulib') implementation project(':modules:mogo-module-monitor') - implementation project(':modules:mogo-module-back') implementation project(':modules:mogo-module-guide') implementation project(':modules:mogo-module-extensions') implementation project(':modules:mogo-module-map') @@ -395,6 +393,7 @@ dependencies { apply from: "./functions/crashreport.gradle" apply from: "./functions/widgets.gradle" apply from: "./functions/tts.gradle" + apply from: "./functions/backwidget.gradle" // implementation group: "com.tencent.matrix", name: "matrix-android-lib", version: '0.6.6', changing: true // implementation group: "com.tencent.matrix", name: "matrix-android-commons", version: '0.6.6', changing: true diff --git a/app/functions/backwidget.gradle b/app/functions/backwidget.gradle new file mode 100644 index 0000000000..7329178c45 --- /dev/null +++ b/app/functions/backwidget.gradle @@ -0,0 +1,9 @@ +// 辅助驾驶占位模块,目前部分车机不上辅助驾驶功能,使用该模块能力代替 + +project.dependencies { + if (Boolean.valueOf(RELEASE)) { + launcherImplementation rootProject.ext.dependencies.mogomoduleback + } else { + launcherImplementation project(':modules:mogo-module-back') + } +} \ No newline at end of file diff --git a/app/src/main/java/com/mogo/launcher/MogoApplication.java b/app/src/main/java/com/mogo/launcher/MogoApplication.java index a0bde360cb..4f479ae1cb 100644 --- a/app/src/main/java/com/mogo/launcher/MogoApplication.java +++ b/app/src/main/java/com/mogo/launcher/MogoApplication.java @@ -13,7 +13,6 @@ import com.mogo.commons.AbsMogoApplication; import com.mogo.commons.debug.DebugConfig; import com.mogo.commons.network.Utils; import com.mogo.module.authorize.authprovider.invoke.AuthorizeConstant; -import com.mogo.module.back.BackToLauncherConst; import com.mogo.module.carchatting.card.CallChatConstant; import com.mogo.module.common.MogoApisHandler; import com.mogo.module.common.MogoModule; @@ -68,11 +67,9 @@ public class MogoApplication extends AbsMogoApplication { MogoModulePaths.addModule( new MogoModule( MogoServicePaths.PATH_AGREEMENT, AuthorizeConstant.PATH_AGREEMENT_MODULE_NAME ) ); if ( DebugConfig.isLauncher() ) { - MogoModulePaths.addModule( new MogoModule( BackToLauncherConst.MODULE_PATH, BackToLauncherConst.MODULE_NAME ) ); + MogoModulePaths.addModule( new MogoModule( MogoServicePaths.PATH_BACK, MogoServicePaths.PATH_BACK ) ); MogoModulePaths.addModule( new MogoModule( MediaConstants.TAG, MediaConstants.MODULE_TYPE ) ); - } else { } - // TODO MogoModulePaths.addModule( new MogoModule( ServiceConst.PATH_TTS_CONFIG, ServiceConst.PATH_TTS_CONFIG ) ); MogoModulePaths.addBaseModule( new MogoModule( MogoServicePaths.PATH_WIDGETS, MogoServicePaths.PATH_WIDGETS ) ); diff --git a/modules/mogo-module-back/src/main/java/com/mogo/module/back/BackToLauncherConst.java b/modules/mogo-module-back/src/main/java/com/mogo/module/back/BackToLauncherConst.java deleted file mode 100644 index e4a5e8e0f9..0000000000 --- a/modules/mogo-module-back/src/main/java/com/mogo/module/back/BackToLauncherConst.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.mogo.module.back; - -/** - * @author congtaowang - * @since 2020-02-26 - *

- * 描述 - */ -public class BackToLauncherConst { - - public static final String MODULE_NAME ="MOGO_BACK_2_LAUNCHER"; - - public static final String MODULE_PATH = "/back2launcher/ui"; -} diff --git a/modules/mogo-module-back/src/main/java/com/mogo/module/back/BackToLauncherModuleProvider.java b/modules/mogo-module-back/src/main/java/com/mogo/module/back/BackToLauncherModuleProvider.java index fc323c8ae3..952ece3f5c 100644 --- a/modules/mogo-module-back/src/main/java/com/mogo/module/back/BackToLauncherModuleProvider.java +++ b/modules/mogo-module-back/src/main/java/com/mogo/module/back/BackToLauncherModuleProvider.java @@ -9,6 +9,8 @@ import androidx.fragment.app.Fragment; import com.alibaba.android.arouter.facade.annotation.Route; import com.mogo.commons.debug.DebugConfig; +import com.mogo.module.common.MogoModulePaths; +import com.mogo.service.MogoServicePaths; import com.mogo.service.module.IMogoModuleProvider; import com.mogo.service.module.ModuleType; @@ -18,7 +20,7 @@ import com.mogo.service.module.ModuleType; *

* 描述 */ -@Route( path = BackToLauncherConst.MODULE_PATH ) +@Route( path = MogoServicePaths.PATH_BACK ) public class BackToLauncherModuleProvider implements IMogoModuleProvider { private static final String TAG = "BackToLauncherModuleProvider"; @@ -36,7 +38,7 @@ public class BackToLauncherModuleProvider implements IMogoModuleProvider { @NonNull @Override public String getModuleName() { - return BackToLauncherConst.MODULE_NAME; + return TAG; } @Override diff --git a/modules/mogo-module-main/src/main/java/com/mogo/module/main/MainActivity.java b/modules/mogo-module-main/src/main/java/com/mogo/module/main/MainActivity.java index 22692aeddb..eb3be1a916 100644 --- a/modules/mogo-module-main/src/main/java/com/mogo/module/main/MainActivity.java +++ b/modules/mogo-module-main/src/main/java/com/mogo/module/main/MainActivity.java @@ -278,7 +278,9 @@ public class MainActivity extends MvpActivity< MainView, MainPresenter > impleme if ( mCoverUpLayout.getVisibility() != View.VISIBLE ) { mServiceApis.getAdasControllerApi().showADAS(); } - mServiceApis.getLauncherApi().setFloatButtonVisible( false ); + if ( mServiceApis.getLauncherApi() != null ) { + mServiceApis.getLauncherApi().setFloatButtonVisible( false ); + } } @Override @@ -290,7 +292,9 @@ public class MainActivity extends MvpActivity< MainView, MainPresenter > impleme if ( shouldCloseADASPanelWhenPause() ) { mServiceApis.getAdasControllerApi().closeADAS(); } - mServiceApis.getLauncherApi().setFloatButtonVisible( true ); + if ( mServiceApis.getLauncherApi() != null ) { + mServiceApis.getLauncherApi().setFloatButtonVisible( true ); + } } protected boolean shouldCloseADASPanelWhenPause() { diff --git a/modules/mogo-module-main/src/main/java/com/mogo/module/main/SchemeIntent.java b/modules/mogo-module-main/src/main/java/com/mogo/module/main/SchemeIntent.java index bda89f02ad..08b519fed8 100644 --- a/modules/mogo-module-main/src/main/java/com/mogo/module/main/SchemeIntent.java +++ b/modules/mogo-module-main/src/main/java/com/mogo/module/main/SchemeIntent.java @@ -112,7 +112,9 @@ public class SchemeIntent implements IMogoStatusChangedListener { delay = 5_000L; } mNextIntent = new IntentWrapper(intent, delay); - mApis.getLauncherApi().backToLauncher(mContext); + if ( mApis.getLauncherApi() != null ) { + mApis.getLauncherApi().backToLauncher(mContext); + } return; } diff --git a/modules/mogo-module-map/src/main/java/com/mogo/module/map/MapPresenter.java b/modules/mogo-module-map/src/main/java/com/mogo/module/map/MapPresenter.java index 0c0f8722a6..cf2e41b2a7 100644 --- a/modules/mogo-module-map/src/main/java/com/mogo/module/map/MapPresenter.java +++ b/modules/mogo-module-map/src/main/java/com/mogo/module/map/MapPresenter.java @@ -117,7 +117,9 @@ public class MapPresenter extends Presenter< MapView > implements AIAssist.getInstance( getContext() ).speakTTSVoice( "已为您继续导航" ); UiThreadHandler.removeCallbacks( mLockCarRunnable ); } else { - mLauncher.backToLauncher( getContext() ); + if ( mLauncher != null ) { + mLauncher.backToLauncher( getContext() ); + } UiThreadHandler.postDelayed( () -> { try { mStatusManager.setDisplayOverview( TAG, false ); @@ -136,7 +138,9 @@ public class MapPresenter extends Presenter< MapView > implements if ( CustomNaviInterrupter.getInstance().interrupt() ) { return; } - mLauncher.backToLauncher( getContext() ); + if ( mLauncher != null ) { + mLauncher.backToLauncher( getContext() ); + } if ( !mMogoMapService.getNavi( getContext() ).isNaviing() && !mStatusManager.isSearchUIShow() ) { mSearchManager.showSearch(); } @@ -148,7 +152,9 @@ public class MapPresenter extends Presenter< MapView > implements if ( CustomNaviInterrupter.getInstance().interrupt() ) { return; } - mLauncher.backToLauncher( getContext() ); + if ( mLauncher != null ) { + mLauncher.backToLauncher( getContext() ); + } mMogoSearchManager.calculatePath( new MogoLatLng( lat, lon ) ); } @@ -158,7 +164,9 @@ public class MapPresenter extends Presenter< MapView > implements // 导航过程中语音指令退出导航,会出现 activity 不走 onResume 的情况 UiThreadHandler.postDelayed( () -> { if ( AppUtils.isAppForeground( getContext() ) && !hasOthersActivity() && !mStatusManager.isMainPageOnResume() ) { - mLauncher.backToLauncher( getContext() ); + if ( mLauncher != null ) { + mLauncher.backToLauncher( getContext() ); + } } }, 500L ); return; @@ -203,7 +211,9 @@ public class MapPresenter extends Presenter< MapView > implements mView.getUIController().displayOverview( mDisplayOverviewBounds ); AIAssist.getInstance( getContext() ).speakTTSVoice( "展示全程路线" ); } else { - mLauncher.backToLauncher( getContext() ); + if ( mLauncher != null ) { + mLauncher.backToLauncher( getContext() ); + } UiThreadHandler.postDelayed( () -> { mStatusManager.setUserInteractionStatus( TAG, true, false ); mStatusManager.setDisplayOverview( TAG, true ); diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServices.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServices.java index e78d6601cc..a27ce3c033 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServices.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServices.java @@ -171,7 +171,6 @@ public class MogoServices implements IMogoMapListener, private IMogoIntentManager mIntentManager; private IMogoActionManager mActionManager; private IMogoADASController mADASController; - private IMogoLauncher mLauncher; private IMogoFragmentManager mFragmentManager; private IMogoNavi mNavi; private IMogoRegisterCenter mRegisterCenter; @@ -557,7 +556,6 @@ public class MogoServices implements IMogoMapListener, mIntentManager.registerIntentListener(ConnectivityManager.CONNECTIVITY_ACTION, this); mADASController = MarkerServiceHandler.getADASController(); - mLauncher = MarkerServiceHandler.getLauncher(); mFragmentManager = MarkerServiceHandler.getFragmentManager(); mFragmentManager.addMainFragmentStackTransactionListener(this); diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MyLocationHandler.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MyLocationHandler.java index 4504dd7e01..95f1d1e6c6 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MyLocationHandler.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MyLocationHandler.java @@ -22,7 +22,9 @@ public class MyLocationHandler implements IntentHandler { if ( MarkerServiceHandler.getMogoStatusManager().isMainPageOnResume() ) { MarkerServiceHandler.getMapUIController().recoverLockMode(); } else { - MarkerServiceHandler.getLauncher().backToLauncher( context ); + if ( MarkerServiceHandler.getLauncher() != null ) { + MarkerServiceHandler.getLauncher().backToLauncher( context ); + } UiThreadHandler.postDelayed( () -> { MarkerServiceHandler.getMapUIController().recoverLockMode(); }, 2_000L ); diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/WholeVoiceCommandIntentHandler.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/WholeVoiceCommandIntentHandler.java index e7f77292d1..757877f314 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/WholeVoiceCommandIntentHandler.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/WholeVoiceCommandIntentHandler.java @@ -50,7 +50,9 @@ class WholeVoiceCommandIntentHandler implements IntentHandler { } switch ( command ) { case ServiceConst.COMMAND_BACK: - MarkerServiceHandler.getLauncher().backToLauncher( context ); + if ( MarkerServiceHandler.getLauncher() != null ) { + MarkerServiceHandler.getLauncher().backToLauncher( context ); + } break; } } diff --git a/modules/mogo-module-widgets/src/main/java/com/mogo/module/widgets/AutoNaviIntentHandler.java b/modules/mogo-module-widgets/src/main/java/com/mogo/module/widgets/AutoNaviIntentHandler.java index 66d798f936..940e957a6a 100644 --- a/modules/mogo-module-widgets/src/main/java/com/mogo/module/widgets/AutoNaviIntentHandler.java +++ b/modules/mogo-module-widgets/src/main/java/com/mogo/module/widgets/AutoNaviIntentHandler.java @@ -227,7 +227,9 @@ class AutoNaviIntentHandler implements IMogoVoiceCmdCallBack { private void enterApp( Context context ) { try { if ( DebugConfig.isLauncher() ) { - MogoWidgetManger.getInstance().getApis().getLauncherApi().backToLauncher( context ); + if ( MogoWidgetManger.getInstance().getApis().getLauncherApi() != null ) { + MogoWidgetManger.getInstance().getApis().getLauncherApi().backToLauncher( context ); + } } else { LaunchUtils.launchByPkg( context, "com.mogo.launcher.app" ); } diff --git a/services/mogo-service-api/src/main/java/com/mogo/service/MogoServicePaths.java b/services/mogo-service-api/src/main/java/com/mogo/service/MogoServicePaths.java index 5cc6cba1d2..8d5f687c8e 100644 --- a/services/mogo-service-api/src/main/java/com/mogo/service/MogoServicePaths.java +++ b/services/mogo-service-api/src/main/java/com/mogo/service/MogoServicePaths.java @@ -279,4 +279,9 @@ public class MogoServicePaths { * 全局免唤醒 */ public static final String PATH_GLOBAL_UNWAKE = "/global/unwake"; + + /** + * 返回悬浮按钮 + */ + public static final String PATH_BACK = "/back2launcher/ui"; }