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 ) {