|
@@ -40,7 +40,6 @@ public class PreviewActivity extends BaseActivity<ActivityPreviewBinding> {
|
|
|
public static final int TYPE_AUDIO = 3;
|
|
public static final int TYPE_AUDIO = 3;
|
|
|
private PreviewViewModel previewViewModel;
|
|
private PreviewViewModel previewViewModel;
|
|
|
private MediaPlayer mediaPlayer;
|
|
private MediaPlayer mediaPlayer;
|
|
|
- private boolean isSurfaceCreated;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private CommonSureDialog showTrialExportFailDialog;
|
|
private CommonSureDialog showTrialExportFailDialog;
|
|
@@ -100,9 +99,15 @@ public class PreviewActivity extends BaseActivity<ActivityPreviewBinding> {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
private void initObserver() {
|
|
private void initObserver() {
|
|
|
- previewViewModel.getSeekBarProgress().observe(this, process -> {
|
|
|
|
|
- mediaPlayer.seekTo(BoxingUtil.boxing(process));
|
|
|
|
|
|
|
+ previewViewModel.getClickMediaPlayerEvent().observe(this, o -> {
|
|
|
|
|
+ if (mediaPlayer.isPlaying()) {
|
|
|
|
|
+ mediaPlayer.pause();
|
|
|
|
|
+ } else {
|
|
|
|
|
+ mediaPlayer.start();
|
|
|
|
|
+ }
|
|
|
|
|
+ previewViewModel.setIsPlaying(mediaPlayer.isPlaying());
|
|
|
});
|
|
});
|
|
|
|
|
+ previewViewModel.getSeekBarProgress().observe(this, process -> mediaPlayer.seekTo(BoxingUtil.boxing(process)));
|
|
|
previewViewModel.getShowFreeStopDialog().observe(this, o -> {
|
|
previewViewModel.getShowFreeStopDialog().observe(this, o -> {
|
|
|
if (mediaPlayer.isPlaying()) {
|
|
if (mediaPlayer.isPlaying()) {
|
|
|
mediaPlayer.pause();
|
|
mediaPlayer.pause();
|
|
@@ -110,9 +115,7 @@ public class PreviewActivity extends BaseActivity<ActivityPreviewBinding> {
|
|
|
previewViewModel.setIsPlaying(false);
|
|
previewViewModel.setIsPlaying(false);
|
|
|
showFreeStopDialog();
|
|
showFreeStopDialog();
|
|
|
});
|
|
});
|
|
|
- previewViewModel.getHandlePlayProgress().observe(this, o -> {
|
|
|
|
|
- previewViewModel.handleMediaPlayerProgress(mediaPlayer.getCurrentPosition());
|
|
|
|
|
- });
|
|
|
|
|
|
|
+ previewViewModel.getHandlePlayProgress().observe(this, o -> previewViewModel.handleMediaPlayerProgress(mediaPlayer.getCurrentPosition()));
|
|
|
previewViewModel.getRefreshAudioCurrentProgress().observe(this, o -> binding.previewAudioSeekbar.setProgress(mediaPlayer.getCurrentPosition()));
|
|
previewViewModel.getRefreshAudioCurrentProgress().observe(this, o -> binding.previewAudioSeekbar.setProgress(mediaPlayer.getCurrentPosition()));
|
|
|
previewViewModel.getShowTrialExportFailDialog().observe(this, o -> showTrialExportFailDialog());
|
|
previewViewModel.getShowTrialExportFailDialog().observe(this, o -> showTrialExportFailDialog());
|
|
|
}
|
|
}
|
|
@@ -189,25 +192,6 @@ public class PreviewActivity extends BaseActivity<ActivityPreviewBinding> {
|
|
|
private void initView() {
|
|
private void initView() {
|
|
|
binding.previewHeader.setNavigationOnClickListener(v -> finish());
|
|
binding.previewHeader.setNavigationOnClickListener(v -> finish());
|
|
|
addTopStatusBarHeight(binding.previewHeader);
|
|
addTopStatusBarHeight(binding.previewHeader);
|
|
|
- binding.previewVideoContainer.setOnClickListener(v -> {
|
|
|
|
|
- if (isSurfaceCreated) {
|
|
|
|
|
- previewViewModel.setIsPlayStart();
|
|
|
|
|
- if (mediaPlayer.isPlaying()) {
|
|
|
|
|
- mediaPlayer.pause();
|
|
|
|
|
- } else {
|
|
|
|
|
- mediaPlayer.start();
|
|
|
|
|
- }
|
|
|
|
|
- previewViewModel.setIsPlaying(mediaPlayer.isPlaying());
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
- binding.previewAudioPlay.setOnClickListener(v -> {
|
|
|
|
|
- if (mediaPlayer.isPlaying()) {
|
|
|
|
|
- mediaPlayer.pause();
|
|
|
|
|
- } else {
|
|
|
|
|
- mediaPlayer.start();
|
|
|
|
|
- }
|
|
|
|
|
- previewViewModel.setIsPlaying(mediaPlayer.isPlaying());
|
|
|
|
|
- });
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
private void initImagePreviewPager() {
|
|
private void initImagePreviewPager() {
|
|
@@ -225,11 +209,12 @@ public class PreviewActivity extends BaseActivity<ActivityPreviewBinding> {
|
|
|
|
|
|
|
|
private void initSurfaceView() {
|
|
private void initSurfaceView() {
|
|
|
SurfaceHolder holder = binding.previewVideo.getHolder();
|
|
SurfaceHolder holder = binding.previewVideo.getHolder();
|
|
|
|
|
+ previewViewModel.setSurfaceCreated(false);
|
|
|
holder.addCallback(new SurfaceHolder.Callback() {
|
|
holder.addCallback(new SurfaceHolder.Callback() {
|
|
|
@Override
|
|
@Override
|
|
|
public void surfaceCreated(@NonNull SurfaceHolder holder) {
|
|
public void surfaceCreated(@NonNull SurfaceHolder holder) {
|
|
|
mediaPlayer.setDisplay(holder);
|
|
mediaPlayer.setDisplay(holder);
|
|
|
- isSurfaceCreated = true;
|
|
|
|
|
|
|
+ previewViewModel.setSurfaceCreated(true);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|