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 7675cc9b51..534443515f 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 @@ -21,12 +21,14 @@ import com.mogo.module.service.network.RefreshModel; import com.mogo.module.service.network.ZhidaoRefreshModel; import com.mogo.module.service.network.bean.LauncherCardAdvertisementData; import com.mogo.utils.AppUtils; +import com.mogo.utils.NetworkUtils; import com.mogo.utils.logger.Logger; import com.mogo.utils.network.RequestOptions; import com.mogo.utils.storage.SharedPrefsMgr; import java.util.ArrayList; import java.util.Arrays; +import java.util.Comparator; import java.util.List; import java.util.Map; @@ -161,9 +163,13 @@ class LauncherCardRefresher { Logger.d( TAG, "start" ); mLaunchTTSText = mContext.getString( R.string.module_service_open_app_tip ); startExplorerWayStrategy(); - // 延时一分钟加载数据,已保证accOn之后网络恢复正常 - mHandler.sendEmptyMessageDelayed( MSG_START_REFRESH_ADVERTISEMENT, ONE_MINUTE ); mDefaultConfigCounter = 0; + // 延时加载数据,已保证accOn之后网络恢复正常 + long delay = ONE_MINUTE; + if ( NetworkUtils.isConnected( mContext ) ) { + delay = 0L; + } + mHandler.sendEmptyMessageDelayed( MSG_START_REFRESH_ADVERTISEMENT, delay ); } /** @@ -301,6 +307,7 @@ class LauncherCardRefresher { intent.putExtra( "v2x_card_button_name", mDefaultLauncherCardConfig.buttonContent ); intent.putExtra( "v2x_card_startTime", mDefaultLauncherCardConfig.startTime ); intent.putExtra( "v2x_card_endTime", mDefaultLauncherCardConfig.endTime ); + intent.putExtra( "v2x_card_is_default", true ); mContext.sendBroadcast( intent ); Logger.d( TAG, "发送默认配置广播到桌面卡片." ); if ( !TextUtils.isEmpty( mDefaultLauncherCardConfig.content ) ) { @@ -399,6 +406,7 @@ class LauncherCardRefresher { if ( !mAdvertisements.isEmpty() && mAdvertisements.size() > 1 ) { LauncherCardAdvertisementData.LauncherCardAdvertisement[] sorted = new LauncherCardAdvertisementData.LauncherCardAdvertisement[mAdvertisements.size()]; + sorted = mAdvertisements.toArray( sorted ); Arrays.sort( sorted, ( ( o1, o2 ) -> { return o1.sort < o2.sort ? 1 : ( o1.sort == o2.sort ? 0 : -1 ); } ) ); @@ -465,6 +473,9 @@ class LauncherCardRefresher { intent.putExtra( "v2x_card_button_name", advertisement.buttonContent ); intent.putExtra( "v2x_card_startTime", advertisement.startTime ); intent.putExtra( "v2x_card_endTime", advertisement.endTime ); + intent.putExtra( "v2x_card_activity_id", advertisement.id ); + intent.putExtra( "v2x_card_timeout", 20 * 1000 ); + intent.putExtra( "v2x_card_is_default", false ); mContext.sendBroadcast( intent ); if ( !AppUtils.isAppForeground( mContext ) ) { speakTTS( advertisement.content, true ); diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/network/bean/LauncherCardAdvertisementData.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/network/bean/LauncherCardAdvertisementData.java index cd633c1872..5edeb7193f 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/network/bean/LauncherCardAdvertisementData.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/network/bean/LauncherCardAdvertisementData.java @@ -32,6 +32,7 @@ class LauncherCardAdvertisementData extends BaseData { * 活动展示顺序 sort */ public static class LauncherCardAdvertisement { + public String id; public String name; public int cardType; public String filePath;