From 90f28c1d11be012714af8ff58178ff66db79e4c4 Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Wed, 26 Aug 2020 14:19:37 +0800 Subject: [PATCH 1/9] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=BE=BF=E4=BA=8E?= =?UTF-8?q?=E6=B5=8B=E8=AF=95=EF=BC=8C=E8=BF=98=E8=A6=81=E6=94=B9=E5=9B=9E?= =?UTF-8?q?=E6=9D=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mogo/module/service/launchercard/LauncherCardRefresher.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 57c9669bbd..f517eaed1f 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 @@ -137,7 +137,7 @@ class LauncherCardRefresher { new LauncherCardRefreshStrategy( 3 * ONE_MINUTE, new LauncherCardRefreshStrategy( - 20 * ONE_MINUTE, + 5 * ONE_MINUTE, null, MSG_REFRESH ), MSG_REFRESH ), From 43a7b54fa6b03509476f2ffa95e83f537d2eb583 Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Wed, 26 Aug 2020 16:00:03 +0800 Subject: [PATCH 2/9] =?UTF-8?q?=E9=BB=98=E8=AE=A4=E6=92=AD=E6=8A=A5?= =?UTF-8?q?=E8=AE=BE=E7=BD=AE=E4=B8=BA3=E5=88=86=E9=92=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../launchercard/LauncherCardRefresher.java | 25 ++++++++++++++----- 1 file changed, 19 insertions(+), 6 deletions(-) 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 f517eaed1f..962b759127 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 @@ -64,6 +64,8 @@ class LauncherCardRefresher { public static final int MSG_REFRESH_ADVERTISEMENT = 2022; // 开始刷新广告数据 public static final int MSG_START_REFRESH_ADVERTISEMENT = 2023; + // 默认播报 + public static final int MSG_START_LOOP_DEFAULT_CARD = 2024; public static final long ONE_MINUTE = 60 * 1000L; public static final long ONE_DAY = 24 * 60 * ONE_MINUTE; private String mLaunchTTSText; @@ -116,6 +118,9 @@ class LauncherCardRefresher { mRefreshStrategy = mRefreshStrategy.getNext(); restart(); break; + case MSG_START_LOOP_DEFAULT_CARD: + renderDefaultLauncherCardConfig(); + break; case MSG_REFRESH_ADVERTISEMENT: int index = msg.arg1;// 当前广告索引 loopRenderAdvertisements( index ); @@ -403,13 +408,21 @@ class LauncherCardRefresher { * 开始按策略展示广告 */ private void startLoopRenderAdvertisements() { - if ( mAdvertisements == null || mAdvertisements.isEmpty() ) { - return; - } Message msg = Message.obtain(); - msg.what = MSG_REFRESH_ADVERTISEMENT; - msg.arg1 = 0; - mHandler.sendMessage( msg ); + if ( mAdvertisements == null || mAdvertisements.isEmpty() ) { + msg.what = MSG_START_LOOP_DEFAULT_CARD; + mHandler.sendMessageDelayed( msg, 3 * ONE_MINUTE ); + } else { + try { + LauncherCardAdvertisementData.LauncherCardAdvertisement advertisement = mAdvertisements.get( 0 ); + msg.what = MSG_REFRESH_ADVERTISEMENT; + msg.arg1 = 1; + mHandler.sendMessageDelayed( msg, advertisement.popupNum * ONE_MINUTE ); + } catch ( Exception e ) { + e.printStackTrace(); + } + } + } private void loopRenderAdvertisements( int index ) { From f5a2ebc38469848fc5281e348918d256e4805e3e Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Wed, 26 Aug 2020 17:02:21 +0800 Subject: [PATCH 3/9] =?UTF-8?q?=E8=AE=BE=E7=BD=AE=E9=97=B4=E9=9A=94?= =?UTF-8?q?=E6=92=AD=E6=8A=A5=E4=B8=BA10=E5=88=86=E9=92=9F=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mogo/module/service/launchercard/LauncherCardRefresher.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 962b759127..4a770d61bb 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 @@ -170,7 +170,7 @@ class LauncherCardRefresher { int counter = SharedPrefsMgr.getInstance( mContext ).getInt( KEY_LauncherCardTipCounter, 0 ); if ( counter >= 5 ) { long lastTipTime = SharedPrefsMgr.getInstance( mContext ).getLong( KEY_LauncherCardTipLastTipTime, 0L ); - if ( System.currentTimeMillis() - lastTipTime < 10 * ONE_DAY ) { + if ( System.currentTimeMillis() - lastTipTime < 10 * ONE_MINUTE ) { stop(); return; } else { From 011f9ee7aa5931fd5f40b29ac359179704c82693 Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Thu, 27 Aug 2020 11:37:55 +0800 Subject: [PATCH 4/9] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E6=92=AD=E6=8A=A5/=E5=90=8E=E5=8F=B0=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=92=AD=E6=8A=A5=E7=AD=96=E7=95=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../launchercard/LauncherCardRefresher.java | 56 +++++++++++++------ 1 file changed, 39 insertions(+), 17 deletions(-) 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 4a770d61bb..283006d91f 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 @@ -72,6 +72,11 @@ class LauncherCardRefresher { private LauncherCardAdvertisementData.LauncherCardAdvertisement mDefaultLauncherCardConfig; private List< LauncherCardAdvertisementData.LauncherCardAdvertisement > mAdvertisements; + /** + * 默认播报/后台配置播报次数限制 + */ + private int mDefaultConfigCounter = 0; + private LauncherCardRefresher( Context context ) { mContext = context; mRefreshModel = new RefreshModel( mContext ); @@ -161,36 +166,24 @@ class LauncherCardRefresher { startExplorerWayStrategy(); // 延时一分钟加载数据,已保证accOn之后网络恢复正常 mHandler.sendEmptyMessageDelayed( MSG_START_REFRESH_ADVERTISEMENT, ONE_MINUTE ); + mDefaultConfigCounter = 0; } /** * 道路事件和车友播报 */ private void startExplorerWayStrategy() { - int counter = SharedPrefsMgr.getInstance( mContext ).getInt( KEY_LauncherCardTipCounter, 0 ); - if ( counter >= 5 ) { - long lastTipTime = SharedPrefsMgr.getInstance( mContext ).getLong( KEY_LauncherCardTipLastTipTime, 0L ); - if ( System.currentTimeMillis() - lastTipTime < 10 * ONE_MINUTE ) { - stop(); - return; - } else { - SharedPrefsMgr.getInstance( mContext ).putInt( KEY_LauncherCardTipCounter, 0 ); - counter = 0; - SharedPrefsMgr.getInstance( mContext ).putLong( KEY_LauncherCardTipLastTipTime, 0L ); - } - } mHandler.sendEmptyMessageDelayed( mRefreshStrategy.getMsgType(), mRefreshStrategy.getInterval() ); mRefreshStop = false; mStart = true; - - SharedPrefsMgr.getInstance( mContext ).putInt( KEY_LauncherCardTipCounter, ++counter ); - SharedPrefsMgr.getInstance( mContext ).putLong( KEY_LauncherCardTipLastTipTime, System.currentTimeMillis() ); } public void stop() { mRefreshStop = true; mStart = false; mHandler.removeMessages( MSG_REFRESH ); + mHandler.removeMessages( MSG_REFRESH_DEFAULT_CARD ); + mHandler.removeMessages( MSG_START_LOOP_DEFAULT_CARD ); Logger.d( TAG, "stop" ); } @@ -328,11 +321,32 @@ class LauncherCardRefresher { } } } + + if ( mDefaultConfigCounter++ >= 3 ) { + return; + } + + int counter = SharedPrefsMgr.getInstance( mContext ).getInt( KEY_LauncherCardTipCounter, 0 ); + if ( counter >= 5 ) { + long lastTipTime = SharedPrefsMgr.getInstance( mContext ).getLong( KEY_LauncherCardTipLastTipTime, 0L ); + if ( System.currentTimeMillis() - lastTipTime < 10 * ONE_MINUTE ) { + stop(); + return; + } else { + SharedPrefsMgr.getInstance( mContext ).putInt( KEY_LauncherCardTipCounter, 0 ); + counter = 0; + SharedPrefsMgr.getInstance( mContext ).putLong( KEY_LauncherCardTipLastTipTime, 0L ); + } + } + SharedPrefsMgr.getInstance( mContext ).putInt( KEY_LauncherCardTipCounter, ++counter ); + SharedPrefsMgr.getInstance( mContext ).putLong( KEY_LauncherCardTipLastTipTime, System.currentTimeMillis() ); + try { speakTTS( mLaunchTTSText, true ); } catch ( Exception e ) { e.printStackTrace(); } + startLoopDefaultConfigStrategy(); startLoopRenderAdvertisements(); } @@ -404,14 +418,22 @@ class LauncherCardRefresher { } } + /** + * 默认播报 / 后台配置默认项播报策略 + */ + private void startLoopDefaultConfigStrategy() { + Message msg = Message.obtain(); + msg.what = MSG_START_LOOP_DEFAULT_CARD; + mHandler.sendMessageDelayed( msg, 3 * ONE_MINUTE ); + } + /** * 开始按策略展示广告 */ private void startLoopRenderAdvertisements() { Message msg = Message.obtain(); if ( mAdvertisements == null || mAdvertisements.isEmpty() ) { - msg.what = MSG_START_LOOP_DEFAULT_CARD; - mHandler.sendMessageDelayed( msg, 3 * ONE_MINUTE ); + return; } else { try { LauncherCardAdvertisementData.LauncherCardAdvertisement advertisement = mAdvertisements.get( 0 ); From 8cfd60c94dec670dc8e45cce3ee9eac8b5efb82e Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Thu, 27 Aug 2020 11:45:02 +0800 Subject: [PATCH 5/9] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E6=92=AD=E6=8A=A5/=E5=90=8E=E5=8F=B0=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=92=AD=E6=8A=A5=E7=AD=96=E7=95=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mogo/module/service/launchercard/LauncherCardRefresher.java | 1 - 1 file changed, 1 deletion(-) 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 283006d91f..bfc5391f90 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 @@ -330,7 +330,6 @@ class LauncherCardRefresher { if ( counter >= 5 ) { long lastTipTime = SharedPrefsMgr.getInstance( mContext ).getLong( KEY_LauncherCardTipLastTipTime, 0L ); if ( System.currentTimeMillis() - lastTipTime < 10 * ONE_MINUTE ) { - stop(); return; } else { SharedPrefsMgr.getInstance( mContext ).putInt( KEY_LauncherCardTipCounter, 0 ); From fa2e735f1c2cca22b8cc5afdf253d0488f619fdc Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Thu, 27 Aug 2020 14:07:07 +0800 Subject: [PATCH 6/9] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E6=92=AD=E6=8A=A5/=E9=85=8D=E7=BD=AE=E6=92=AD=E6=8A=A5?= =?UTF-8?q?=E6=AC=A1=E6=95=B0=E9=99=90=E5=88=B6=E4=B9=8B=E5=90=8E=E6=97=A0?= =?UTF-8?q?=E6=B3=95=E6=92=AD=E6=8A=A5=E5=B9=BF=E5=91=8A=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/service/launchercard/LauncherCardRefresher.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) 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 bfc5391f90..53ae493404 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 @@ -322,6 +322,9 @@ class LauncherCardRefresher { } } + // 开启广告 + startLoopRenderAdvertisements(); + if ( mDefaultConfigCounter++ >= 3 ) { return; } @@ -346,7 +349,6 @@ class LauncherCardRefresher { e.printStackTrace(); } startLoopDefaultConfigStrategy(); - startLoopRenderAdvertisements(); } /** From f7aad35b4b2f7a5aba08d21f7daa53aa62512cb3 Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Thu, 27 Aug 2020 14:29:17 +0800 Subject: [PATCH 7/9] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E6=92=AD=E6=8A=A5/=E9=85=8D=E7=BD=AE=E6=92=AD=E6=8A=A5?= =?UTF-8?q?=E6=AC=A1=E6=95=B0=E9=99=90=E5=88=B6=E4=B9=8B=E5=90=8E=E6=97=A0?= =?UTF-8?q?=E6=B3=95=E6=92=AD=E6=8A=A5=E5=B9=BF=E5=91=8A=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/service/launchercard/LauncherCardRefresher.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) 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 53ae493404..48653ad999 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 @@ -120,6 +120,8 @@ class LauncherCardRefresher { break; case MSG_REFRESH_DEFAULT_CARD: renderDefaultLauncherCardConfig(); + // 开启广告 + startLoopRenderAdvertisements(); mRefreshStrategy = mRefreshStrategy.getNext(); restart(); break; @@ -322,9 +324,6 @@ class LauncherCardRefresher { } } - // 开启广告 - startLoopRenderAdvertisements(); - if ( mDefaultConfigCounter++ >= 3 ) { return; } From 7078fd3e6b6cbc577ef3c32f8db38744cb160c01 Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Thu, 27 Aug 2020 16:47:44 +0800 Subject: [PATCH 8/9] bugfix --- .../LauncherCardRefreshStrategy.java | 4 + .../launchercard/LauncherCardRefresher.java | 86 ++++++++----------- .../module/service/network/RefreshModel.java | 2 + .../service/receiver/AccStatusReceiver.java | 4 + 4 files changed, 47 insertions(+), 49 deletions(-) diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/launchercard/LauncherCardRefreshStrategy.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/launchercard/LauncherCardRefreshStrategy.java index 32eb7a0152..ab59552339 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/launchercard/LauncherCardRefreshStrategy.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/launchercard/LauncherCardRefreshStrategy.java @@ -32,6 +32,10 @@ public class LauncherCardRefreshStrategy { return type; } + public void next(){ + getType(); + } + public int getLimit() { return type.limit; } 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 48653ad999..7675cc9b51 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 @@ -10,7 +10,6 @@ import android.text.TextUtils; import com.mogo.commons.debug.DebugConfig; import com.mogo.commons.network.ParamsProvider; import com.mogo.commons.network.SubscribeImpl; -import com.mogo.commons.network.Utils; import com.mogo.commons.voice.AIAssist; import com.mogo.map.MogoLatLng; import com.mogo.map.location.MogoLocation; @@ -19,7 +18,6 @@ import com.mogo.module.service.MarkerServiceHandler; import com.mogo.module.service.R; import com.mogo.module.service.network.RefreshCallback; import com.mogo.module.service.network.RefreshModel; -import com.mogo.module.service.network.ZhidaoApiService; import com.mogo.module.service.network.ZhidaoRefreshModel; import com.mogo.module.service.network.bean.LauncherCardAdvertisementData; import com.mogo.utils.AppUtils; @@ -29,12 +27,8 @@ import com.mogo.utils.storage.SharedPrefsMgr; import java.util.ArrayList; import java.util.Arrays; -import java.util.Comparator; -import java.util.HashMap; -import java.util.HashSet; import java.util.List; import java.util.Map; -import java.util.Set; import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.schedulers.Schedulers; @@ -69,6 +63,7 @@ class LauncherCardRefresher { public static final long ONE_MINUTE = 60 * 1000L; public static final long ONE_DAY = 24 * 60 * ONE_MINUTE; private String mLaunchTTSText; + private long mDefaultTTSPlayInterval = 3 * ONE_MINUTE; private LauncherCardAdvertisementData.LauncherCardAdvertisement mDefaultLauncherCardConfig; private List< LauncherCardAdvertisementData.LauncherCardAdvertisement > mAdvertisements; @@ -205,43 +200,17 @@ class LauncherCardRefresher { return; } MogoLatLng latLng = new MogoLatLng( location.getLatitude(), location.getLongitude() ); - if ( mRefreshStrategy.getType() == LauncherCardRefreshType.ExploreWay ) { - handleRefreshExplorerWayData( latLng ); - } else { - handleRefreshOnlineCarData( latLng ); - } + handleRefreshData( latLng, mRefreshStrategy.getType() ); } - private void handleRefreshExplorerWayData( MogoLatLng latLng ) { + private void handleRefreshData( MogoLatLng latLng, LauncherCardRefreshType type ) { mRefreshModel.refreshDataSync( latLng, mRefreshStrategy.getRadius(), mRefreshStrategy.getLimit(), new RefreshCallback< MarkerResponse >() { @Override public void onSuccess( MarkerResponse response ) { - notifyLauncherCardExplorerWayChanged( LauncherCardRefreshType.ExploreWay, response ); - mRefreshStrategy = mRefreshStrategy.getNext(); - restart(); - } - - @Override - public void onFail() { - mRefreshStrategy = mRefreshStrategy.getNext(); - restart(); - } - } ); - } - - private void handleRefreshOnlineCarData( MogoLatLng latLng ) { - mRefreshModel.queryOnLineCarWithRoute( latLng, - false, - true, - mRefreshStrategy.getRadius(), - mRefreshStrategy.getLimit(), - new RefreshCallback< MarkerResponse >() { - @Override - public void onSuccess( MarkerResponse response ) { - notifyLauncherCardExplorerWayChanged( LauncherCardRefreshType.OnlineCar, response ); + notifyRefreshChanged( type, response ); mRefreshStrategy = mRefreshStrategy.getNext(); restart(); } @@ -255,27 +224,43 @@ class LauncherCardRefresher { } - private boolean notifyLauncherCardExplorerWayChanged( LauncherCardRefreshType type, MarkerResponse response ) { + private boolean notifyRefreshChanged( LauncherCardRefreshType type, MarkerResponse response ) { if ( response == null || response.getResult() == null ) { return false; } String tts = mContext.getString( R.string.module_service_launcher_card_tips ); String info = mContext.getString( R.string.module_service_launcher_card_info ); + + LauncherCardRefreshType target = null; + int size = 0; if ( type == LauncherCardRefreshType.ExploreWay ) { - if ( response.getResult().getExploreWay() == null || response.getResult().getExploreWay().isEmpty() ) { - return false; + if ( response.getResult().getExploreWay() != null && !response.getResult().getExploreWay().isEmpty() ) { + target = type; + size = response.getResult().getExploreWay().size(); + } else if ( response.getResult().getOnlineCar() != null && !response.getResult().getOnlineCar().isEmpty() ) { + target = LauncherCardRefreshType.OnlineCar; + size = response.getResult().getOnlineCar().size(); } - int size = response.getResult().getExploreWay().size(); - speakTTS( tts = String.format( tts, size, mRefreshStrategy.getDesc() ), true ); - notifyLauncherCardExplorerWayChanged( String.format( info, size, mRefreshStrategy.getDesc() ), size, tts ); - } else { - if ( response.getResult().getOnlineCar() == null || response.getResult().getOnlineCar().isEmpty() ) { - return false; + } else if ( type == LauncherCardRefreshType.OnlineCar ) { + if ( response.getResult().getOnlineCar() != null && !response.getResult().getOnlineCar().isEmpty() ) { + target = type; + size = response.getResult().getOnlineCar().size(); + } else if ( response.getResult().getExploreWay() != null && !response.getResult().getExploreWay().isEmpty() ) { + target = LauncherCardRefreshType.ExploreWay; + size = response.getResult().getExploreWay().size(); } - int size = response.getResult().getOnlineCar().size(); - speakTTS( tts = String.format( tts, size, mRefreshStrategy.getDesc() ), true ); - notifyLauncherCardExplorerWayChanged( String.format( info, size, mRefreshStrategy.getDesc() ), size, tts ); } + + if ( size == 0 ) { + return false; + } + + if ( target != type ) { + mRefreshStrategy.next();// 本次请求到的数据类型和播报类型不一致,则下次再次请求本次类型~ + } + + speakTTS( tts = String.format( tts, size, target.desc ), true ); + notifyRefreshChanged( String.format( info, size, target.desc ), size, tts ); return true; } @@ -289,7 +274,7 @@ class LauncherCardRefresher { AIAssist.getInstance( mContext ).speakTTSVoice( msg ); } - private void notifyLauncherCardExplorerWayChanged( String info, int amount, String tts ) { + private void notifyRefreshChanged( String info, int amount, String tts ) { Intent intent = new Intent( "com.mogo.launcher.v2x" ); intent.putExtra( "v2x_warning_type", "20000" ); intent.putExtra( "v2x_warining_timeout", 20 * 1000 ); @@ -321,6 +306,9 @@ class LauncherCardRefresher { if ( !TextUtils.isEmpty( mDefaultLauncherCardConfig.content ) ) { mLaunchTTSText = mDefaultLauncherCardConfig.content; } + if ( mDefaultLauncherCardConfig.popupNum > 0 ) { + mDefaultTTSPlayInterval = mDefaultLauncherCardConfig.popupNum * ONE_MINUTE; + } } } @@ -424,7 +412,7 @@ class LauncherCardRefresher { private void startLoopDefaultConfigStrategy() { Message msg = Message.obtain(); msg.what = MSG_START_LOOP_DEFAULT_CARD; - mHandler.sendMessageDelayed( msg, 3 * ONE_MINUTE ); + mHandler.sendMessageDelayed( msg, mDefaultTTSPlayInterval ); } /** diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/network/RefreshModel.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/network/RefreshModel.java index b9db170473..9cb03e4c88 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/network/RefreshModel.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/network/RefreshModel.java @@ -17,6 +17,7 @@ import com.mogo.utils.logger.Logger; import com.mogo.utils.network.RequestOptions; import com.mogo.utils.network.utils.GsonUtil; +import java.util.List; import java.util.Map; import io.reactivex.android.schedulers.AndroidSchedulers; @@ -117,6 +118,7 @@ public class RefreshModel { refreshBody.location = new RefreshBody.LatLon( latLng.lat, latLng.lng ); refreshBody.radius = radius; refreshBody.dataType.add( ServiceConst.CARD_TYPE_ROAD_CONDITION ); + refreshBody.dataType.add( ServiceConst.CARD_TYPE_USER_DATA ); String data = GsonUtil.jsonFromObject( refreshBody ); query.put( "data", data ); diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/receiver/AccStatusReceiver.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/receiver/AccStatusReceiver.java index a5d1c55c1c..8e3a0abc71 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/receiver/AccStatusReceiver.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/receiver/AccStatusReceiver.java @@ -6,6 +6,7 @@ import android.content.Intent; import com.mogo.module.service.MarkerServiceHandler; import com.mogo.module.service.intent.IntentHandlerFactory; +import com.mogo.utils.logger.Logger; public /** @@ -15,6 +16,8 @@ public * 描述 */ class AccStatusReceiver extends BroadcastReceiver { + + private static final String TAG = "AccStatusReceiver"; // 诺威达 acc 状态 public static final String PARAM_ACC_STATUS = "extra_mcu_state"; @@ -24,6 +27,7 @@ class AccStatusReceiver extends BroadcastReceiver { @Override public void onReceive( Context context, Intent intent ) { + Logger.d(TAG, "收到诺威达acc广播"); MarkerServiceHandler.init( context ); IntentHandlerFactory.getInstance().handle( context, intent.getAction(), intent ); } From 4bbab8d82bc620912f9857a0c07745416f02246e Mon Sep 17 00:00:00 2001 From: tongchenfei Date: Fri, 28 Aug 2020 10:33:39 +0800 Subject: [PATCH 9/9] =?UTF-8?q?bug=20fix=20=E4=BA=8B=E4=BB=B6=E4=B8=8A?= =?UTF-8?q?=E6=8A=A5=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zhidao/roadcondition/service/CarCorderController.kt | 7 ------- .../src/main/java/com/zhidao/roadcondition/util/PdUtil.kt | 4 ++-- .../mogo/module/main/launcher/MainLauncherActivity.java | 1 - 3 files changed, 2 insertions(+), 10 deletions(-) diff --git a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/CarCorderController.kt b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/CarCorderController.kt index 63bb1e8d6b..1cde4c21cf 100644 --- a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/CarCorderController.kt +++ b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/CarCorderController.kt @@ -9,7 +9,6 @@ import com.mogo.utils.NetworkUtils import com.zhidao.auto.carcorder.callback.TakePhotoCallback import com.zhidao.auto.carcorder.callback.TakeVideoCallback import com.zhidao.auto.carcorder.controller.ZdCarCoderController -import com.zhidao.roadcondition.BuildConfig import com.zhidao.roadcondition.constant.* import com.zhidao.roadcondition.event.GetImageSuccessEvent import com.zhidao.roadcondition.event.LatLngStickyEventBus @@ -297,12 +296,6 @@ object CarCorderController : TakePhotoCallback, TakeVideoCallback { getStrategyType("video") ) var speed = LocationUtil.getInstance().getSpeed() - //TODO - if (BuildConfig.DEBUG) { - //获取视频以及缩略图成功,开始上报 - compressVideo(videoPath, thumbnailPath, entity) - return - } if (entity?.isCustom) { compressVideo(videoPath, thumbnailPath, entity) diff --git a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/util/PdUtil.kt b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/util/PdUtil.kt index cc4cb781f1..58352ad7c6 100644 --- a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/util/PdUtil.kt +++ b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/util/PdUtil.kt @@ -31,8 +31,8 @@ fun getInformationBody( isShare:Boolean, poiType: String, mainInfoId: Long, - latitude: Double, - longitude: Double + longitude: Double, + latitude: Double ): InformationBody { var jsonArray = JsonArray() var type: Int diff --git a/main-extensions/mogo-module-main-launcher/src/main/java/com/zhidao/mogo/module/main/launcher/MainLauncherActivity.java b/main-extensions/mogo-module-main-launcher/src/main/java/com/zhidao/mogo/module/main/launcher/MainLauncherActivity.java index 48700344f5..48c9b4c52f 100644 --- a/main-extensions/mogo-module-main-launcher/src/main/java/com/zhidao/mogo/module/main/launcher/MainLauncherActivity.java +++ b/main-extensions/mogo-module-main-launcher/src/main/java/com/zhidao/mogo/module/main/launcher/MainLauncherActivity.java @@ -20,7 +20,6 @@ import com.mogo.service.intent.IMogoIntentListener; public class MainLauncherActivity extends MainActivity implements IMogoIntentListener { protected boolean mIsHomeKeyDown = false; - @Override protected void onCreate( @Nullable Bundle savedInstanceState ) { super.onCreate( savedInstanceState );