diff --git a/.idea/misc.xml b/.idea/misc.xml
index 8a8f75bfe2..703e5d4b89 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -5,7 +5,7 @@
-
+
diff --git a/modules/mogo-module-tanlu/build.gradle b/modules/mogo-module-tanlu/build.gradle
index 6bb1edb229..620e6b9d36 100644
--- a/modules/mogo-module-tanlu/build.gradle
+++ b/modules/mogo-module-tanlu/build.gradle
@@ -63,6 +63,7 @@ dependencies {
implementation 'com.shuyu:gsyVideoPlayer-armv7a:7.1.1'
implementation 'com.shuyu:gsyVideoPlayer-arm64:7.1.1'
implementation 'com.shuyu:gsyVideoPlayer-java:7.1.1'
+ implementation 'org.greenrobot:eventbus:3.1.1'
}
apply from: new File(rootProject.rootDir, "gradle/upload.gradle").toString()
diff --git a/modules/mogo-module-tanlu/src/main/AndroidManifest.xml b/modules/mogo-module-tanlu/src/main/AndroidManifest.xml
index c910375626..ec531bc01c 100644
--- a/modules/mogo-module-tanlu/src/main/AndroidManifest.xml
+++ b/modules/mogo-module-tanlu/src/main/AndroidManifest.xml
@@ -7,6 +7,13 @@
android:hardwareAccelerated="true">
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/modules/mogo-module-tanlu/src/main/java/com/mogo/tanlu/fragment/TanluCardViewFragment.java b/modules/mogo-module-tanlu/src/main/java/com/mogo/tanlu/fragment/TanluCardViewFragment.java
index 5c6975ad1d..e7ffb1f930 100644
--- a/modules/mogo-module-tanlu/src/main/java/com/mogo/tanlu/fragment/TanluCardViewFragment.java
+++ b/modules/mogo-module-tanlu/src/main/java/com/mogo/tanlu/fragment/TanluCardViewFragment.java
@@ -1,6 +1,7 @@
package com.mogo.tanlu.fragment;
import android.graphics.Bitmap;
+import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.text.Html;
import android.view.MotionEvent;
@@ -22,6 +23,7 @@ import com.mogo.map.location.MogoLocation;
import com.mogo.map.marker.IMogoMarker;
import com.mogo.map.marker.IMogoMarkerClickListener;
import com.mogo.map.marker.IMogoMarkerManager;
+import com.mogo.map.marker.MogoMarkerOptions;
import com.mogo.map.model.MogoPoi;
import com.mogo.map.search.geo.MogoPoiItem;
import com.mogo.map.search.poisearch.IMogoPoiSearchListener;
@@ -34,6 +36,7 @@ import com.mogo.service.imageloader.IMogoImageloader;
import com.mogo.service.map.IMogoMapService;
import com.mogo.service.module.IMogoModuleLifecycle;
import com.mogo.tanlu.R;
+import com.mogo.tanlu.model.event.MarkerInfo;
import com.mogo.tanlu.video.FullMediaActivity;
import com.mogo.tanlu.video.SimpleCoverVideoPlayer;
import com.mogo.tanlu.view.AutoZoomInImageView;
@@ -41,6 +44,10 @@ import com.mogo.utils.TipToast;
import com.mogo.utils.logger.Logger;
import com.shuyu.gsyvideoplayer.builder.GSYVideoOptionBuilder;
+import org.greenrobot.eventbus.EventBus;
+import org.greenrobot.eventbus.Subscribe;
+import org.greenrobot.eventbus.ThreadMode;
+
import java.util.ArrayList;
import java.util.List;
@@ -135,9 +142,9 @@ public class TanluCardViewFragment extends MvpFragment>
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
getViewLifecycleOwner().getLifecycle().addObserver(mPresenter);
+ EventBus.getDefault().register(this);
}
-
/**
* TODO
*
@@ -173,11 +180,12 @@ public class TanluCardViewFragment extends MvpFragment>
@Override
public void onFailure(Exception e) {
- Logger.e(TAG, "onFailure -----E->" + e);
+ Logger.e(TAG, "onFailure ------>" + e);
}
});
} else if (id == R.id.tv_main_empty) { //TODO 上报路况,逻辑
Logger.d(TAG, "tv_main_empty click -----> ");
+
}
}
@@ -260,12 +268,10 @@ public class TanluCardViewFragment extends MvpFragment>
mogoImageloader.downloadImage(getActivity(), thumbnailUrl, new IMogoImageLoaderListener() {
@Override
public void onStart() {
- Logger.d(TAG, "onStart ------>");
}
@Override
public void onCompleted(Bitmap bitmap) {
- Logger.d(TAG, "onCompleted ------>");
autoZoomInImageView.setImageBitmap(bitmap);
//动画
handleImageAnimation();
@@ -273,7 +279,7 @@ public class TanluCardViewFragment extends MvpFragment>
@Override
public void onFailure(Exception e) {
- Logger.e(TAG, "onFailure -----E->" + e);
+ Logger.e(TAG, "onFailure ------>" + e);
}
});
}
@@ -404,10 +410,51 @@ public class TanluCardViewFragment extends MvpFragment>
@Override
public void onDestroyView() {
super.onDestroyView();
+ EventBus.getDefault().unregister(this);
getViewLifecycleOwner().getLifecycle().removeObserver(mPresenter);
TanluServiceHandler.getLocationClient().removeLocationListener(this);
}
+
+ private Bitmap mMarkerIcon;
+
+ /**
+ * 接收到对应数据打点
+ *
+ * @param event
+ */
+ @Subscribe(threadMode = ThreadMode.MAIN)
+ public void onMarkerInfo(final MarkerInfo event) {
+ mMarkerIcon = BitmapFactory.decodeResource( getResources(), R.drawable.ic_search_poi_location );
+ mogoImageloader.downloadImage(getActivity(), event.imageUrl, new IMogoImageLoaderListener() {
+ @Override
+ public void onStart() {
+ Logger.d(TAG, "onMarkerInfo onStart ------>");
+ }
+
+ @Override
+ public void onCompleted(Bitmap bitmap) {
+ Logger.d(TAG, "onMarkerInfo onCompleted ------>");
+ MogoMarkerOptions options = new MogoMarkerOptions()
+ .icon(mMarkerIcon)
+ .latitude(event.lat)
+ .owner("tag")
+ .longitude(event.lon);
+
+ mMogoMapService = (IMogoMapService) ARouter.getInstance().build(MogoServicePaths.PATH_SERVICES_MAP).navigation(getContext());
+ mMarkerManager = mMogoMapService.getMarkerManager(getContext());
+ IMogoMarker marker = mMarkerManager.addMarker("tag", options);
+ }
+
+ @Override
+ public void onFailure(Exception e) {
+ Logger.e(TAG, "onMarkerInfo onFailure -----E->" + e);
+ }
+ });
+
+ }
+
+
}
diff --git a/modules/mogo-module-tanlu/src/main/java/com/mogo/tanlu/model/event/MarkerInfo.java b/modules/mogo-module-tanlu/src/main/java/com/mogo/tanlu/model/event/MarkerInfo.java
new file mode 100644
index 0000000000..2676f0cd80
--- /dev/null
+++ b/modules/mogo-module-tanlu/src/main/java/com/mogo/tanlu/model/event/MarkerInfo.java
@@ -0,0 +1,23 @@
+package com.mogo.tanlu.model.event;
+
+import java.io.Serializable;
+
+/**
+ * @author lixiaopeng
+ * @description marker数据
+ * @since 2020-01-08
+ */
+public class MarkerInfo implements Serializable {
+ public int type; //封路,还是上报
+ public String imageUrl;
+ public Long lon; //经度
+ public Long lat; //纬度
+
+ public MarkerInfo(int type, String imageUrl, Long lon, Long lat) {
+ this.type = type;
+ this.imageUrl = imageUrl;
+ this.lon = lon;
+ this.lat = lat;
+ }
+
+}
diff --git a/modules/mogo-module-tanlu/src/main/java/com/mogo/tanlu/receiver/MarkerInfoReceiver.kt b/modules/mogo-module-tanlu/src/main/java/com/mogo/tanlu/receiver/MarkerInfoReceiver.kt
new file mode 100644
index 0000000000..8ea58db2d3
--- /dev/null
+++ b/modules/mogo-module-tanlu/src/main/java/com/mogo/tanlu/receiver/MarkerInfoReceiver.kt
@@ -0,0 +1,23 @@
+package com.mogo.tanlu.receiver
+
+import android.content.BroadcastReceiver
+import android.content.Context
+import android.content.Intent
+import android.util.Log
+import com.mogo.tanlu.model.event.MarkerInfo
+import org.greenrobot.eventbus.EventBus
+
+/**
+ * marker数据接收
+ */
+class MarkerInfoReceiver : BroadcastReceiver() {
+ override fun onReceive(context: Context, intent: Intent) {
+ if (intent.action == "com.zhidao.roadcondition.marker.info"){
+ var imageUrl = intent.getStringExtra("imageUrl")
+ var lat = intent.getLongExtra("lat",0)
+ var lon = intent.getLongExtra("lon",0) //经度
+ Log.d("MarkerInfoReceiver", "imageUrl = $imageUrl ---->lat = $lat ---->lon = $lon")
+ EventBus.getDefault().post(MarkerInfo(1, imageUrl, lon, lat))
+ }
+ }
+}