From 003acabead3894a8006178ab140234dcc0f9b4dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=AE=8F=E5=AE=87?= Date: Wed, 17 Jun 2020 20:13:03 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E5=8D=87=E7=BA=A7V2X=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E4=BA=86=20=E3=80=90=E6=A1=8C=E9=9D=A2=E5=8D=A1=E7=89=87?= =?UTF-8?q?=E3=80=91=E7=96=B2=E5=8A=B3=E9=A9=BE=E9=A9=B63=E5=B0=8F?= =?UTF-8?q?=E6=97=B6TTS=E6=92=AD=E6=8A=A5=E6=8F=90=E7=A4=BA=E6=89=BE?= =?UTF-8?q?=E5=88=B0=E5=81=9C=E8=BD=A6=E5=9C=BA=E5=AF=BC=E8=88=AA=E5=89=8D?= =?UTF-8?q?=E5=BE=80=EF=BC=8C=E8=AF=AD=E9=9F=B3=E8=AF=B4=E5=AF=BC=E8=88=AA?= =?UTF-8?q?=E5=89=8D=E5=BE=80=EF=BC=8C=E6=B2=A1=E6=9C=89=E8=B0=83=E8=B5=B7?= =?UTF-8?q?=E5=AF=BC=E8=88=AA=20http://jira.zhidaohulian.com/browse/D80XCD?= =?UTF-8?q?-1435?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 2edb4df825..c0b58d1c24 100644 --- a/gradle.properties +++ b/gradle.properties @@ -71,7 +71,7 @@ MOGO_MODULE_GUIDESHOW_PROVIDER_VERSION=1.0.2-SNAPSHOT # 在线车辆F MOGO_MODULE_ONLINECAR_VERSION=1.0.3.2 # v2x -MOGO_MODULE_V2X_VERSION=1.1.18 +MOGO_MODULE_V2X_VERSION=1.1.19 # 推送 MOGO_MODULE_PUSH_VERSION=1.0.1 # 广告资源位 From 34177988c07d3e6b3caba6f1afcd735333cb06ce Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Thu, 18 Jun 2020 10:33:55 +0800 Subject: [PATCH 2/4] opt --- .../service/marker/MapMarkerManager.java | 92 +++++-------------- 1 file changed, 24 insertions(+), 68 deletions(-) diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java index 064551593a..94145f945b 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java @@ -322,7 +322,7 @@ public class MapMarkerManager implements IMogoMarkerClickListener, carPoints.add( new MogoLatLng( markerLocation.getLat(), markerLocation.getLon() ) ); } - String sn = getCarSnFromEntity( markerOnlineCar ); + String sn = getPrimaryKeyFromEntity( markerOnlineCar ); IMogoMarker mogoMarker = existCarMap.get( sn ); if ( mogoMarker == null ) { mogoMarker = drawMapMarker( markerShowEntity, ServiceConst.MARKER_Z_INDEX_LOW ); @@ -361,7 +361,7 @@ public class MapMarkerManager implements IMogoMarkerClickListener, markerShowEntity.setMarkerType( markerExploreWay.getType() ); markerShowEntity.setTextContent( markerExploreWay.getAddr() ); - String sn = getCarSnFromEntity( markerExploreWay ); + String sn = getPrimaryKeyFromEntity( markerExploreWay ); IMogoMarker mogoMarker = existCarMap.get( sn ); if ( mogoMarker == null ) { Logger.d( TAG, "draw road condition, sn = %s", sn ); @@ -371,70 +371,6 @@ public class MapMarkerManager implements IMogoMarkerClickListener, } } - - /** - * 共享音乐 - * - * @param shareMusicList - */ - private void drawShareMusicMarker( List< MarkerShareMusic > shareMusicList, int maxAmount ) { - if ( shareMusicList == null || shareMusicList.isEmpty() ) { - MarkerServiceHandler.getMarkerManager().removeMarkers( ModuleNames.CARD_TYPE_SHARE_MUSIC ); - return; - } - int size = getAppropriateSize( maxAmount, shareMusicList ); - Map< String, IMogoMarker > existCarMap = purgeMarkerData( shareMusicList, ModuleNames.CARD_TYPE_SHARE_MUSIC ); - for ( int i = 0; i < size; i++ ) { - MarkerShareMusic markerShareMusic = shareMusicList.get( i ); - MarkerLocation markerLocation = markerShareMusic.getLocation(); - MarkerShowEntity markerShowEntity = new MarkerShowEntity(); - markerShowEntity.setBindObj( markerShareMusic ); - markerShowEntity.setMarkerLocation( markerLocation ); - markerShowEntity.setMarkerType( markerShareMusic.getType() ); - markerShowEntity.setTextContent( markerShareMusic.getMediaName() ); - markerShowEntity.setIconUrl( markerShareMusic.getMediaImg() ); - - String sn = getCarSnFromEntity( markerShareMusic ); - IMogoMarker mogoMarker = existCarMap.get( sn ); - if ( mogoMarker == null ) { - drawMapMarker( markerShowEntity, ServiceConst.MARKER_Z_INDEX_HIGH ); - } - } - } - - /** - * 新鲜事 - * - * @param noveltyInfoList - */ - private void drawNoveltyMarker( List< MarkerNoveltyInfo > noveltyInfoList, int maxAmount ) { - if ( noveltyInfoList == null || noveltyInfoList.isEmpty() ) { - MarkerServiceHandler.getMarkerManager().removeMarkers( ModuleNames.CARD_TYPE_NOVELTY ); - return; - } - int size = getAppropriateSize( maxAmount, noveltyInfoList ); - Map< String, IMogoMarker > existCarMap = purgeMarkerData( noveltyInfoList, ModuleNames.CARD_TYPE_NOVELTY ); - for ( int i = 0; i < size; i++ ) { - MarkerNoveltyInfo noveltyInfo = noveltyInfoList.get( i ); - MarkerLocation markerLocation = noveltyInfo.getLocation(); - MarkerShowEntity markerShowEntity = new MarkerShowEntity(); - markerShowEntity.setBindObj( noveltyInfo ); - markerShowEntity.setMarkerLocation( markerLocation ); - markerShowEntity.setMarkerType( noveltyInfo.getType() ); - String address = noveltyInfo.getLocation().getAddress(); - if ( !TextUtils.isEmpty( address ) ) { - markerShowEntity.setTextContent( address ); - } else { - markerShowEntity.setTextContent( noveltyInfo.getContentData().getTitle() ); - } - String sn = getCarSnFromEntity( noveltyInfo ); - IMogoMarker mogoMarker = existCarMap.get( sn ); - if ( mogoMarker == null ) { - drawMapMarker( markerShowEntity, ServiceConst.MARKER_Z_INDEX_HIGH ); - } - } - } - /** * S = (A ∩ B) ∪ B * (A ∩ B)作为旧列表需要保留的部分 @@ -456,11 +392,11 @@ public class MapMarkerManager implements IMogoMarkerClickListener, Map< String, IMogoMarker > allMap = new HashMap<>(); for ( IMogoMarker marker : allCarsList ) { - String sn = getCarSnFromMarker( marker ); + String sn = getPrimaryKeyFromMarker( marker ); allMap.put( sn, marker ); } for ( Object entity : newList ) { - String sn = getCarSnFromEntity( entity ); + String sn = getPrimaryKeyFromEntity( entity ); if ( allMap.containsKey( sn ) ) { existMap.put( sn, allMap.get( sn ) ); } @@ -477,6 +413,26 @@ public class MapMarkerManager implements IMogoMarkerClickListener, return existMap; } + private String getPrimaryKeyFromEntity( Object entity ) { + if ( entity instanceof MarkerExploreWay ) { + String id = ( ( MarkerExploreWay ) entity ).getInfoId(); + if ( !TextUtils.isEmpty( id ) ) { + return id; + } + } + return getCarSnFromEntity( entity ); + } + + private String getPrimaryKeyFromMarker( IMogoMarker marker ) { + if ( marker == null || marker.getObject() == null || marker.isDestroyed() ) { + return null; + } + if ( !( marker.getObject() instanceof MarkerShowEntity ) ) { + return null; + } + return getPrimaryKeyFromEntity( ( ( MarkerShowEntity ) marker.getObject() ).getBindObj() ); + } + private String getCarSnFromEntity( Object entity ) { try { if ( entity instanceof MarkerOnlineCar ) { From 7c58c36b162fe90f84aae96137b77c6d5f049db0 Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Thu, 18 Jun 2020 11:24:03 +0800 Subject: [PATCH 3/4] opt --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index ce2fec7504..c6dc22f5ad 100644 --- a/gradle.properties +++ b/gradle.properties @@ -24,7 +24,7 @@ SNAPSHOT_REPOSITORY_URL=http://nexus.zhidaoauto.com/repository/maven-snapshots/ USERNAME=xintai PASSWORD=xintai2018 # 编译模式: false - 依赖本地版本, true - 依赖 maven 版本 -RELEASE=true +RELEASE=false # 模块版本 ## 工程内模块 MOGO_COMMONS_VERSION=1.2.1.3 From 35390d39d2ba5ac7d8941b389225da26f176f69f Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Thu, 18 Jun 2020 11:45:12 +0800 Subject: [PATCH 4/4] bugfix: D80XCD-1441 --- .../com/mogo/module/service/MogoServices.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) 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 9837155cae..9d2d86b3ff 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 @@ -333,6 +333,8 @@ public class MogoServices implements IMogoMapListener, if ( DebugConfig.isLaunchLocationService() ) { initLocationServiceProcess( context ); } + + requestAutoNaviLastStatus(); } private void initLocationServiceProcess( Context context ) { @@ -701,6 +703,12 @@ public class MogoServices implements IMogoMapListener, restartAutoRefreshAtTime( 2_000L ); } mIsMainPageFirstResume = false; + try { + // 请求地图最后一次保存的状态 + requestAutoNaviLastStatus(); + } catch ( Exception e ) { + e.printStackTrace(); + } } else { unregisterInternalUnWakeupWords(); stopAutoRefreshStrategy(); @@ -713,6 +721,13 @@ public class MogoServices implements IMogoMapListener, } } + private void requestAutoNaviLastStatus(){ + Intent intent = new Intent(); + intent.setAction("AUTONAVI_STANDARD_BROADCAST_RECV"); + intent.putExtra("KEY_TYPE", 10061); + mContext.sendBroadcast(intent); + } + private void notifySeekHelpingStatusChanged( boolean seekHelpingStatus ) { Intent intent = new Intent( "com.mogo.launcher.adas.app" ); try {