diff --git a/.idea/misc.xml b/.idea/misc.xml index 2dc54c489f..707ee6e613 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,6 +1,6 @@ - + \ No newline at end of file diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/AppEnum.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/AppEnum.java index 7eadd38ab6..df83f351c0 100644 --- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/AppEnum.java +++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/AppEnum.java @@ -14,6 +14,8 @@ import com.mogo.module.apps.R; * 基础类:均衡器、方控学习、蓝牙、FM、车载设置、AUX */ public enum AppEnum { + // 酷我音乐 + KwMusic("酷我音乐", "cn.kuwo.kwmusiccar", R.drawable.ic_kuwo), // 爱趣听 WeCarFlow("爱趣听","com.tencent.wecarflow", R.drawable.module_apps_ic_we_car_flow ), //"QQ音乐", diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/NavigatorApps.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/NavigatorApps.java index 700564dce6..f1e00886b6 100644 --- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/NavigatorApps.java +++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/NavigatorApps.java @@ -15,7 +15,8 @@ public class NavigatorApps { private static AppInfo app = new AppInfo( "导航", "com.mogo.launcher.navi.search", "", 0, null, R.drawable.module_apps_ic_navigator_navi, 1 ); private static AppInfo app_ = new AppInfo( "导航", "com.mogo.launcher.navi.search", "", 0, null, R.drawable.module_apps_ic_navigator_navi_disable, 1 ); - private static AppInfo app2 = new AppInfo( "音乐", "com.tencent.wecarflow", "", 0, null, R.drawable.module_apps_ic_navigator_media, 2 ); +// private static AppInfo app2 = new AppInfo( "音乐", "com.tencent.wecarflow", "", 0, null, R.drawable.module_apps_ic_navigator_media, 2 ); + private static AppInfo app2 = new AppInfo( "音乐", "cn.kuwo.kwmusiccar", "", 0, null, R.drawable.module_apps_ic_navigator_media, 2 ); private static AppInfo app3 = new AppInfo( "车聊聊", "com.zhidao.imdemo", "", 0, null, R.drawable.module_apps_ic_navigator_im, 6 ); private static AppInfo app4 = new AppInfo( "全部应用", "com.mogo.launcher.applist", "", 0, null, R.drawable.module_apps_ic_navigator_applist, 4 ); diff --git a/modules/mogo-module-apps/src/main/res/drawable/ic_kuwo.webp b/modules/mogo-module-apps/src/main/res/drawable/ic_kuwo.webp new file mode 100644 index 0000000000..82330db5fa Binary files /dev/null and b/modules/mogo-module-apps/src/main/res/drawable/ic_kuwo.webp differ diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerCardResult.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerCardResult.java index be7c7bbe23..3896ae58c4 100644 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerCardResult.java +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerCardResult.java @@ -1,11 +1,13 @@ package com.mogo.module.common.entity; +import com.mogo.commons.data.BaseData; + import java.io.Serializable; import java.util.List; @SuppressWarnings("unused") -public class MarkerCardResult implements Serializable { +public class MarkerCardResult extends BaseData { private List dataType; // 要查询的类型 private List carChat; diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerExploreWayItem.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerExploreWayItem.java index efc6a88649..f8ab53ca9d 100644 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerExploreWayItem.java +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerExploreWayItem.java @@ -6,11 +6,15 @@ import android.text.TextUtils; import java.io.Serializable; +/** + * 道路情报,V2X预警,地图道路事件POI,违章停车POI等 + */ @SuppressWarnings("unused") public class MarkerExploreWayItem implements Serializable { private String thumbnail; private String url; + private String content; public String getThumbnail() { if (TextUtils.isEmpty(thumbnail)) { @@ -34,11 +38,20 @@ public class MarkerExploreWayItem implements Serializable { this.url = url; } + public String getContent() { + return content; + } + + public void setContent(String content) { + this.content = content; + } + @Override public String toString() { return "MarkerExploreWayItem{" + "thumbnail='" + thumbnail + '\'' + ", url='" + url + '\'' + + ", content='" + content + '\'' + '}'; } } diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerPoiTypeEnum.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerPoiTypeEnum.java index e57e3270fe..a0afae8e89 100644 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerPoiTypeEnum.java +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerPoiTypeEnum.java @@ -9,33 +9,35 @@ package com.mogo.module.common.entity; */ public interface MarkerPoiTypeEnum { //加油站 - public String GAS_STATION = "10001"; + String GAS_STATION = "10001"; //交通检查 - public String TRAFFIC_CHECK = "10002"; + String TRAFFIC_CHECK = "10002"; //封路 - public String ROAD_CLOSED = "10003"; + String ROAD_CLOSED = "10003"; //商场打折 - public String SHOP_DISCOUNT = "10004"; + String SHOP_DISCOUNT = "10004"; //4S店 - public String FOURS_4S = "10005"; + String FOURS_4S = "10005"; //施工 - public String FOURS_ROAD_WORK = "10006"; + String FOURS_ROAD_WORK = "10006"; //拥堵 - public String FOURS_BLOCK_UP = "10007"; + String FOURS_BLOCK_UP = "10007"; //积水 - public String FOURS_PONDING = "10008"; + String FOURS_PONDING = "10008"; //超市打折 - public String FOURS_SHOP_FREE = "10009"; + String FOURS_SHOP_FREE = "10009"; //浓雾 - public String FOURS_FOG = "10010"; + String FOURS_FOG = "10010"; //结冰 - public String FOURS_ICE = "10011"; + String FOURS_ICE = "10011"; //停车场 - public String FOURS_PARKING = "10012"; + String FOURS_PARKING = "10012"; //事故 - public String FOURS_ACCIDENT = "10013"; + String FOURS_ACCIDENT = "10013"; //身边 - public String FOURS_NEALY = "10014"; + String FOURS_NEALY = "10014"; //实时路况 - public String FOURS_LIVING = "10015"; + String FOURS_LIVING = "10015"; + //违章停车 + String ILLEGAL_PARK_LIVING = "10016"; } \ No newline at end of file diff --git a/modules/mogo-module-main/src/main/res/layout/module_main_activity_main.xml b/modules/mogo-module-main/src/main/res/layout/module_main_activity_main.xml index 02d9555475..96f61eca7b 100644 --- a/modules/mogo-module-main/src/main/res/layout/module_main_activity_main.xml +++ b/modules/mogo-module-main/src/main/res/layout/module_main_activity_main.xml @@ -9,7 +9,13 @@ + android:layout_height="match_parent" > + + + - - extends Presenter { * 下一首 */ public abstract void next(); + + /** + * 打开对应的应用 + */ + public abstract void openApp(); } diff --git a/modules/mogo-module-media/src/main/java/com/mogo/module/media/presenter/KwPresenter.java b/modules/mogo-module-media/src/main/java/com/mogo/module/media/presenter/KwPresenter.java new file mode 100644 index 0000000000..75e49e751a --- /dev/null +++ b/modules/mogo-module-media/src/main/java/com/mogo/module/media/presenter/KwPresenter.java @@ -0,0 +1,196 @@ +package com.mogo.module.media.presenter; + +import android.content.Context; +import android.os.Handler; +import android.os.Message; + +import com.alibaba.android.arouter.launcher.ARouter; +import com.mogo.module.media.MediaConstants; +import com.mogo.module.media.constants.MusicConstant; +import com.mogo.module.media.model.MediaInfoData; +import com.mogo.module.media.view.IMusicView; +import com.mogo.service.IMogoServiceApis; +import com.mogo.service.MogoServicePaths; +import com.mogo.service.statusmanager.IMogoStatusChangedListener; +import com.mogo.service.statusmanager.StatusDescriptor; +import com.mogo.utils.logger.Logger; + +import cn.kuwo.autosdk.api.KWAPI; +import cn.kuwo.autosdk.api.OnGetSongImgUrlListener; +import cn.kuwo.autosdk.api.PlayState; +import cn.kuwo.autosdk.api.PlayerStatus; +import cn.kuwo.base.bean.Music; + +/** + * 适配酷我的presenter + * + * @author tongchenfei + */ +public class KwPresenter extends BaseMediaPresenter { + private static final String TAG = "KwPresenter"; + private KWAPI kwapi; + private boolean isBind = false; + + private MediaInfoData currentMedia = new MediaInfoData(); + + public KwPresenter(IMusicView view) { + super(view); + } + + @Override + public void init(Context context) { + kwapi = KWAPI.createKWAPI(context, "auto"); + + kwapi.registerConnectedListener(b -> { + Logger.d(TAG, "onConnected: " + b); + isBind = b; + if (!isBind) { + mView.onMusicStopped(); + }else{ + PlayerStatus currentState = kwapi.getPlayerStatus(); + Logger.d(TAG, "check current status: " + currentState); + if(currentState == PlayerStatus.BUFFERING||currentState == PlayerStatus.PLAYING){ + currentMedia.setPlayState(MusicConstant.PLAY_STATE_PLAYING); + kwapi.getSongPicUrl(kwapi.getNowPlayingMusic(), onGetSongImgUrlListener); + startTrackTrackProgress(); + mView.onMusicPlaying(); + } + } + }); + + kwapi.registerExitListener(() -> { + Logger.d(TAG, "onExit==="); + mView.onAppExit(); + }); + + kwapi.registerPlayerStatusListener((playerStatus, music) -> { + Logger.d(TAG, "onPlayerStatusListener: " + playerStatus); + switch (playerStatus) { + case BUFFERING: + kwapi.getSongPicUrl(music, onGetSongImgUrlListener); + break; + case PLAYING: + currentMedia.setPlayState(MusicConstant.PLAY_STATE_PLAYING); + kwapi.getSongPicUrl(music, onGetSongImgUrlListener); + startTrackTrackProgress(); + mView.onMusicPlaying(); + break; + case INIT: + case PAUSE: + case STOP: + currentMedia.setPlayState(MusicConstant.PLAY_STATE_PAUSE_OR_STOP); + stopTrackTrackProgress(); + mView.onMusicPause(); + break; + default: + break; + } + }); + + IMogoServiceApis serviceApis = + (IMogoServiceApis) ARouter.getInstance().build(MogoServicePaths.PATH_SERVICE_APIS).navigation(context); + + serviceApis.getStatusManagerApi().registerStatusChangedListener(MediaConstants.MODULE_TYPE, StatusDescriptor.MAIN_PAGE_RESUME, new IMogoStatusChangedListener() { + @Override + public void onStatusChanged(StatusDescriptor descriptor, boolean isTrue) { + if (isTrue) { + Logger.d(TAG, "onResume, isBind: " + isBind); + // 需要在resume时候判断绑定关系是否正常 + if (!isBind) { + // 未绑定,需要重新绑定,同时第一次绑定初始化也是在此处 + kwapi.bindAutoSdkService(); + } + } + } + }); + + kwapi.bindAutoSdkService(); + } + + @Override + public void play(MediaInfoData mediaInfoData) { +// if (kwapi.isKuwoRunning()) { + kwapi.setPlayState(PlayState.STATE_PLAY); +// } else { +// kwapi.randomPlayMusic(); +// } + } + + @Override + public void pause(MediaInfoData mediaInfoData) { + if (kwapi.isKuwoRunning()) { + kwapi.setPlayState(PlayState.STATE_PAUSE); + } + } + + @Override + public void stop(MediaInfoData mediaInfoData) { + + } + + @Override + public void pre() { + if (kwapi.isKuwoRunning()) { + kwapi.setPlayState(PlayState.STATE_PRE); + } + } + + @Override + public void next() { + if (kwapi.isKuwoRunning()) { + kwapi.setPlayState(PlayState.STATE_NEXT); + } + } + + private Handler.Callback callback = new Handler.Callback() { + @Override + public boolean handleMessage(Message msg) { + if (isTrackingProgress) { + mView.onMusicProgress(kwapi.getCurrentPos(), kwapi.getCurrentMusicDuration()); + msg.getTarget().sendEmptyMessageDelayed(MSG_TRACK_PROGRESS, + MSG_TRACK_PROGRESS_DELAY); + } + return false; + } + }; + private Handler handler = new Handler(callback); + private static final int MSG_TRACK_PROGRESS = 1001; + private static final long MSG_TRACK_PROGRESS_DELAY = 1000; + + private boolean isTrackingProgress = false; + + private void startTrackTrackProgress() { + if(!isTrackingProgress) { + isTrackingProgress = true; + handler.sendEmptyMessageDelayed(MSG_TRACK_PROGRESS, MSG_TRACK_PROGRESS_DELAY); + } + } + + private void stopTrackTrackProgress() { + if(isTrackingProgress) { + isTrackingProgress = false; + handler.removeMessages(MSG_TRACK_PROGRESS); + } + } + + private OnGetSongImgUrlListener onGetSongImgUrlListener = new OnGetSongImgUrlListener() { + @Override + public void onGetSongImgUrlSucessed(Music music, String s) { + currentMedia.setMediaName(music.name); + currentMedia.setMediaImg(s); + Logger.d(TAG, + "onGetSongImgUrlSucessed: " + currentMedia); + handler.post(() -> mView.onMediaInfoChanged(currentMedia)); + } + + @Override + public void onGetSongImgUrlFailed(Music music, int i) { + Logger.e(TAG, "onGetSongImgUrlFailed: " + i); + } + }; + + @Override + public void openApp(){ + kwapi.startAPP(true); + } +} diff --git a/modules/mogo-module-media/src/main/java/com/mogo/module/media/presenter/WeCarFlowPresenter.java b/modules/mogo-module-media/src/main/java/com/mogo/module/media/presenter/WeCarFlowPresenter.java index 66ab3efecc..4aa6dd259c 100644 --- a/modules/mogo-module-media/src/main/java/com/mogo/module/media/presenter/WeCarFlowPresenter.java +++ b/modules/mogo-module-media/src/main/java/com/mogo/module/media/presenter/WeCarFlowPresenter.java @@ -195,4 +195,9 @@ public class WeCarFlowPresenter extends BaseMediaPresenter { public void next() { FlowPlayControl.getInstance().doNext(); } + + @Override + public void openApp() { + FlowPlayControl.getInstance().startPlayActivity(context); + } } diff --git a/modules/mogo-module-media/src/main/java/com/mogo/module/media/view/IMusicView.java b/modules/mogo-module-media/src/main/java/com/mogo/module/media/view/IMusicView.java index d0379ff238..bf6eee1611 100644 --- a/modules/mogo-module-media/src/main/java/com/mogo/module/media/view/IMusicView.java +++ b/modules/mogo-module-media/src/main/java/com/mogo/module/media/view/IMusicView.java @@ -18,4 +18,6 @@ public interface IMusicView extends IView { void onMusicStopped(); void onMusicProgress(long current,long total); + + void onAppExit(); } diff --git a/modules/mogo-module-media/src/main/java/com/mogo/module/media/widget/AnimCircleImageView.java b/modules/mogo-module-media/src/main/java/com/mogo/module/media/widget/AnimCircleImageView.java index 280aee83e1..77cee5ce4e 100644 --- a/modules/mogo-module-media/src/main/java/com/mogo/module/media/widget/AnimCircleImageView.java +++ b/modules/mogo-module-media/src/main/java/com/mogo/module/media/widget/AnimCircleImageView.java @@ -79,7 +79,9 @@ public class AnimCircleImageView extends ImageView { } public void startAnim() { - if (isRotating == true) return; + if (isRotating){ + return; + } isRotateEnable = true; isRotating = true; currentDegree = savedDegree; diff --git a/modules/mogo-module-media/src/main/java/com/mogo/module/media/MediaWindow.java b/modules/mogo-module-media/src/main/java/com/mogo/module/media/window/MediaWindow.java similarity index 98% rename from modules/mogo-module-media/src/main/java/com/mogo/module/media/MediaWindow.java rename to modules/mogo-module-media/src/main/java/com/mogo/module/media/window/MediaWindow.java index dfa6be7426..45ea10d832 100644 --- a/modules/mogo-module-media/src/main/java/com/mogo/module/media/MediaWindow.java +++ b/modules/mogo-module-media/src/main/java/com/mogo/module/media/window/MediaWindow.java @@ -1,4 +1,4 @@ -package com.mogo.module.media; +package com.mogo.module.media.window; import android.content.BroadcastReceiver; import android.content.Context; @@ -8,12 +8,14 @@ import android.text.TextUtils; import android.view.LayoutInflater; import android.view.View; import android.widget.ImageView; -import android.widget.LinearLayout; import android.widget.TextView; import com.mogo.map.marker.IMogoMarker; import com.mogo.module.common.entity.MarkerShareMusic; import com.mogo.module.common.entity.MarkerShowEntity; +import com.mogo.module.media.MediaConstants; +import com.mogo.module.media.R; +import com.mogo.module.media.ServiceMediaHandler; import com.mogo.module.media.constants.LeTingFieldConstants; import com.mogo.module.media.constants.QQMusicFieldConstants; import com.mogo.module.media.listener.NoDoubleClickListener; @@ -30,7 +32,6 @@ import com.mogo.module.media.view.MediaView; import com.mogo.module.media.widget.AnimCircleImageView; import com.mogo.module.media.widget.NoScrollSeekBar; import com.mogo.module.media.widget.ScrollingTextView; -import com.mogo.module.service.marker.MapMarkerManager; import com.mogo.utils.ActivityLifecycleManager; import com.mogo.utils.ThreadPoolService; import com.mogo.utils.UiThreadHandler; @@ -65,15 +66,9 @@ public class MediaWindow implements MediaView{ private boolean mTwoChange = false; private boolean isFirstPlay = false; - private Runnable mRunnable = new Runnable() { - @Override - public void run() { - MusicControlBroadCast.sendGetMusicPlayStateBroadcast(); - } - }; + private Runnable mRunnable = MusicControlBroadCast::sendGetMusicPlayStateBroadcast; public void initMedia(Context context){ - mContext = context; mPresenter = new MediaPresenter(this); registerMediaReceiver(); diff --git a/modules/mogo-module-media/src/main/java/com/mogo/module/media/MediaWindow2.java b/modules/mogo-module-media/src/main/java/com/mogo/module/media/window/MediaWindow2.java similarity index 91% rename from modules/mogo-module-media/src/main/java/com/mogo/module/media/MediaWindow2.java rename to modules/mogo-module-media/src/main/java/com/mogo/module/media/window/MediaWindow2.java index 21898f15df..818bf5e792 100644 --- a/modules/mogo-module-media/src/main/java/com/mogo/module/media/MediaWindow2.java +++ b/modules/mogo-module-media/src/main/java/com/mogo/module/media/window/MediaWindow2.java @@ -1,7 +1,6 @@ -package com.mogo.module.media; +package com.mogo.module.media.window; import android.content.Context; -import android.content.res.Resources; import android.view.LayoutInflater; import android.view.View; import android.widget.FrameLayout; @@ -11,16 +10,17 @@ import android.widget.TextView; import com.mogo.commons.debug.DebugConfig; import com.mogo.commons.voice.AIAssist; import com.mogo.commons.voice.IMogoVoiceCmdCallBack; +import com.mogo.module.media.R; +import com.mogo.module.media.ServiceMediaHandler; import com.mogo.module.media.constants.MusicConstant; import com.mogo.module.media.listener.NoDoubleClickListener; import com.mogo.module.media.model.MediaInfoData; -import com.mogo.module.media.presenter.WeCarFlowPresenter; +import com.mogo.module.media.presenter.KwPresenter; import com.mogo.module.media.utils.Utils; import com.mogo.module.media.view.IMusicView; import com.mogo.module.media.widget.AnimCircleImageView; import com.mogo.module.media.widget.NoScrollSeekBar; import com.mogo.module.media.widget.ScrollingTextView; -import com.mogo.utils.LaunchUtils; import com.mogo.utils.WindowUtils; import com.mogo.utils.glide.GlideApp; import com.mogo.utils.logger.Logger; @@ -35,7 +35,7 @@ public class MediaWindow2 implements IMusicView { public static final String TAG = MediaWindow2.class.getName(); private Context mContext; - private WeCarFlowPresenter mPresenter; + private KwPresenter mPresenter; private MediaInfoData mMediaInfoData = new MediaInfoData(); @@ -54,7 +54,7 @@ public class MediaWindow2 implements IMusicView { public void initMedia(Context context) { mContext = context; - mPresenter = new WeCarFlowPresenter(this); + mPresenter = new KwPresenter(this); mPresenter.init(context); if(DebugConfig.isLauncher()) { @@ -108,7 +108,7 @@ public class MediaWindow2 implements IMusicView { mWindowView.setOnClickListener(new NoDoubleClickListener() { @Override public void onClicks(View view) { - openAqtApp(); + mPresenter.openApp(); } }); @@ -123,7 +123,7 @@ public class MediaWindow2 implements IMusicView { mPresenter.pause(mMediaInfoData); } } else { - openAqtApp(); + mPresenter.openApp(); } } }); @@ -169,6 +169,16 @@ public class MediaWindow2 implements IMusicView { if (mWindowCurrTime != null) { mWindowCurrTime.setText(Utils.calculateTime((int) mMediaInfoData.getCurTime())); } + + if( mMediaInfoData.getPlayState() == MusicConstant.PLAY_STATE_PLAYING) { + // kw音乐做的容错 + if (mWindowPlayPause != null) { + mWindowPlayPause.setImageResource(R.drawable.module_media_window_pop_play); + } + if (mCircleImg != null) { + mCircleImg.startAnim(); + } + } } if (mCircleImg != null) { @@ -221,6 +231,8 @@ public class MediaWindow2 implements IMusicView { if (mCircleImg != null) { mCircleImg.stopAnim(); } + + } @Override @@ -253,11 +265,8 @@ public class MediaWindow2 implements IMusicView { } } - private void openAqtApp() { - try { - LaunchUtils.launchByPkg(mContext, "com.tencent.wecarflow"); - } catch (Exception e) { - e.printStackTrace(); - } + @Override + public void onAppExit() { + mWindowView.setVisibility(View.GONE); } } diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerInfoView.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerInfoView.java index d564a1757d..d5195bf069 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerInfoView.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerInfoView.java @@ -135,6 +135,9 @@ public class MapMarkerInfoView extends MapMarkerBaseView { case MarkerPoiTypeEnum.FOURS_LIVING: ivIcon.setImageResource( R.drawable.icon_map_marker_living_light ); break; + case MarkerPoiTypeEnum.ILLEGAL_PARK_LIVING: + ivIcon.setImageResource( R.drawable.module_service_ic_rc_illegal_park_light ); + break; default: ivIcon.setImageResource( R.drawable.icon_map_marker_road_block_up2_light ); break; diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerView.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerView.java index 1c83655149..9b7153b574 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerView.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerView.java @@ -101,6 +101,9 @@ public class MapMarkerView extends MapMarkerBaseView { case MarkerPoiTypeEnum.FOURS_LIVING: ivIcon.setImageResource( R.drawable.icon_map_marker_living ); break; + case MarkerPoiTypeEnum.ILLEGAL_PARK_LIVING: + ivIcon.setImageResource( R.drawable.module_service_ic_rc_illegal_park ); + break; case MarkerPoiTypeEnum.FOURS_PARKING: default: ivIcon.setImageResource( R.drawable.icon_map_marker_road_block_up2 ); diff --git a/modules/mogo-module-service/src/main/res/drawable/module_service_ic_rc_illegal_park.png b/modules/mogo-module-service/src/main/res/drawable/module_service_ic_rc_illegal_park.png new file mode 100644 index 0000000000..6e1443d3b4 Binary files /dev/null and b/modules/mogo-module-service/src/main/res/drawable/module_service_ic_rc_illegal_park.png differ diff --git a/modules/mogo-module-service/src/main/res/drawable/module_service_ic_rc_illegal_park_light.png b/modules/mogo-module-service/src/main/res/drawable/module_service_ic_rc_illegal_park_light.png new file mode 100644 index 0000000000..116f5ffb1a Binary files /dev/null and b/modules/mogo-module-service/src/main/res/drawable/module_service_ic_rc_illegal_park_light.png differ