From 6cc954343b253bf5bc236cf90be5bb5474a4e2ca Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Mon, 31 Aug 2020 16:12:57 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E9=BB=98=E8=AE=A4=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=8B=89=E5=88=B0=E6=95=B0=E6=8D=AE=E5=B0=B1=E7=AB=8B=E5=88=BB?= =?UTF-8?q?=E5=88=B7=E6=96=B0=E5=88=B0=E6=A1=8C=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../launchercard/LauncherCardRefresher.java | 19 +++++++++++++------ 1 file changed, 13 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 189e9d6735..ac24e684db 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 @@ -67,7 +67,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 = 30 * ONE_MINUTE; + private long mDefaultTTSPlayInterval = 3 * ONE_MINUTE; private LauncherCardAdvertisementData.LauncherCardAdvertisement mDefaultLauncherCardConfig; private List< LauncherCardAdvertisementData.LauncherCardAdvertisement > mAdvertisements; @@ -119,7 +119,7 @@ class LauncherCardRefresher { loadNetworkConfigStrategy(); break; case MSG_REFRESH_DEFAULT_CARD: - renderDefaultLauncherCardConfig(); + renderDefaultLauncherCardConfig( false ); mRefreshStrategy = mRefreshStrategy.getNext(); restart(); break; @@ -134,7 +134,7 @@ class LauncherCardRefresher { } break; case MSG_START_LOOP_DEFAULT_CARD: - renderDefaultLauncherCardConfig(); + renderDefaultLauncherCardConfig( false ); break; case MSG_REFRESH_ADVERTISEMENT: int index = msg.arg1;// 当前广告索引 @@ -154,7 +154,7 @@ class LauncherCardRefresher { new LauncherCardRefreshStrategy( 3 * ONE_MINUTE, new LauncherCardRefreshStrategy( - 20 * ONE_MINUTE, + 5 * ONE_MINUTE, null, MSG_EXPLORER_WAY_OR_ONLINE_CAR_DATA ), MSG_INDUCE ), @@ -327,8 +327,10 @@ class LauncherCardRefresher { * 1. 刷新默认卡片样式 *

* 2. 播报默认卡片语音 + * + * @param sendConfigOnly 仅发送配置到 */ - private void renderDefaultLauncherCardConfig() { + private void renderDefaultLauncherCardConfig( boolean sendConfigOnly ) { if ( mDefaultLauncherCardConfig != null ) { long curr = System.currentTimeMillis(); if ( mDefaultLauncherCardConfig.endTime > curr && mDefaultLauncherCardConfig.startTime < curr ) { @@ -351,6 +353,10 @@ class LauncherCardRefresher { } } + if ( sendConfigOnly ) { + return; + } + if ( mDefaultConfigCounter++ >= 3 ) { return; } @@ -358,7 +364,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 ) { return; } else { SharedPrefsMgr.getInstance( mContext ).putInt( KEY_LauncherCardTipCounter, 0 ); @@ -454,6 +460,7 @@ class LauncherCardRefresher { } if ( launcherCardAdvertisement.cardType == LauncherCardAdvertisementData.TYPE_DEFAULT_CONFIG ) { mDefaultLauncherCardConfig = launcherCardAdvertisement; + renderDefaultLauncherCardConfig( true ); } else if ( launcherCardAdvertisement.cardType == LauncherCardAdvertisementData.TYPE_ACTIVITY ) { long curr = System.currentTimeMillis(); if ( curr > launcherCardAdvertisement.startTime && curr < launcherCardAdvertisement.endTime ) { From dfee45602bb7ad5e8ee4ef703b5631d5dc85aad8 Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Mon, 31 Aug 2020 16:44:25 +0800 Subject: [PATCH 2/4] rlgl - 4 --- .../launchercard/LauncherCardRefresher.java | 23 ++++++++++--------- 1 file changed, 12 insertions(+), 11 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 ac24e684db..7d5e67b617 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 @@ -149,17 +149,17 @@ class LauncherCardRefresher { private boolean mStart = false; private RefreshModel mRefreshModel; private ZhidaoRefreshModel mZhidaoRefreshModel; - private LauncherCardRefreshStrategy mRefreshStrategy = new LauncherCardRefreshStrategy( - 2 * ONE_MINUTE, - new LauncherCardRefreshStrategy( - 3 * ONE_MINUTE, - new LauncherCardRefreshStrategy( - 5 * ONE_MINUTE, - null, - MSG_EXPLORER_WAY_OR_ONLINE_CAR_DATA ), - MSG_INDUCE ), - MSG_REFRESH_DEFAULT_CARD + + private LauncherCardRefreshStrategy mExplorerWayOrOnlineCarDataStrategy = new LauncherCardRefreshStrategy( + 5 * ONE_MINUTE,null, MSG_EXPLORER_WAY_OR_ONLINE_CAR_DATA ); + private LauncherCardRefreshStrategy mInduceStrategy = new LauncherCardRefreshStrategy( + 3 * ONE_MINUTE,mExplorerWayOrOnlineCarDataStrategy, MSG_INDUCE + ); + private LauncherCardRefreshStrategy mLauncherCardConfigStrategy = new LauncherCardRefreshStrategy( + 2 * ONE_MINUTE,mInduceStrategy, MSG_REFRESH_DEFAULT_CARD + ); + private LauncherCardRefreshStrategy mRefreshStrategy = mLauncherCardConfigStrategy; public void start() { if ( DebugConfig.isLauncher() || DebugConfig.getCarMachineType() == DebugConfig.CAR_MACHINE_TYPE_BYD ) { @@ -172,6 +172,7 @@ class LauncherCardRefresher { mLaunchTTSText = mContext.getString( R.string.module_service_open_app_tip ); mDefaultConfigCounter = 0; mRefreshTicketCounter = 0; + mRefreshStrategy = mLauncherCardConfigStrategy; // 延时加载数据,已保证accOn之后网络恢复正常 long delay = ONE_MINUTE; if ( NetworkUtils.isConnected( mContext ) ) { @@ -475,7 +476,7 @@ class LauncherCardRefresher { 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 ); + return o1.sort > o2.sort ? 1 : ( o1.sort == o2.sort ? 0 : -1 ); } ) ); mAdvertisements = Arrays.asList( sorted ); } From 31c65d34eb7822bdb67dc0e601cc5e77e39514bb Mon Sep 17 00:00:00 2001 From: lixiaopeng Date: Mon, 31 Aug 2020 16:39:21 +0800 Subject: [PATCH 3/4] opt --- .../roadcondition/service/MainServiceController.kt | 13 +++++++++++-- .../com/zhidao/roadcondition/util/AnalyticsUtil.kt | 2 ++ .../com/zhidao/roadcondition/util/LocationUtil.kt | 9 +++++++++ 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/MainServiceController.kt b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/MainServiceController.kt index 58aff2ab9f..f867e16f6f 100644 --- a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/MainServiceController.kt +++ b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/MainServiceController.kt @@ -231,10 +231,12 @@ class MainServiceController { latitude: Double, customSend: ((Boolean) -> Unit)? = null ) { - Log.d(TAG, " sendInformationMessage poiType = $poiType"); + Log.d(TAG, " sendInformationMessage poiType = $poiType") //删除测试数据 - var locationInfo = LocationUtil.getInstance().getLocationInfo(); + var locationInfo = LocationUtil.getInstance().getLocationInfo() if (locationInfo.address.isNullOrEmpty()) { + Log.d(TAG, " sendInformationMessage locationInfo.address = $locationInfo.address") + trackUploadGeo(1) geoLocation(type, url, locationInfo, isCustom,trafficInfoType, isShare, customSend,poiType,mainInfoId,longitude,latitude) } else { postInformationMessage( @@ -310,4 +312,11 @@ class MainServiceController { ) } + //上传 + private fun trackUploadGeo(type: Int) { + trackNormalEvent( + CarNet_Geo, mutableMapOf("type" to type) + ) + } + } \ No newline at end of file diff --git a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/util/AnalyticsUtil.kt b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/util/AnalyticsUtil.kt index 042aad7327..1e48a22717 100644 --- a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/util/AnalyticsUtil.kt +++ b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/util/AnalyticsUtil.kt @@ -33,6 +33,8 @@ const val CarNet_Servers_Upload:String = "CarNet_Servers_Upload" //上传服务 const val CarNet_Voice_Search:String = "CarNet_Voice_Search" //语音搜索路况,type=1 成功,type=2 失败 const val CarNet_USER_SHOW:String = "CarNet_user_show" //情报展示时长,showtime 加载列表时长 const val CarNet_USER_LOAD:String = "CarNet_user_load" //情报加载时长,type=1 视频,2图片 +const val CarNet_Geo:String = "CarNet_Geo_Location" //上传服务端, type=1开始 ,type=2 成功, type=3 失败 + const val CarNet_live_broadcast = "CarNet_live_broadcast" // 地图页面点击直播(在线可直播车机) //自定义埋点 diff --git a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/util/LocationUtil.kt b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/util/LocationUtil.kt index 56719fc1fe..2e2de29b55 100644 --- a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/util/LocationUtil.kt +++ b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/util/LocationUtil.kt @@ -183,12 +183,14 @@ class LocationUtil private constructor() { geocoderSearch.setOnGeocodeSearchListener(object : GeocodeSearch.OnGeocodeSearchListener { override fun onRegeocodeSearched(p0: RegeocodeResult?, p1: Int) { if (p1 == 1000) { + trackUploadGeo(2); var regeocodeAddress = p0?.regeocodeAddress regeocodeAddress?.let { var locInfo = regeocodeAddress.toLocInfo(regeocodeAddress, latlngPoint) locGeoCode.invoke(locInfo) } } else { + trackUploadGeo(3); onError.invoke("geoCode -> $p1") } } @@ -198,6 +200,13 @@ class LocationUtil private constructor() { }) } + //上传 + private fun trackUploadGeo(type: Int) { + trackNormalEvent( + CarNet_Geo, mutableMapOf("type" to type) + ) + } + fun getSpeed():Float{ return speed } From 482ff408254d4a0d9da96d5705a7134380798b0a Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Mon, 31 Aug 2020 17:40:27 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E6=81=A2=E5=A4=8D?= =?UTF-8?q?=E5=88=B0=E7=94=9F=E4=BA=A7=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/service/launchercard/LauncherCardRefresher.java | 6 +++--- 1 file changed, 3 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 7d5e67b617..40935255db 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 @@ -67,7 +67,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 long mDefaultTTSPlayInterval = 30 * ONE_MINUTE; private LauncherCardAdvertisementData.LauncherCardAdvertisement mDefaultLauncherCardConfig; private List< LauncherCardAdvertisementData.LauncherCardAdvertisement > mAdvertisements; @@ -151,7 +151,7 @@ class LauncherCardRefresher { private ZhidaoRefreshModel mZhidaoRefreshModel; private LauncherCardRefreshStrategy mExplorerWayOrOnlineCarDataStrategy = new LauncherCardRefreshStrategy( - 5 * ONE_MINUTE,null, MSG_EXPLORER_WAY_OR_ONLINE_CAR_DATA + 20 * ONE_MINUTE,null, MSG_EXPLORER_WAY_OR_ONLINE_CAR_DATA ); private LauncherCardRefreshStrategy mInduceStrategy = new LauncherCardRefreshStrategy( 3 * ONE_MINUTE,mExplorerWayOrOnlineCarDataStrategy, MSG_INDUCE @@ -365,7 +365,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_MINUTE ) { + if ( System.currentTimeMillis() - lastTipTime < 10 * ONE_DAY ) { return; } else { SharedPrefsMgr.getInstance( mContext ).putInt( KEY_LauncherCardTipCounter, 0 );