Commit 771875a105d3114ee5987158ae099e95fae22ff3

Authored by 韩亚云
1 parent af53ca93

视频预览测试优化

cloud/video/src/main/java/com/libs/video/video/exoplayer/play/CNVideoView.java
... ... @@ -12,6 +12,7 @@ import android.os.Build;
12 12 import android.os.Parcelable;
13 13 import android.text.TextUtils;
14 14 import android.util.AttributeSet;
  15 +import android.util.Log;
15 16 import android.view.Gravity;
16 17 import android.view.View;
17 18 import android.view.ViewGroup;
... ... @@ -205,6 +206,7 @@ public class CNVideoView<P extends AbstractPlayer> extends FrameLayout
205 206 */
206 207 @Override
207 208 public void start() {
  209 + Log.e("ssss", "startPlay: ");
208 210 boolean isStarted = false;
209 211 if (isInIdleState() || isInStartAbortState()) {
210 212 isStarted = startPlay();
... ...
core/app_qr/build.gradle
... ... @@ -5,14 +5,15 @@ android {
5 5 // buildToolsVersion "29.0.2"
6 6 //
7 7 //
8   -// defaultConfig {
9   -// minSdkVersion 16
10   -// targetSdkVersion 29
11   -// versionCode 1
12   -// versionName "1.0"
13   -// testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
14   -// consumerProguardFiles 'consumer-rules.pro'
15   -// }
  8 + defaultConfig {
  9 + minSdkVersion 16
  10 + targetSdkVersion 29
  11 + versionCode 1
  12 + versionName "1.0"
  13 + ndk {
  14 + abiFilters "armeabi-v7a" // 指定要ndk需要兼容的架构(这样其他依赖包里mips,x86,armeabi,arm-v8之类的so会被过滤掉)
  15 + }
  16 + }
16 17  
17 18 buildTypes {
18 19 release {
... ...
core/imageload/src/main/java/com/cnlive/core/imagepreview/ImagePreView.java
... ... @@ -172,11 +172,13 @@ public class ImagePreView extends FrameLayout implements ViewPager.OnPageChangeL
172 172 }
173 173  
174 174 private void startPlay(int position) {
  175 + Log.e(TAG, "startPlay: release");
175 176 videoView.release();
176 177 PlayerUtils.removeViewFormParent(videoView);
177 178 if(mSourceList.get(position).getType() == 1){
178 179  
179   - }else if(mSourceList.get(position).getType() == 2){
  180 + }else if(mSourceList.get(position).getType() == 2 && getCurrentItem().getImageView() == null){
  181 + Log.e(TAG, "startPlay: "+position);
180 182 getCurrentItem().removeAllViews();
181 183 getCurrentItem().addView(videoView);
182 184 videoView.setUrl("http://ffyl.vods2.cnlive.com/223/vod/2018/1120/223_88c98ab1395f4762b703fbdd9d59d2e5/ff80808166c2a45201672f14a9933131_800.m3u8");
... ... @@ -192,7 +194,7 @@ public class ImagePreView extends FrameLayout implements ViewPager.OnPageChangeL
192 194 }
193 195 for (int i = 0, len = list.size(); i < len; i++) {
194 196 ViewData vd = new ViewData(list.get(i));
195   - if (i == 0){
  197 + if (i == 0 || i == 2){
196 198 vd.setType(2);
197 199 }else {
198 200 vd.setType(1);
... ... @@ -565,11 +567,24 @@ public class ImagePreView extends FrameLayout implements ViewPager.OnPageChangeL
565 567 }
566 568 });
567 569 }else if(mSourceList.get(position).getType() == 2){
  570 + if(drawee.getImageView() == null){
  571 + videoView.setOnLongClickListener(new OnLongClickListener() {
  572 + @Override
  573 + public boolean onLongClick(View view) {
  574 + if (!hasAnimRunning && mItemLongPressListener != null) {
  575 + return mItemLongPressListener.onItemLongPress(position, videoView);
  576 + }
  577 + return false;
  578 + }
  579 + });
  580 + }
568 581 playEnterAnim = false;
569 582 playExitAnim = false;
570 583 draggable = false;
571   - videoView.setUrl("http://ffyl.vods2.cnlive.com/223/vod/2018/1120/223_88c98ab1395f4762b703fbdd9d59d2e5/ff80808166c2a45201672f14a9933131_800.m3u8");
572   - videoView.start();
  584 + if(position == 0){
  585 + videoView.setUrl("http://ffyl.vods2.cnlive.com/223/vod/2018/1120/223_88c98ab1395f4762b703fbdd9d59d2e5/ff80808166c2a45201672f14a9933131_800.m3u8");
  586 + videoView.start();
  587 + }
573 588 }
574 589 }
575 590  
... ...
core/imageload/src/main/java/com/cnlive/core/imagepreview/listener/OnItemLongPressListener.java
1 1 package com.cnlive.core.imagepreview.listener;
2 2  
3   -import android.widget.ImageView;
  3 +import android.view.View;
4 4  
5 5 /**
6 6 * 图片长按
... ... @@ -9,5 +9,5 @@ import android.widget.ImageView;
9 9 */
10 10 public interface OnItemLongPressListener {
11 11  
12   - boolean onItemLongPress(int position, ImageView imageView);
  12 + boolean onItemLongPress(int position, View imageView);
13 13 }
... ...
core/imageload/src/main/java/com/cnlive/core/ui/view/PreViewImageView.java
... ... @@ -132,7 +132,7 @@ public class PreViewImageView extends BaseView {
132 132 activity.binding.imagePre.watch(activity.position);
133 133 activity.binding.imagePre.setOnItemLongPressListener(new OnItemLongPressListener() {
134 134 @Override
135   - public boolean onItemLongPress(int position, ImageView imageView) {
  135 + public boolean onItemLongPress(int position, View imageView) {
136 136 if(activity.data.isShowDialog()){
137 137 activity.requestPermission(String.valueOf(R.string.dialog_imagepicker_permission_save_pic),new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, new OnPermissionResponseListener() {
138 138 @Override
... ...