From a321da4cccd5ff32860de988ed4d7cff9702bc3b Mon Sep 17 00:00:00 2001
From: chenxingwang <848864817@qq.com>
Date: Fri, 10 Apr 2020 15:00:12 +0800
Subject: [PATCH 01/11] =?UTF-8?q?=E4=BF=AE=E6=94=B9libary=E9=87=8C?=
=?UTF-8?q?=E7=9A=84=E6=B8=85=E6=99=B0=E5=BA=A6=E5=88=87=E6=8D=A2UI?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
library/src/main/java/cn/jzvd/JzvdStd.java | 12 ++++++------
.../src/main/res/anim/pop_from_bottom_anim_in.xml | 6 ++++++
.../src/main/res/anim/pop_from_bottom_anim_out.xml | 5 +++++
library/src/main/res/layout/jz_layout_clarity.xml | 7 ++++---
.../src/main/res/layout/jz_layout_clarity_item.xml | 5 ++---
library/src/main/res/layout/jz_layout_std.xml | 1 +
library/src/main/res/values/styles.xml | 5 ++++-
7 files changed, 28 insertions(+), 13 deletions(-)
create mode 100644 library/src/main/res/anim/pop_from_bottom_anim_in.xml
create mode 100644 library/src/main/res/anim/pop_from_bottom_anim_out.xml
diff --git a/library/src/main/java/cn/jzvd/JzvdStd.java b/library/src/main/java/cn/jzvd/JzvdStd.java
index fcdb63f9..7dc59d1b 100644
--- a/library/src/main/java/cn/jzvd/JzvdStd.java
+++ b/library/src/main/java/cn/jzvd/JzvdStd.java
@@ -347,13 +347,13 @@ public void onClick(View v) {
}
}
- clarityPopWindow = new PopupWindow(layout, LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, true);
+ clarityPopWindow = new PopupWindow(layout, JZUtils.dip2px(getContext(), 280), LayoutParams.MATCH_PARENT, true);
clarityPopWindow.setContentView(layout);
- clarityPopWindow.showAsDropDown(clarity);
- layout.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED);
- int offsetX = clarity.getMeasuredWidth() / 3;
- int offsetY = clarity.getMeasuredHeight() / 3;
- clarityPopWindow.update(clarity, -offsetX, -offsetY, Math.round(layout.getMeasuredWidth() * 2), layout.getMeasuredHeight());
+ clarityPopWindow.setAnimationStyle(R.style.pop_animation);
+ clarityPopWindow.showAtLocation(textureViewContainer, Gravity.END, 0, 0);
+// int offsetX = clarity.getMeasuredWidth() / 3;
+// int offsetY = clarity.getMeasuredHeight() / 3;
+// clarityPopWindow.update(clarity, -offsetX, -offsetY, Math.round(layout.getMeasuredWidth() * 2), layout.getMeasuredHeight());
} else if (i == R.id.retry_btn) {
if (jzDataSource.urlsMap.isEmpty() || jzDataSource.getCurrentUrl() == null) {
Toast.makeText(getContext(), getResources().getString(R.string.no_url), Toast.LENGTH_SHORT).show();
diff --git a/library/src/main/res/anim/pop_from_bottom_anim_in.xml b/library/src/main/res/anim/pop_from_bottom_anim_in.xml
new file mode 100644
index 00000000..7536a523
--- /dev/null
+++ b/library/src/main/res/anim/pop_from_bottom_anim_in.xml
@@ -0,0 +1,6 @@
+
+
+
diff --git a/library/src/main/res/anim/pop_from_bottom_anim_out.xml b/library/src/main/res/anim/pop_from_bottom_anim_out.xml
new file mode 100644
index 00000000..1ee5adde
--- /dev/null
+++ b/library/src/main/res/anim/pop_from_bottom_anim_out.xml
@@ -0,0 +1,5 @@
+
+
diff --git a/library/src/main/res/layout/jz_layout_clarity.xml b/library/src/main/res/layout/jz_layout_clarity.xml
index 7bded750..a56de17a 100644
--- a/library/src/main/res/layout/jz_layout_clarity.xml
+++ b/library/src/main/res/layout/jz_layout_clarity.xml
@@ -1,9 +1,10 @@
diff --git a/library/src/main/res/layout/jz_layout_clarity_item.xml b/library/src/main/res/layout/jz_layout_clarity_item.xml
index 440e148f..8d1847c8 100644
--- a/library/src/main/res/layout/jz_layout_clarity_item.xml
+++ b/library/src/main/res/layout/jz_layout_clarity_item.xml
@@ -1,13 +1,12 @@
\ No newline at end of file
+ android:textSize="26sp" />
\ No newline at end of file
diff --git a/library/src/main/res/layout/jz_layout_std.xml b/library/src/main/res/layout/jz_layout_std.xml
index 667077f0..3bfbd9a6 100644
--- a/library/src/main/res/layout/jz_layout_std.xml
+++ b/library/src/main/res/layout/jz_layout_std.xml
@@ -72,6 +72,7 @@
android:clickable="true"
android:paddingLeft="20dp"
android:text="clarity"
+
android:textAlignment="center"
android:textColor="#ffffff" />
diff --git a/library/src/main/res/values/styles.xml b/library/src/main/res/values/styles.xml
index bb42c91b..9b63137d 100644
--- a/library/src/main/res/values/styles.xml
+++ b/library/src/main/res/values/styles.xml
@@ -12,6 +12,9 @@
- @android:anim/fade_in
- @android:anim/fade_out
-
+
From a9986e6f8123abee1774c8c1063dcd6622296497 Mon Sep 17 00:00:00 2001
From: chenxingwang <848864817@qq.com>
Date: Fri, 10 Apr 2020 16:08:35 +0800
Subject: [PATCH 02/11] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=98=BE=E7=A4=BAUI?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
library/src/main/java/cn/jzvd/JzvdStd.java | 13 +++++--------
library/src/main/res/layout/jz_layout_clarity.xml | 2 +-
.../src/main/res/layout/jz_layout_clarity_item.xml | 9 ++++-----
3 files changed, 10 insertions(+), 14 deletions(-)
diff --git a/library/src/main/java/cn/jzvd/JzvdStd.java b/library/src/main/java/cn/jzvd/JzvdStd.java
index 7dc59d1b..d26828f9 100644
--- a/library/src/main/java/cn/jzvd/JzvdStd.java
+++ b/library/src/main/java/cn/jzvd/JzvdStd.java
@@ -233,7 +233,6 @@ public boolean onTouch(View v, MotionEvent event) {
if (id == R.id.surface_container) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
- break;
case MotionEvent.ACTION_MOVE:
break;
case MotionEvent.ACTION_UP:
@@ -304,6 +303,9 @@ public void onClick(View v) {
}
} else if (i == R.id.surface_container) {
startDismissControlViewTimer();
+ if (clarityPopWindow != null) {
+ clarityPopWindow.dismiss();
+ }
} else if (i == R.id.back) {
backPress();
} else if (i == R.id.back_tiny) {
@@ -347,7 +349,7 @@ public void onClick(View v) {
}
}
- clarityPopWindow = new PopupWindow(layout, JZUtils.dip2px(getContext(), 280), LayoutParams.MATCH_PARENT, true);
+ clarityPopWindow = new PopupWindow(layout, JZUtils.dip2px(getContext(), 250), LayoutParams.MATCH_PARENT, true);
clarityPopWindow.setContentView(layout);
clarityPopWindow.setAnimationStyle(R.style.pop_animation);
clarityPopWindow.showAtLocation(textureViewContainer, Gravity.END, 0, 0);
@@ -861,9 +863,6 @@ public void onCompletion() {
public void reset() {
super.reset();
cancelDismissControlViewTimer();
- if (clarityPopWindow != null) {
- clarityPopWindow.dismiss();
- }
unregisterWifiListener(getApplicationContext());
}
@@ -875,9 +874,7 @@ public void dissmissControlView() {
bottomContainer.setVisibility(View.INVISIBLE);
topContainer.setVisibility(View.INVISIBLE);
startButton.setVisibility(View.INVISIBLE);
- if (clarityPopWindow != null) {
- clarityPopWindow.dismiss();
- }
+
if (screen != SCREEN_TINY) {
bottomProgressBar.setVisibility(View.VISIBLE);
}
diff --git a/library/src/main/res/layout/jz_layout_clarity.xml b/library/src/main/res/layout/jz_layout_clarity.xml
index a56de17a..7c9362cc 100644
--- a/library/src/main/res/layout/jz_layout_clarity.xml
+++ b/library/src/main/res/layout/jz_layout_clarity.xml
@@ -1,7 +1,7 @@
\ No newline at end of file
+ android:textSize="18sp" />
\ No newline at end of file
From f365a9b99d159d201c3a9a9b27dfe332ec5384f8 Mon Sep 17 00:00:00 2001
From: "727870282@qq.com"
Date: Sun, 12 Apr 2020 23:29:39 +0800
Subject: [PATCH 03/11] =?UTF-8?q?=E4=BF=AE=E6=94=B9AGVideo=E5=88=87?=
=?UTF-8?q?=E6=8D=A2=E6=92=AD=E6=94=BE=E8=A7=86=E9=A2=91=E6=97=B6=EF=BC=8C?=
=?UTF-8?q?=E8=A7=86=E9=A2=91title=E6=B2=A1=E6=9C=89=E8=A2=AB=E4=BF=AE?=
=?UTF-8?q?=E6=94=B9=E7=9A=84=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
demo/src/main/java/cn/jzvd/demo/api/BigUIChangeAG/AGVideo.java | 1 +
1 file changed, 1 insertion(+)
diff --git a/demo/src/main/java/cn/jzvd/demo/api/BigUIChangeAG/AGVideo.java b/demo/src/main/java/cn/jzvd/demo/api/BigUIChangeAG/AGVideo.java
index ee277499..b1206ec2 100644
--- a/demo/src/main/java/cn/jzvd/demo/api/BigUIChangeAG/AGVideo.java
+++ b/demo/src/main/java/cn/jzvd/demo/api/BigUIChangeAG/AGVideo.java
@@ -468,6 +468,7 @@ public void changeUrl(JZDataSource jzDataSource, long seekToInAdvance) {
next_set.setVisibility(GONE);
showProgress();
super.changeUrl(jzDataSource, seekToInAdvance);
+ titleTextView.setText(jzDataSource.title);
// //切换播放地址之后继续以1倍速播放
if (jzDataSource.objects == null) {
Object[] object = {1};
From f20a3ead28b4d77f9e69241153283b34986abe7d Mon Sep 17 00:00:00 2001
From: "727870282@qq.com"
Date: Sun, 12 Apr 2020 23:57:37 +0800
Subject: [PATCH 04/11] =?UTF-8?q?=E5=B0=86Jzvd=E5=92=8CJzvdStd=E4=B8=AD?=
=?UTF-8?q?=E7=9A=84onClick=E5=92=8ConTouch=E6=96=B9=E6=B3=95=E4=B8=AD?=
=?UTF-8?q?=E7=9A=84=E6=AF=8F=E4=B8=AA=E5=88=A4=E6=96=AD=E8=AF=AD=E5=8F=A5?=
=?UTF-8?q?=E6=89=80=E6=89=A7=E8=A1=8C=E7=9A=84=E4=BB=A3=E7=A0=81=E5=B0=81?=
=?UTF-8?q?=E8=A3=85=E6=88=90=E5=8D=95=E7=8B=AC=E6=96=B9=E6=B3=95=EF=BC=8C?=
=?UTF-8?q?=E6=96=B9=E4=BE=BF=E7=BB=A7=E6=89=BF=E4=B9=8B=E5=90=8E=E5=81=9A?=
=?UTF-8?q?=E4=BF=AE=E6=94=B9=E3=80=82?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
library/src/main/java/cn/jzvd/Jzvd.java | 281 +++++++++++----------
library/src/main/java/cn/jzvd/JzvdStd.java | 148 ++++++-----
2 files changed, 236 insertions(+), 193 deletions(-)
diff --git a/library/src/main/java/cn/jzvd/Jzvd.java b/library/src/main/java/cn/jzvd/Jzvd.java
index b36d439d..f842d6e3 100644
--- a/library/src/main/java/cn/jzvd/Jzvd.java
+++ b/library/src/main/java/cn/jzvd/Jzvd.java
@@ -304,39 +304,47 @@ public void setMediaInterface(Class mediaInterfaceClass) {
public void onClick(View v) {
int i = v.getId();
if (i == R.id.start) {
- Log.i(TAG, "onClick start [" + this.hashCode() + "] ");
- if (jzDataSource == null || jzDataSource.urlsMap.isEmpty() || jzDataSource.getCurrentUrl() == null) {
- Toast.makeText(getContext(), getResources().getString(R.string.no_url), Toast.LENGTH_SHORT).show();
- return;
- }
- if (state == STATE_NORMAL) {
- if (!jzDataSource.getCurrentUrl().toString().startsWith("file") && !
- jzDataSource.getCurrentUrl().toString().startsWith("/") &&
- !JZUtils.isWifiConnected(getContext()) && !WIFI_TIP_DIALOG_SHOWED) {//这个可以放到std中
- showWifiDialog();
- return;
- }
- startVideo();
- } else if (state == STATE_PLAYING) {
- Log.d(TAG, "pauseVideo [" + this.hashCode() + "] ");
- mediaInterface.pause();
- onStatePause();
- } else if (state == STATE_PAUSE) {
- mediaInterface.start();
- onStatePlaying();
- } else if (state == STATE_AUTO_COMPLETE) {
- startVideo();
- }
+ clickStart();
} else if (i == R.id.fullscreen) {
- Log.i(TAG, "onClick fullscreen [" + this.hashCode() + "] ");
- if (state == STATE_AUTO_COMPLETE) return;
- if (screen == SCREEN_FULLSCREEN) {
- //quit fullscreen
- backPress();
- } else {
- Log.d(TAG, "toFullscreenActivity [" + this.hashCode() + "] ");
- gotoScreenFullscreen();
+ clickFullscreen();
+ }
+ }
+
+ private void clickFullscreen() {
+ Log.i(TAG, "onClick fullscreen [" + this.hashCode() + "] ");
+ if (state == STATE_AUTO_COMPLETE) return;
+ if (screen == SCREEN_FULLSCREEN) {
+ //quit fullscreen
+ backPress();
+ } else {
+ Log.d(TAG, "toFullscreenActivity [" + this.hashCode() + "] ");
+ gotoScreenFullscreen();
+ }
+ }
+
+ private void clickStart() {
+ Log.i(TAG, "onClick start [" + this.hashCode() + "] ");
+ if (jzDataSource == null || jzDataSource.urlsMap.isEmpty() || jzDataSource.getCurrentUrl() == null) {
+ Toast.makeText(getContext(), getResources().getString(R.string.no_url), Toast.LENGTH_SHORT).show();
+ return;
+ }
+ if (state == STATE_NORMAL) {
+ if (!jzDataSource.getCurrentUrl().toString().startsWith("file") && !
+ jzDataSource.getCurrentUrl().toString().startsWith("/") &&
+ !JZUtils.isWifiConnected(getContext()) && !WIFI_TIP_DIALOG_SHOWED) {//这个可以放到std中
+ showWifiDialog();
+ return;
}
+ startVideo();
+ } else if (state == STATE_PLAYING) {
+ Log.d(TAG, "pauseVideo [" + this.hashCode() + "] ");
+ mediaInterface.pause();
+ onStatePause();
+ } else if (state == STATE_PAUSE) {
+ mediaInterface.start();
+ onStatePlaying();
+ } else if (state == STATE_AUTO_COMPLETE) {
+ startVideo();
}
}
@@ -348,115 +356,126 @@ public boolean onTouch(View v, MotionEvent event) {
if (id == R.id.surface_container) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
- Log.i(TAG, "onTouch surfaceContainer actionDown [" + this.hashCode() + "] ");
- mTouchingProgressBar = true;
-
- mDownX = x;
- mDownY = y;
- mChangeVolume = false;
- mChangePosition = false;
- mChangeBrightness = false;
-
+ touchActionDown(x,y);
break;
case MotionEvent.ACTION_MOVE:
- Log.i(TAG, "onTouch surfaceContainer actionMove [" + this.hashCode() + "] ");
- float deltaX = x - mDownX;
- float deltaY = y - mDownY;
- float absDeltaX = Math.abs(deltaX);
- float absDeltaY = Math.abs(deltaY);
- if (screen == SCREEN_FULLSCREEN) {
- if (!mChangePosition && !mChangeVolume && !mChangeBrightness) {
- if (absDeltaX > THRESHOLD || absDeltaY > THRESHOLD) {
- cancelProgressTimer();
- if (absDeltaX >= THRESHOLD) {
- // 全屏模式下的CURRENT_STATE_ERROR状态下,不响应进度拖动事件.
- // 否则会因为mediaplayer的状态非法导致App Crash
- if (state != STATE_ERROR) {
- mChangePosition = true;
- mGestureDownPosition = getCurrentPositionWhenPlaying();
- }
- } else {
- //如果y轴滑动距离超过设置的处理范围,那么进行滑动事件处理
- if (mDownX < mScreenWidth * 0.5f) {//左侧改变亮度
- mChangeBrightness = true;
- WindowManager.LayoutParams lp = JZUtils.getWindow(getContext()).getAttributes();
- if (lp.screenBrightness < 0) {
- try {
- mGestureDownBrightness = Settings.System.getInt(getContext().getContentResolver(), Settings.System.SCREEN_BRIGHTNESS);
- Log.i(TAG, "current system brightness: " + mGestureDownBrightness);
- } catch (Settings.SettingNotFoundException e) {
- e.printStackTrace();
- }
- } else {
- mGestureDownBrightness = lp.screenBrightness * 255;
- Log.i(TAG, "current activity brightness: " + mGestureDownBrightness);
- }
- } else {//右侧改变声音
- mChangeVolume = true;
- mGestureDownVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
- }
+ touchActionMove(x,y);
+ break;
+ case MotionEvent.ACTION_UP:
+ touchActionUp();
+ break;
+ }
+ }
+ return false;
+ }
+
+ private void touchActionUp() {
+ Log.i(TAG, "onTouch surfaceContainer actionUp [" + this.hashCode() + "] ");
+ mTouchingProgressBar = false;
+ dismissProgressDialog();
+ dismissVolumeDialog();
+ dismissBrightnessDialog();
+ if (mChangePosition) {
+ mediaInterface.seekTo(mSeekTimePosition);
+ long duration = getDuration();
+ int progress = (int) (mSeekTimePosition * 100 / (duration == 0 ? 1 : duration));
+ progressBar.setProgress(progress);
+ }
+ if (mChangeVolume) {
+ //change volume event
+ }
+ startProgressTimer();
+ }
+
+ private void touchActionMove(float x,float y) {
+ Log.i(TAG, "onTouch surfaceContainer actionMove [" + this.hashCode() + "] ");
+ float deltaX = x - mDownX;
+ float deltaY = y - mDownY;
+ float absDeltaX = Math.abs(deltaX);
+ float absDeltaY = Math.abs(deltaY);
+ if (screen == SCREEN_FULLSCREEN) {
+ if (!mChangePosition && !mChangeVolume && !mChangeBrightness) {
+ if (absDeltaX > THRESHOLD || absDeltaY > THRESHOLD) {
+ cancelProgressTimer();
+ if (absDeltaX >= THRESHOLD) {
+ // 全屏模式下的CURRENT_STATE_ERROR状态下,不响应进度拖动事件.
+ // 否则会因为mediaplayer的状态非法导致App Crash
+ if (state != STATE_ERROR) {
+ mChangePosition = true;
+ mGestureDownPosition = getCurrentPositionWhenPlaying();
+ }
+ } else {
+ //如果y轴滑动距离超过设置的处理范围,那么进行滑动事件处理
+ if (mDownX < mScreenWidth * 0.5f) {//左侧改变亮度
+ mChangeBrightness = true;
+ WindowManager.LayoutParams lp = JZUtils.getWindow(getContext()).getAttributes();
+ if (lp.screenBrightness < 0) {
+ try {
+ mGestureDownBrightness = Settings.System.getInt(getContext().getContentResolver(), Settings.System.SCREEN_BRIGHTNESS);
+ Log.i(TAG, "current system brightness: " + mGestureDownBrightness);
+ } catch (Settings.SettingNotFoundException e) {
+ e.printStackTrace();
}
+ } else {
+ mGestureDownBrightness = lp.screenBrightness * 255;
+ Log.i(TAG, "current activity brightness: " + mGestureDownBrightness);
}
+ } else {//右侧改变声音
+ mChangeVolume = true;
+ mGestureDownVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
}
}
- if (mChangePosition) {
- long totalTimeDuration = getDuration();
- mSeekTimePosition = (int) (mGestureDownPosition + deltaX * totalTimeDuration / mScreenWidth);
- if (mSeekTimePosition > totalTimeDuration)
- mSeekTimePosition = totalTimeDuration;
- String seekTime = JZUtils.stringForTime(mSeekTimePosition);
- String totalTime = JZUtils.stringForTime(totalTimeDuration);
-
- showProgressDialog(deltaX, seekTime, mSeekTimePosition, totalTime, totalTimeDuration);
- }
- if (mChangeVolume) {
- deltaY = -deltaY;
- int max = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
- int deltaV = (int) (max * deltaY * 3 / mScreenHeight);
- mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, mGestureDownVolume + deltaV, 0);
- //dialog中显示百分比
- int volumePercent = (int) (mGestureDownVolume * 100 / max + deltaY * 3 * 100 / mScreenHeight);
- showVolumeDialog(-deltaY, volumePercent);
- }
+ }
+ }
+ }
+ if (mChangePosition) {
+ long totalTimeDuration = getDuration();
+ mSeekTimePosition = (int) (mGestureDownPosition + deltaX * totalTimeDuration / mScreenWidth);
+ if (mSeekTimePosition > totalTimeDuration)
+ mSeekTimePosition = totalTimeDuration;
+ String seekTime = JZUtils.stringForTime(mSeekTimePosition);
+ String totalTime = JZUtils.stringForTime(totalTimeDuration);
+
+ showProgressDialog(deltaX, seekTime, mSeekTimePosition, totalTime, totalTimeDuration);
+ }
+ if (mChangeVolume) {
+ deltaY = -deltaY;
+ int max = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
+ int deltaV = (int) (max * deltaY * 3 / mScreenHeight);
+ mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, mGestureDownVolume + deltaV, 0);
+ //dialog中显示百分比
+ int volumePercent = (int) (mGestureDownVolume * 100 / max + deltaY * 3 * 100 / mScreenHeight);
+ showVolumeDialog(-deltaY, volumePercent);
+ }
- if (mChangeBrightness) {
- deltaY = -deltaY;
- int deltaV = (int) (255 * deltaY * 3 / mScreenHeight);
- WindowManager.LayoutParams params = JZUtils.getWindow(getContext()).getAttributes();
- if (((mGestureDownBrightness + deltaV) / 255) >= 1) {//这和声音有区别,必须自己过滤一下负值
- params.screenBrightness = 1;
- } else if (((mGestureDownBrightness + deltaV) / 255) <= 0) {
- params.screenBrightness = 0.01f;
- } else {
- params.screenBrightness = (mGestureDownBrightness + deltaV) / 255;
- }
- JZUtils.getWindow(getContext()).setAttributes(params);
- //dialog中显示百分比
- int brightnessPercent = (int) (mGestureDownBrightness * 100 / 255 + deltaY * 3 * 100 / mScreenHeight);
- showBrightnessDialog(brightnessPercent);
-// mDownY = y;
- }
- break;
- case MotionEvent.ACTION_UP:
- Log.i(TAG, "onTouch surfaceContainer actionUp [" + this.hashCode() + "] ");
- mTouchingProgressBar = false;
- dismissProgressDialog();
- dismissVolumeDialog();
- dismissBrightnessDialog();
- if (mChangePosition) {
- mediaInterface.seekTo(mSeekTimePosition);
- long duration = getDuration();
- int progress = (int) (mSeekTimePosition * 100 / (duration == 0 ? 1 : duration));
- progressBar.setProgress(progress);
- }
- if (mChangeVolume) {
- //change volume event
- }
- startProgressTimer();
- break;
+ if (mChangeBrightness) {
+ deltaY = -deltaY;
+ int deltaV = (int) (255 * deltaY * 3 / mScreenHeight);
+ WindowManager.LayoutParams params = JZUtils.getWindow(getContext()).getAttributes();
+ if (((mGestureDownBrightness + deltaV) / 255) >= 1) {//这和声音有区别,必须自己过滤一下负值
+ params.screenBrightness = 1;
+ } else if (((mGestureDownBrightness + deltaV) / 255) <= 0) {
+ params.screenBrightness = 0.01f;
+ } else {
+ params.screenBrightness = (mGestureDownBrightness + deltaV) / 255;
}
+ JZUtils.getWindow(getContext()).setAttributes(params);
+ //dialog中显示百分比
+ int brightnessPercent = (int) (mGestureDownBrightness * 100 / 255 + deltaY * 3 * 100 / mScreenHeight);
+ showBrightnessDialog(brightnessPercent);
+// mDownY = y;
}
- return false;
+ }
+
+ private void touchActionDown(float x,float y) {
+ Log.i(TAG, "onTouch surfaceContainer actionDown [" + this.hashCode() + "] ");
+ mTouchingProgressBar = true;
+
+ mDownX = x;
+ mDownY = y;
+ mChangeVolume = false;
+ mChangePosition = false;
+ mChangeBrightness = false;
}
public void onStateNormal() {
diff --git a/library/src/main/java/cn/jzvd/JzvdStd.java b/library/src/main/java/cn/jzvd/JzvdStd.java
index fcdb63f9..59257031 100644
--- a/library/src/main/java/cn/jzvd/JzvdStd.java
+++ b/library/src/main/java/cn/jzvd/JzvdStd.java
@@ -287,86 +287,110 @@ public void onClick(View v) {
super.onClick(v);
int i = v.getId();
if (i == R.id.poster) {
- if (jzDataSource == null || jzDataSource.urlsMap.isEmpty() || jzDataSource.getCurrentUrl() == null) {
- Toast.makeText(getContext(), getResources().getString(R.string.no_url), Toast.LENGTH_SHORT).show();
- return;
- }
- if (state == STATE_NORMAL) {
- if (!jzDataSource.getCurrentUrl().toString().startsWith("file") &&
- !jzDataSource.getCurrentUrl().toString().startsWith("/") &&
- !JZUtils.isWifiConnected(getContext()) && !WIFI_TIP_DIALOG_SHOWED) {
- showWifiDialog();
- return;
- }
- startVideo();
- } else if (state == STATE_AUTO_COMPLETE) {
- onClickUiToggle();
- }
+ clickPoster();
} else if (i == R.id.surface_container) {
- startDismissControlViewTimer();
+ clickSurfaceContainer();
} else if (i == R.id.back) {
- backPress();
+ clickBack();
} else if (i == R.id.back_tiny) {
- clearFloatScreen();
+ clickBackTiny();
} else if (i == R.id.clarity) {
- LayoutInflater inflater = (LayoutInflater) getContext()
- .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
- final LinearLayout layout = (LinearLayout) inflater.inflate(R.layout.jz_layout_clarity, null);
+ clickClarity();
+ } else if (i == R.id.retry_btn) {
+ clickRetryBtn();
+ }
+ }
- OnClickListener mQualityListener = v1 -> {
- int index = (int) v1.getTag();
+ private void clickRetryBtn() {
+ if (jzDataSource.urlsMap.isEmpty() || jzDataSource.getCurrentUrl() == null) {
+ Toast.makeText(getContext(), getResources().getString(R.string.no_url), Toast.LENGTH_SHORT).show();
+ return;
+ }
+ if (!jzDataSource.getCurrentUrl().toString().startsWith("file") && !
+ jzDataSource.getCurrentUrl().toString().startsWith("/") &&
+ !JZUtils.isWifiConnected(getContext()) && !WIFI_TIP_DIALOG_SHOWED) {
+ showWifiDialog();
+ return;
+ }
+ addTextureView();
+ onStatePreparing();
+ }
+
+ private void clickClarity() {
+ LayoutInflater inflater = (LayoutInflater) getContext()
+ .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
+ final LinearLayout layout = (LinearLayout) inflater.inflate(R.layout.jz_layout_clarity, null);
+
+ OnClickListener mQualityListener = v1 -> {
+ int index = (int) v1.getTag();
// this.seekToInAdvance = getCurrentPositionWhenPlaying();
- jzDataSource.currentUrlIndex = index;
+ jzDataSource.currentUrlIndex = index;
// onStatePreparingChangeUrl();
- changeUrl(jzDataSource, getCurrentPositionWhenPlaying());
+ changeUrl(jzDataSource, getCurrentPositionWhenPlaying());
- clarity.setText(jzDataSource.getCurrentKey().toString());
- for (int j = 0; j < layout.getChildCount(); j++) {//设置点击之后的颜色
- if (j == jzDataSource.currentUrlIndex) {
- ((TextView) layout.getChildAt(j)).setTextColor(Color.parseColor("#fff85959"));
- } else {
- ((TextView) layout.getChildAt(j)).setTextColor(Color.parseColor("#ffffff"));
- }
- }
- if (clarityPopWindow != null) {
- clarityPopWindow.dismiss();
- }
- };
-
- for (int j = 0; j < jzDataSource.urlsMap.size(); j++) {
- String key = jzDataSource.getKeyFromDataSource(j);
- TextView clarityItem = (TextView) View.inflate(getContext(), R.layout.jz_layout_clarity_item, null);
- clarityItem.setText(key);
- clarityItem.setTag(j);
- layout.addView(clarityItem, j);
- clarityItem.setOnClickListener(mQualityListener);
+ clarity.setText(jzDataSource.getCurrentKey().toString());
+ for (int j = 0; j < layout.getChildCount(); j++) {//设置点击之后的颜色
if (j == jzDataSource.currentUrlIndex) {
- clarityItem.setTextColor(Color.parseColor("#fff85959"));
+ ((TextView) layout.getChildAt(j)).setTextColor(Color.parseColor("#fff85959"));
+ } else {
+ ((TextView) layout.getChildAt(j)).setTextColor(Color.parseColor("#ffffff"));
}
}
-
- clarityPopWindow = new PopupWindow(layout, LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, true);
- clarityPopWindow.setContentView(layout);
- clarityPopWindow.showAsDropDown(clarity);
- layout.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED);
- int offsetX = clarity.getMeasuredWidth() / 3;
- int offsetY = clarity.getMeasuredHeight() / 3;
- clarityPopWindow.update(clarity, -offsetX, -offsetY, Math.round(layout.getMeasuredWidth() * 2), layout.getMeasuredHeight());
- } else if (i == R.id.retry_btn) {
- if (jzDataSource.urlsMap.isEmpty() || jzDataSource.getCurrentUrl() == null) {
- Toast.makeText(getContext(), getResources().getString(R.string.no_url), Toast.LENGTH_SHORT).show();
- return;
+ if (clarityPopWindow != null) {
+ clarityPopWindow.dismiss();
}
- if (!jzDataSource.getCurrentUrl().toString().startsWith("file") && !
- jzDataSource.getCurrentUrl().toString().startsWith("/") &&
+ };
+
+ for (int j = 0; j < jzDataSource.urlsMap.size(); j++) {
+ String key = jzDataSource.getKeyFromDataSource(j);
+ TextView clarityItem = (TextView) View.inflate(getContext(), R.layout.jz_layout_clarity_item, null);
+ clarityItem.setText(key);
+ clarityItem.setTag(j);
+ layout.addView(clarityItem, j);
+ clarityItem.setOnClickListener(mQualityListener);
+ if (j == jzDataSource.currentUrlIndex) {
+ clarityItem.setTextColor(Color.parseColor("#fff85959"));
+ }
+ }
+
+ clarityPopWindow = new PopupWindow(layout, LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, true);
+ clarityPopWindow.setContentView(layout);
+ clarityPopWindow.showAsDropDown(clarity);
+ layout.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED);
+ int offsetX = clarity.getMeasuredWidth() / 3;
+ int offsetY = clarity.getMeasuredHeight() / 3;
+ clarityPopWindow.update(clarity, -offsetX, -offsetY, Math.round(layout.getMeasuredWidth() * 2), layout.getMeasuredHeight());
+ }
+
+ private void clickBackTiny() {
+ clearFloatScreen();
+ }
+
+ private void clickBack() {
+ backPress();
+ }
+
+ private void clickSurfaceContainer() {
+ startDismissControlViewTimer();
+ }
+
+ private void clickPoster() {
+ if (jzDataSource == null || jzDataSource.urlsMap.isEmpty() || jzDataSource.getCurrentUrl() == null) {
+ Toast.makeText(getContext(), getResources().getString(R.string.no_url), Toast.LENGTH_SHORT).show();
+ return;
+ }
+ if (state == STATE_NORMAL) {
+ if (!jzDataSource.getCurrentUrl().toString().startsWith("file") &&
+ !jzDataSource.getCurrentUrl().toString().startsWith("/") &&
!JZUtils.isWifiConnected(getContext()) && !WIFI_TIP_DIALOG_SHOWED) {
showWifiDialog();
return;
}
- addTextureView();
- onStatePreparing();
+ startVideo();
+ } else if (state == STATE_AUTO_COMPLETE) {
+ onClickUiToggle();
}
}
From c8c71fdcf90cef31438684d5916cad42b8c699d8 Mon Sep 17 00:00:00 2001
From: Nathen <1066666651@qq.com>
Date: Thu, 16 Apr 2020 20:34:18 +0800
Subject: [PATCH 05/11] fix code
---
demo/src/main/java/cn/jzvd/demo/api/BigUIChangeAG/AGVideo.java | 1 -
1 file changed, 1 deletion(-)
diff --git a/demo/src/main/java/cn/jzvd/demo/api/BigUIChangeAG/AGVideo.java b/demo/src/main/java/cn/jzvd/demo/api/BigUIChangeAG/AGVideo.java
index b1206ec2..ee277499 100644
--- a/demo/src/main/java/cn/jzvd/demo/api/BigUIChangeAG/AGVideo.java
+++ b/demo/src/main/java/cn/jzvd/demo/api/BigUIChangeAG/AGVideo.java
@@ -468,7 +468,6 @@ public void changeUrl(JZDataSource jzDataSource, long seekToInAdvance) {
next_set.setVisibility(GONE);
showProgress();
super.changeUrl(jzDataSource, seekToInAdvance);
- titleTextView.setText(jzDataSource.title);
// //切换播放地址之后继续以1倍速播放
if (jzDataSource.objects == null) {
Object[] object = {1};
From fe73a413e34586bc493e7b110036812f2d52845c Mon Sep 17 00:00:00 2001
From: Nathen <1066666651@qq.com>
Date: Mon, 20 Apr 2020 00:29:01 +0800
Subject: [PATCH 06/11] Update bug_report.md
---
.github/ISSUE_TEMPLATE/bug_report.md | 2 ++
1 file changed, 2 insertions(+)
diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
index ab340b85..1d1e3740 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.md
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -6,6 +6,8 @@ about: Create a report to help us improve
**什么jzvd版本
+**什么播放器内核
+
**相关log是什么
**demo是否有这个问题
From 65f4bfb29b7a9af55b0de3338713892d2486d5c4 Mon Sep 17 00:00:00 2001
From: Nathen <1066666651@qq.com>
Date: Tue, 21 Apr 2020 01:07:00 +0800
Subject: [PATCH 07/11] fix restart logic
---
library/src/main/java/cn/jzvd/JzvdStd.java | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/library/src/main/java/cn/jzvd/JzvdStd.java b/library/src/main/java/cn/jzvd/JzvdStd.java
index 59257031..634a45e8 100644
--- a/library/src/main/java/cn/jzvd/JzvdStd.java
+++ b/library/src/main/java/cn/jzvd/JzvdStd.java
@@ -312,8 +312,7 @@ private void clickRetryBtn() {
showWifiDialog();
return;
}
- addTextureView();
- onStatePreparing();
+ startVideo();
}
private void clickClarity() {
From 431ae456e779c6127a50602424807d927314316c Mon Sep 17 00:00:00 2001
From: "pengan.li"
Date: Thu, 23 Apr 2020 14:47:20 +0800
Subject: [PATCH 08/11] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=A7=86=E9=A2=91?=
=?UTF-8?q?=E5=85=A8=E5=B1=8F=E6=92=AD=E6=94=BE=E6=97=B6=EF=BC=8C=E6=8B=96?=
=?UTF-8?q?=E5=8A=A8=E7=8A=B6=E6=80=81=E6=A0=8F=E5=92=8CNavigation=20Bar?=
=?UTF-8?q?=E8=A7=A6=E5=8F=91=E8=A7=86=E9=A2=91=E6=89=8B=E5=8A=BF=E7=9A=84?=
=?UTF-8?q?bug?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
library/src/main/java/cn/jzvd/JZUtils.java | 30 ++++++++++++++++++++++
library/src/main/java/cn/jzvd/Jzvd.java | 4 +++
2 files changed, 34 insertions(+)
diff --git a/library/src/main/java/cn/jzvd/JZUtils.java b/library/src/main/java/cn/jzvd/JZUtils.java
index d3feba7b..a14f2a8c 100755
--- a/library/src/main/java/cn/jzvd/JZUtils.java
+++ b/library/src/main/java/cn/jzvd/JZUtils.java
@@ -5,10 +5,13 @@
import android.content.Context;
import android.content.ContextWrapper;
import android.content.SharedPreferences;
+import android.content.res.Resources;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
+import android.util.DisplayMetrics;
import android.util.Log;
import android.view.View;
+import android.view.ViewConfiguration;
import android.view.Window;
import android.view.WindowManager;
@@ -166,4 +169,31 @@ public static void showSystemUI(Context context) {
JZUtils.getWindow(context).getDecorView().setSystemUiVisibility(SYSTEM_UI);
}
+ //获取状态栏的高度
+ public static int getStatusBarHeight(Context context) {
+ Resources resources = context.getResources();
+ int resourceId = resources.getIdentifier("status_bar_height", "dimen", "android");
+ int height = resources.getDimensionPixelSize(resourceId);
+ return height;
+ }
+
+ //获取NavigationBar的高度
+ public static int getNavigationBarHeight(Context context) {
+ boolean var1 = ViewConfiguration.get(context).hasPermanentMenuKey();
+ int var2;
+ return (var2 = context.getResources().getIdentifier("navigation_bar_height", "dimen", "android")) > 0 && !var1 ? context.getResources().getDimensionPixelSize(var2) : 0;
+ }
+
+ //获取屏幕的宽度
+ public static int getScreenWidth(Context context) {
+ DisplayMetrics dm = context.getResources().getDisplayMetrics();
+ return dm.widthPixels;
+ }
+
+ //获取屏幕的高度
+ public static int getScreenHeight(Context context) {
+ DisplayMetrics dm = context.getResources().getDisplayMetrics();
+ return dm.heightPixels;
+ }
+
}
diff --git a/library/src/main/java/cn/jzvd/Jzvd.java b/library/src/main/java/cn/jzvd/Jzvd.java
index f842d6e3..a0822f41 100644
--- a/library/src/main/java/cn/jzvd/Jzvd.java
+++ b/library/src/main/java/cn/jzvd/Jzvd.java
@@ -394,6 +394,10 @@ private void touchActionMove(float x,float y) {
float absDeltaX = Math.abs(deltaX);
float absDeltaY = Math.abs(deltaY);
if (screen == SCREEN_FULLSCREEN) {
+ //拖动的是NavigationBar和状态栏
+ if (mDownX > JZUtils.getScreenWidth(getContext()) || mDownY < JZUtils.getStatusBarHeight(getContext())) {
+ return;
+ }
if (!mChangePosition && !mChangeVolume && !mChangeBrightness) {
if (absDeltaX > THRESHOLD || absDeltaY > THRESHOLD) {
cancelProgressTimer();
From c9d1a9787b7dafad68b973363721b2cbe179c4f3 Mon Sep 17 00:00:00 2001
From: Nathen <1066666651@qq.com>
Date: Fri, 24 Apr 2020 02:43:01 +0800
Subject: [PATCH 09/11] fix width
---
library/src/main/java/cn/jzvd/JzvdStd.java | 2 +-
library/src/main/res/layout/jz_layout_clarity.xml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/library/src/main/java/cn/jzvd/JzvdStd.java b/library/src/main/java/cn/jzvd/JzvdStd.java
index d26828f9..84a33ad0 100644
--- a/library/src/main/java/cn/jzvd/JzvdStd.java
+++ b/library/src/main/java/cn/jzvd/JzvdStd.java
@@ -349,7 +349,7 @@ public void onClick(View v) {
}
}
- clarityPopWindow = new PopupWindow(layout, JZUtils.dip2px(getContext(), 250), LayoutParams.MATCH_PARENT, true);
+ clarityPopWindow = new PopupWindow(layout, JZUtils.dip2px(getContext(), 240), LayoutParams.MATCH_PARENT, true);
clarityPopWindow.setContentView(layout);
clarityPopWindow.setAnimationStyle(R.style.pop_animation);
clarityPopWindow.showAtLocation(textureViewContainer, Gravity.END, 0, 0);
diff --git a/library/src/main/res/layout/jz_layout_clarity.xml b/library/src/main/res/layout/jz_layout_clarity.xml
index 7c9362cc..3670c9dd 100644
--- a/library/src/main/res/layout/jz_layout_clarity.xml
+++ b/library/src/main/res/layout/jz_layout_clarity.xml
@@ -1,7 +1,7 @@
Date: Fri, 24 Apr 2020 02:56:03 +0800
Subject: [PATCH 10/11] fix conflict
---
library/src/main/java/cn/jzvd/JzvdStd.java | 60 +++++++++-------------
1 file changed, 24 insertions(+), 36 deletions(-)
diff --git a/library/src/main/java/cn/jzvd/JzvdStd.java b/library/src/main/java/cn/jzvd/JzvdStd.java
index de905ce9..19f3be85 100644
--- a/library/src/main/java/cn/jzvd/JzvdStd.java
+++ b/library/src/main/java/cn/jzvd/JzvdStd.java
@@ -318,6 +318,8 @@ private void clickRetryBtn() {
}
private void clickClarity() {
+ onCLickUiToggleToClear();
+
LayoutInflater inflater = (LayoutInflater) getContext()
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
final LinearLayout layout = (LinearLayout) inflater.inflate(R.layout.jz_layout_clarity, null);
@@ -339,45 +341,30 @@ private void clickClarity() {
((TextView) layout.getChildAt(j)).setTextColor(Color.parseColor("#ffffff"));
}
}
-//<<<<<<< HEAD
-// if (clarityPopWindow != null) {
-// clarityPopWindow.dismiss();
-//=======
-
- clarityPopWindow = new PopupWindow(layout, JZUtils.dip2px(getContext(), 240), LayoutParams.MATCH_PARENT, true);
- clarityPopWindow.setContentView(layout);
- clarityPopWindow.setAnimationStyle(R.style.pop_animation);
- clarityPopWindow.showAtLocation(textureViewContainer, Gravity.END, 0, 0);
+ if (clarityPopWindow != null) {
+ clarityPopWindow.dismiss();
+ }
+ };
+
+ for (int j = 0; j < jzDataSource.urlsMap.size(); j++) {
+ String key = jzDataSource.getKeyFromDataSource(j);
+ TextView clarityItem = (TextView) View.inflate(getContext(), R.layout.jz_layout_clarity_item, null);
+ clarityItem.setText(key);
+ clarityItem.setTag(j);
+ layout.addView(clarityItem, j);
+ clarityItem.setOnClickListener(mQualityListener);
+ if (j == jzDataSource.currentUrlIndex) {
+ clarityItem.setTextColor(Color.parseColor("#fff85959"));
+ }
+ }
+
+ clarityPopWindow = new PopupWindow(layout, JZUtils.dip2px(getContext(), 240), LayoutParams.MATCH_PARENT, true);
+ clarityPopWindow.setContentView(layout);
+ clarityPopWindow.setAnimationStyle(R.style.pop_animation);
+ clarityPopWindow.showAtLocation(textureViewContainer, Gravity.END, 0, 0);
// int offsetX = clarity.getMeasuredWidth() / 3;
// int offsetY = clarity.getMeasuredHeight() / 3;
// clarityPopWindow.update(clarity, -offsetX, -offsetY, Math.round(layout.getMeasuredWidth() * 2), layout.getMeasuredHeight());
-// } else if (i == R.id.retry_btn) {
-// if (jzDataSource.urlsMap.isEmpty() || jzDataSource.getCurrentUrl() == null) {
-// Toast.makeText(getContext(), getResources().getString(R.string.no_url), Toast.LENGTH_SHORT).show();
-// return;
-////>>>>>>> pr/108
-// }
- };
-
-// for (int j = 0; j < jzDataSource.urlsMap.size(); j++) {
-// String key = jzDataSource.getKeyFromDataSource(j);
-// TextView clarityItem = (TextView) View.inflate(getContext(), R.layout.jz_layout_clarity_item, null);
-// clarityItem.setText(key);
-// clarityItem.setTag(j);
-// layout.addView(clarityItem, j);
-// clarityItem.setOnClickListener(mQualityListener);
-// if (j == jzDataSource.currentUrlIndex) {
-// clarityItem.setTextColor(Color.parseColor("#fff85959"));
-// }
-// }
-//
-// clarityPopWindow = new PopupWindow(layout, LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, true);
-// clarityPopWindow.setContentView(layout);
-// clarityPopWindow.showAsDropDown(clarity);
-// layout.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED);
-// int offsetX = clarity.getMeasuredWidth() / 3;
-// int offsetY = clarity.getMeasuredHeight() / 3;
-// clarityPopWindow.update(clarity, -offsetX, -offsetY, Math.round(layout.getMeasuredWidth() * 2), layout.getMeasuredHeight());
}
private void clickBackTiny() {
@@ -551,6 +538,7 @@ public void setBatteryLevel() {
}
}
+ //** 和onClickUiToggle重复,要干掉
public void onCLickUiToggleToClear() {
if (state == STATE_PREPARING) {
if (bottomContainer.getVisibility() == View.VISIBLE) {
From 61612d4997463001eebde230021bd4a4e66369f9 Mon Sep 17 00:00:00 2001
From: Nathen <1066666651@qq.com>
Date: Sun, 26 Apr 2020 02:13:30 +0800
Subject: [PATCH 11/11] v7.3.0
---
README.md | 6 +++---
demo/build.gradle | 4 ++--
gradle/build_upload.gradle | 2 +-
library/build.gradle | 4 ++--
4 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/README.md b/README.md
index d63d5da5..4a964dd2 100644
--- a/README.md
+++ b/README.md
@@ -2,7 +2,7 @@
--
-
+
@@ -23,7 +23,7 @@
## 文档
-- [文档 - API](https://github.com/Jzvd/JiaoZiVideoPlayer/wiki/%E6%96%87%E6%A1%A3-%E2%80%94-API),下载安装demo[jiaozivideoplayer-7.2.4.apk](https://github.com/Jzvd/JiaoZiVideoPlayer/releases/download/v7.2.4/jiaozivideoplayer-7.2.4.apk),仔细过一遍demo
+- [文档 - API](https://github.com/Jzvd/JiaoZiVideoPlayer/wiki/%E6%96%87%E6%A1%A3-%E2%80%94-API),下载安装demo[jiaozivideoplayer-7.3.0.apk](https://github.com/Jzvd/JiaoZiVideoPlayer/releases/download/v7.3.0/jiaozivideoplayer-7.3.0.apk),仔细过一遍demo
- [文档 - 自定义Jzvd](https://github.com/Jzvd/JiaoZiVideoPlayer/wiki/%E6%96%87%E6%A1%A3-%E2%80%94-%E8%87%AA%E5%AE%9A%E4%B9%89Jzvd),继承JzvdStd实现自己的播放器
- [文档 - 自定义播放内核](https://github.com/Jzvd/JiaoZiVideoPlayer/wiki/%E6%96%87%E6%A1%A3-%E2%80%94-%E8%87%AA%E5%AE%9A%E4%B9%89%E6%92%AD%E6%94%BE%E5%86%85%E6%A0%B8),测试哪个播放内核适合自己的项目
@@ -37,7 +37,7 @@
1.添加类库
```gradle
-implementation 'cn.jzvd:jiaozivideoplayer:7.2.4'
+implementation 'cn.jzvd:jiaozivideoplayer:7.3.0'
```
2.添加布局
diff --git a/demo/build.gradle b/demo/build.gradle
index 42504bfc..2f228ed4 100755
--- a/demo/build.gradle
+++ b/demo/build.gradle
@@ -8,8 +8,8 @@ android {
applicationId "cn.jzvd.demo"
minSdkVersion 16
targetSdkVersion 29
- versionCode 99
- versionName "7.2.4"
+ versionCode 100
+ versionName "7.3.0"
ndk {
// add support lib
abiFilters 'armeabi-v7a' //, 'arm64-v8a'//, "mips" //,'armeabi''x86',, 'x86_64',
diff --git a/gradle/build_upload.gradle b/gradle/build_upload.gradle
index d92ba95b..9e3c8042 100644
--- a/gradle/build_upload.gradle
+++ b/gradle/build_upload.gradle
@@ -8,7 +8,7 @@ signing {
group = "cn.jzvd"
archivesBaseName = "jiaozivideoplayer"
-version = "7.2.4"
+version = "7.3.0"
uploadArchives {
repositories {
diff --git a/library/build.gradle b/library/build.gradle
index e3ac47d1..8f2841c2 100644
--- a/library/build.gradle
+++ b/library/build.gradle
@@ -7,8 +7,8 @@ android {
defaultConfig {
minSdkVersion 16
targetSdkVersion 29
- versionCode 99
- versionName "7.2.4"
+ versionCode 100
+ versionName "7.3.0"
}
compileOptions {