diff --git a/.idea/gradle.xml b/.idea/gradle.xml
index 22d04a33fd..ad82747b49 100644
--- a/.idea/gradle.xml
+++ b/.idea/gradle.xml
@@ -4,7 +4,7 @@
diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/notice/NoticeTrafficAdapter.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/notice/NoticeTrafficAdapter.java
index 0652564d19..6bcfe25e95 100644
--- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/notice/NoticeTrafficAdapter.java
+++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/notice/NoticeTrafficAdapter.java
@@ -61,8 +61,8 @@ class NoticeTrafficAdapter extends RecyclerView.Adapter {
@Override
public int getItemCount() {
- Log.d(TAG, String.valueOf(data.size()));
- return 9;
+ Log.d(TAG, "getItemCount++" + String.valueOf(data.size()));
+ return data.size();
}
public class TrafficInfoHolder extends RecyclerView.ViewHolder {
diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/notice/NoticeTrafficDialog.java b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/notice/NoticeTrafficDialog.java
index 086d052c04..98784f5667 100644
--- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/notice/NoticeTrafficDialog.java
+++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/notice/NoticeTrafficDialog.java
@@ -17,11 +17,9 @@ import com.mogo.eagle.core.data.notice.NoticeTrafficStyleInfo;
import com.mogo.eagle.core.data.notice.NoticeTrafficStylePushData;
import com.mogo.eagle.core.data.notice.NoticeValue;
import com.mogo.eagle.core.function.api.notice.NoticeNetCallBack;
-import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotManager;
import com.mogo.eagle.core.function.call.notice.CallerNoticeManager;
import com.mogo.eagle.core.function.hmi.R;
import com.mogo.eagle.core.widget.media.video.NoticeSimpleSmallVideoPlayer;
-import com.mogo.eagle.core.widget.media.video.NoticeSimpleVideoPlayer;
import com.mogo.module.common.MogoApisHandler;
import com.mogo.module.common.dialog.BaseFloatDialog;
import com.mogo.service.imageloader.MogoImageView;
@@ -30,6 +28,7 @@ import com.shuyu.gsyvideoplayer.GSYVideoManager;
import com.mogo.utils.DateTimeUtils;
import com.shuyu.gsyvideoplayer.builder.GSYVideoOptionBuilder;
import com.shuyu.gsyvideoplayer.listener.VideoAllCallBack;
+import com.shuyu.gsyvideoplayer.utils.NetworkUtils;
import com.shuyu.gsyvideoplayer.video.base.GSYVideoView;
import java.util.ArrayList;
@@ -43,7 +42,7 @@ public class NoticeTrafficDialog extends BaseFloatDialog {
private String TAG = "AINotice";
private Context mContext;
private RecyclerView mRecyclerView;
- private NoticeSimpleVideoPlayer mVideoPlayer;
+ private NoticeSimpleSmallVideoPlayer mVideoPlayer;
private NoticeTrafficStylePushData mPushData;
private ImageView close;
private ImageView playImageView;
@@ -51,6 +50,7 @@ public class NoticeTrafficDialog extends BaseFloatDialog {
private GSYVideoOptionBuilder gsyVideoOptionBuilder = new GSYVideoOptionBuilder();
private TextView accept;//接受
private TextView refuse;//拒绝
+ private TextView connect;//连接
private NoticeTrafficAdapter adapter;
private ArrayList dataArrayList = new ArrayList();
private NoticeTrafficStyleInfo mTrafficStyleInfo;
@@ -72,6 +72,7 @@ public class NoticeTrafficDialog extends BaseFloatDialog {
playerShow();//视频播放器
recyclerVie();//详情信息列表
otherFunctionButton();
+ netWorkStatus();
}
/**
@@ -133,6 +134,7 @@ public class NoticeTrafficDialog extends BaseFloatDialog {
private void otherFunctionButton() {
accept = findViewById(R.id.accept_traffic);
refuse = findViewById(R.id.refuse_traffic);
+ connect = findViewById(R.id.notice_connect);
accept.setOnClickListener(v -> {
feedBackTraffic(1);
});
@@ -140,7 +142,9 @@ public class NoticeTrafficDialog extends BaseFloatDialog {
feedBackTraffic(0);
});
//重新连接
- findViewById(R.id.notice_connect).setOnClickListener(v -> {
+ connect.setOnClickListener(v -> {
+ netWorkStatus();
+ startLive();
requestTrafficInfo();
});
requestTrafficInfo();
@@ -155,6 +159,7 @@ public class NoticeTrafficDialog extends BaseFloatDialog {
if (i == 1) {
startAutoPilot();
}
+ dismiss();
}
@@ -174,6 +179,175 @@ public class NoticeTrafficDialog extends BaseFloatDialog {
parameters.endLatLon = endLocation;
}
+ /**
+ * 暂停
+ */
+ private void pause() {
+ playImageView.setVisibility(View.VISIBLE);
+ thumbnailImage.setVisibility(View.GONE);
+ playImageView.setOnClickListener(v -> {
+ mVideoPlayer.onVideoResume();
+ });
+ thumbnailImage.setOnClickListener(v -> {
+ mVideoPlayer.onVideoResume();
+ });
+ }
+
+ /**
+ * 继续
+ */
+ private void resume() {
+ playImageView.setImageResource(R.drawable.notice_video_pause);
+ playImageView.setVisibility(View.GONE);
+ thumbnailImage.setVisibility(View.GONE);
+ }
+
+ /**
+ * 播放结束后
+ */
+ private void complete(Bitmap firstbitmap) {
+ thumbnailImage.setVisibility(View.VISIBLE);
+ thumbnailImage.setImageBitmap(firstbitmap);
+ playImageView.setImageResource(R.drawable.notice_video_play);
+ playImageView.setVisibility(View.VISIBLE);
+ playImageView.setOnClickListener(v -> {
+ startLive();
+ });
+ thumbnailImage.setOnClickListener(v -> {
+ startLive();
+ });
+ }
+
+ /**
+ * 视频播放
+ */
+ private void startLive() {
+ if (mPushData != null) {
+ try {
+ Log.d(TAG, "交警事故开始播放视频startLive");
+ String videoUrl = mPushData.getPoiImgUrl();
+ gsyVideoOptionBuilder.setUrl(videoUrl).setCacheWithPlay(false).setPlayTag("NoticeTrafficDialog")
+ .build(mVideoPlayer);
+ mVideoPlayer.getStartButton().performClick();
+ liveCallBack();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ private void liveCallBack() {
+ new Thread(new Runnable() {
+ @Override
+ public void run() {
+ Bitmap firstBitmap = BitmapHelper.getVideoThumbnail(mPushData.getPoiImgUrl());/*获取第一帧图*/
+ mVideoPlayer.setVideoAllCallBack(new VideoAllCallBack() {
+ @Override
+ public void onAutoComplete(String url, Object... objects) {
+ complete(firstBitmap);
+ }
+
+ @Override
+ public void onClickResume(String url, Object... objects) {
+ thumbnailImage.setVisibility(View.GONE);
+ playImageView.setVisibility(View.GONE);
+ }
+
+ @Override
+ public void onClickStop(String url, Object... objects) {
+ Log.d(TAG, "onClickStop");
+ }
+
+ @Override
+ public void onStartPrepared(String url, Object... objects) {
+ Log.d(TAG, "onStartPrepared");
+ }
+
+ @Override
+ public void onPrepared(String url, Object... objects) {
+ Log.d(TAG, "onPrepared");
+ }
+
+ @Override
+ public void onClickStartIcon(String url, Object... objects) {
+ Log.d(TAG, "onClickStartIcon");
+ }
+
+ @Override
+ public void onClickStartError(String url, Object... objects) {
+ Log.d(TAG, "onClickStartError");
+ }
+
+ @Override
+ public void onClickStopFullscreen(String url, Object... objects) {
+ Log.d(TAG, "onClickStopFullscreen");
+ }
+
+ @Override
+ public void onClickResumeFullscreen(String url, Object... objects) {
+ }
+
+ @Override
+ public void onClickSeekbar(String url, Object... objects) {
+ }
+
+ @Override
+ public void onClickSeekbarFullscreen(String url, Object... objects) {
+ }
+
+ @Override
+ public void onEnterFullscreen(String url, Object... objects) {
+ }
+
+ @Override
+ public void onQuitFullscreen(String url, Object... objects) {
+ }
+
+ @Override
+ public void onQuitSmallWidget(String url, Object... objects) {
+ }
+
+ @Override
+ public void onEnterSmallWidget(String url, Object... objects) {
+ }
+
+ @Override
+ public void onTouchScreenSeekVolume(String url, Object... objects) {
+ }
+
+ @Override
+ public void onTouchScreenSeekPosition(String url, Object... objects) {
+ }
+
+ @Override
+ public void onTouchScreenSeekLight(String url, Object... objects) {
+ }
+
+ @Override
+ public void onPlayError(String url, Object... objects) {
+ thumbnailImage.setVisibility(View.VISIBLE);
+ connect.setVisibility(View.VISIBLE);
+ Log.d(TAG, "onPlayError");
+ }
+
+ @Override
+ public void onClickStartThumb(String url, Object... objects) {
+ }
+
+ @Override
+ public void onClickBlank(String url, Object... objects) {
+ }
+
+ @Override
+ public void onClickBlankFullscreen(String url, Object... objects) {
+ Log.d(TAG, "onClickBlankFullscreen");
+
+ }
+ });
+ }
+ }).start();
+ }
+
/**
* 获取交通事故详情
*/
@@ -246,170 +420,18 @@ public class NoticeTrafficDialog extends BaseFloatDialog {
}
/**
- * 暂停
+ * 判断网络状态
*/
- private void pause() {
- playImageView.setVisibility(View.VISIBLE);
- thumbnailImage.setVisibility(View.GONE);
- playImageView.setOnClickListener(v -> {
- mVideoPlayer.onVideoResume();
- });
- thumbnailImage.setOnClickListener(v -> {
- mVideoPlayer.onVideoResume();
- });
- }
-
- /**
- * 继续
- */
- private void resume() {
- playImageView.setImageResource(R.drawable.notice_video_pause);
- playImageView.setVisibility(View.GONE);
- thumbnailImage.setVisibility(View.GONE);
- }
-
- /**
- * 播放结束后
- */
- private void complete(Bitmap firstbitmap) {
- thumbnailImage.setVisibility(View.VISIBLE);
- thumbnailImage.setImageBitmap(firstbitmap);
- playImageView.setImageResource(R.drawable.notice_video_play);
- playImageView.setVisibility(View.VISIBLE);
- playImageView.setOnClickListener(v -> {
- startLive();
- });
- thumbnailImage.setOnClickListener(v -> {
- startLive();
- });
- }
-
- /**
- * 视频播放
- */
- private void startLive() {
- if (mPushData != null) {
- try {
- Log.d(TAG, "交警事故开始播放视频startLive");
- String videoUrl = mPushData.getPoiImgUrl();
- gsyVideoOptionBuilder.setUrl(videoUrl).setCacheWithPlay(false).setPlayTag("NoticeTrafficDialog")
- .build(mVideoPlayer);
- mVideoPlayer.getStartButton().performClick();
- thumbnailImage.setVisibility(View.GONE);
- playImageView.setVisibility(View.GONE);
- liveCallBack();
- } catch (Exception e) {
- e.printStackTrace();
- }
+ private void netWorkStatus(){
+ if (NetworkUtils.isAvailable(getContext())) {
+ Log.d(TAG, "网络可用");
+ thumbnailImage.setVisibility(View.GONE);
+ connect.setVisibility(View.GONE);
+ } else {
+ thumbnailImage.setVisibility(View.VISIBLE);
+ connect.setVisibility(View.VISIBLE);
}
}
-
- private void liveCallBack() {
- new Thread(new Runnable() {
- @Override
- public void run() {
- Bitmap firstBitmap = BitmapHelper.getVideoThumbnail(mPushData.getPoiImgUrl());/*获取第一帧图*/
- mVideoPlayer.setVideoAllCallBack(new VideoAllCallBack() {
- @Override
- public void onAutoComplete(String url, Object... objects) {
- complete(firstBitmap);
- }
-
- @Override
- public void onClickResume(String url, Object... objects) {
- thumbnailImage.setVisibility(View.GONE);
- playImageView.setVisibility(View.GONE);
- }
-
- @Override
- public void onClickStop(String url, Object... objects) {
- Log.d(TAG, "onClickStop");
- }
-
- @Override
- public void onStartPrepared(String url, Object... objects) {
- Log.d(TAG, "onStartPrepared");
- }
-
- @Override
- public void onPrepared(String url, Object... objects) {
- }
-
- @Override
- public void onClickStartIcon(String url, Object... objects) {
- }
-
- @Override
- public void onClickStartError(String url, Object... objects) {
- }
-
- @Override
- public void onClickStopFullscreen(String url, Object... objects) {
- }
-
- @Override
- public void onClickResumeFullscreen(String url, Object... objects) {
- }
-
- @Override
- public void onClickSeekbar(String url, Object... objects) {
- }
-
- @Override
- public void onClickSeekbarFullscreen(String url, Object... objects) {
- }
-
- @Override
- public void onEnterFullscreen(String url, Object... objects) {
- }
-
- @Override
- public void onQuitFullscreen(String url, Object... objects) {
- }
-
- @Override
- public void onQuitSmallWidget(String url, Object... objects) {
- }
-
- @Override
- public void onEnterSmallWidget(String url, Object... objects) {
- }
-
- @Override
- public void onTouchScreenSeekVolume(String url, Object... objects) {
- }
-
- @Override
- public void onTouchScreenSeekPosition(String url, Object... objects) {
- }
-
- @Override
- public void onTouchScreenSeekLight(String url, Object... objects) {
- }
-
- @Override
- public void onPlayError(String url, Object... objects) {
-
- }
-
- @Override
- public void onClickStartThumb(String url, Object... objects) {
- }
-
- @Override
- public void onClickBlank(String url, Object... objects) {
- }
-
- @Override
- public void onClickBlankFullscreen(String url, Object... objects) {
- Log.d(TAG, "onClickBlankFullscreen");
-
- }
- });
- }
- }).start();
- }
-
public void cancel() {
}
diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/notice_dialog_traffic_police.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/notice_dialog_traffic_police.xml
index c0cf14de98..338b51b386 100644
--- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/notice_dialog_traffic_police.xml
+++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/notice_dialog_traffic_police.xml
@@ -31,7 +31,7 @@
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
-