Skip to content
This repository has been archived by the owner on Aug 9, 2022. It is now read-only.

Commit

Permalink
Merge branch 'release/v6.1.2'
Browse files Browse the repository at this point in the history
  • Loading branch information
lipan committed Nov 4, 2017
2 parents d0f90ae + 1416e49 commit e7348db
Show file tree
Hide file tree
Showing 43 changed files with 1,130 additions and 543 deletions.
56 changes: 30 additions & 26 deletions README-ZH.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,47 +2,54 @@
--
<p align="center">
<a href="http://developer.android.com/index.html"><img src="https://img.shields.io/badge/platform-android-green.svg"></a>
<a href="http://search.maven.org/#artifactdetails%7Ccn.jzvd%7Cjiaozivideoplayer%7C5.8.2%7Caar"><img src="https://img.shields.io/badge/Maven%20Central-6.1.1-green.svg"></a>
<a href="http://search.maven.org/#artifactdetails%7Ccn.jzvd%7Cjiaozivideoplayer%7C5.8.2%7Caar"><img src="https://img.shields.io/badge/Maven%20Central-6.1.2-green.svg"></a>
<a href="http://choosealicense.com/licenses/mit/"><img src="https://img.shields.io/badge/license-MIT-green.svg"></a>
<a href="https://android-arsenal.com/details/1/3269"><img src="https://img.shields.io/badge/Android%20Arsenal-jiaozivideoplayer-green.svg?style=true"></a>
</p>

#### 立志成为Android平台使用最广泛的视频播放控件 Q群:490442439 验证信息:jzvd
# [斗鱼直播](https://www.douyu.com/1667893)

目前认为安卓中视频点播的终极状态是系统的MediaPlayer,其他的播放引擎并不是未来的趋势,虽然系统的MediaPlayer也有缺点我认为我们应该做出一些让步,如果系统的MediaPlayer没有重大缺陷将不会考虑替换它。
每天下午两点开始直播写代码,回答大家的使用问题,请大家进入直播间后提问,直播期间不再手动打字回复,关注数到100的时候抽奖100元(两个50)

Q群:490442439 验证信息:jzvd

[英文文档](https://github.com/lipangit/JiaoZiVideoPlayer) [工作计划](https://github.com/lipangit/JiaoZiVideoPlayer/projects/2) [微博](http://weibo.com/2342820395/profile?topnav=1&wvr=6&is_all=1) [视频教程](https://github.com/lipangit/JiaoZiVideoPlayer/wiki/%E8%A7%86%E9%A2%91%E6%95%99%E7%A8%8B)

## 主要特点

1. 视频全屏播放和浮层小窗播放
2. 可以完全自定义UI和功能
3. 能在`ListView``ViewPager``ListView``ViewPager``Fragment`等多重嵌套模式下全屏工作
4. 手势修改进度和音量
5. 视频大小的屏幕适配,宽或长至少有两个对边是充满屏幕的,另外两个方向居中
6. 可以在加载、暂停、播放等各种状态中正常进入全屏和退出全屏
7. 重力感应自动全屏
8. WebView嵌套本地视频控件
9. [支持https和rtsp](https://developer.android.com/guide/topics/media/media-formats.html)
10. 小于 110kb
11. [Home键暂停,返回继续播放](https://github.com/lipangit/JiaoZiVideoPlayer/blob/develop/app/src/main/java/cn/jzvd/demo/ApiActivity.java#L117)
1. 可以完全自定义UI和任何功能
2. 支持https和rtsp协议,更多协议请点[这里](https://developer.android.com/guide/topics/media/media-formats.html)
3. 小于 110kb
4. 可实现全屏播放,小窗播放
5. 完美的列表滑动的判断
6. 能在`ListView``ViewPager``ListView``ViewPager``Fragment`等多重嵌套模式下全屏工作
7. 可以在加载、暂停、播放等各种状态中正常进入全屏和退出全屏
8. 多种视频适配屏幕的方式,可铺满全屏,可以全屏剪裁
9. 重力感应自动进入全屏
10. 全屏后手势修改进度和音量
11. Home键退出界面暂停播放,返回界面继续播放
12. WebView嵌套本地视频控件

目前认为安卓中视频点播的终极状态是系统的MediaPlayer,其他的播放引擎并不是未来的趋势,虽然系统的MediaPlayer也有缺点我认为我们应该做出一些让步,如果系统的MediaPlayer没有重大缺陷将不会考虑替换它。

## 效果

**[jiaozivideoplayer-6.1.1.apk](https://github.com/lipangit/JiaoZiVideoPlayer/releases/download/6.1.1/jiaozivideoplayer-6.1.1.apk)**
**[jiaozivideoplayer-6.1.2.apk](https://github.com/lipangit/JiaoZiVideoPlayer/releases/download/v6.1.2/jiaozivideoplayer-6.1.2.apk)**

![Demo Screenshot][1]

[列表滑动自动进入小窗的效果](http://weibo.com/tv/v/FtxpWgqmg?fid=1034:5cda6fc7f394b403d592bd9b1d5a9701)

## 使用

即便是自定义UI,或者对Library有过修改,也是这五步骤来使用播放器。

1.添加类库
```gradle
compile 'cn.jzvd:jiaozivideoplayer:6.1.1'
compile 'cn.jzvd:jiaozivideoplayer:6.1.2'
```

[或直接下载jar包](https://github.com/lipangit/JiaoZiVideoPlayer/releases/tag/v6.1.1) 不建议
或直接下载[jar包](https://github.com/lipangit/JiaoZiVideoPlayer/releases/tag/v6.1.2) (不建议)

2.添加布局
```xml
Expand Down Expand Up @@ -110,18 +117,15 @@ protected void onPause() {

* [群管理](https://github.com/lipangit/JiaoZiVideoPlayer/wiki#%E7%BE%A4%E7%AE%A1%E7%90%86)

[熊晓清](http://blog.csdn.net/yaya_xiong) QQ:137048616

[Lionet](https://github.com/Lionet6?tab=repositories) QQ:2950527715

[montauk](https://github.com/hanmeimei888) QQ:958489121

[张展硕]() QQ:229431468
1. [熊晓清](http://blog.csdn.net/yaya_xiong) QQ:137048616
2. [Lionet](https://github.com/Lionet6?tab=repositories) QQ:2950527715
3. [montauk](https://github.com/hanmeimei888) QQ:958489121
4. [张展硕]() QQ:229431468

* [问题解答](https://github.com/lipangit/JiaoZiVideoPlayer/wiki#%E9%97%AE%E9%A2%98%E8%A7%A3%E7%AD%94)

[熊晓清](http://blog.csdn.net/yaya_xiong) QQ:137048616
[の伤也快乐](https://github.com/jmhjmh) QQ:466278628
1. [熊晓清](http://blog.csdn.net/yaya_xiong) QQ:137048616
2. [の伤也快乐](https://github.com/jmhjmh) QQ:466278628

* [wiki整理](https://github.com/lipangit/JiaoZiVideoPlayer/wiki#wiki%E6%95%B4%E7%90%86)

Expand Down
56 changes: 29 additions & 27 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,49 +2,54 @@
--
<p align="center">
<a href="http://developer.android.com/index.html"><img src="https://img.shields.io/badge/platform-android-green.svg"></a>
<a href="http://search.maven.org/#artifactdetails%7Ccn.jzvd%7Cjiaozivideoplayer%7C5.8.2%7Caar"><img src="https://img.shields.io/badge/Maven%20Central-6.1.1-green.svg"></a>
<a href="http://search.maven.org/#artifactdetails%7Ccn.jzvd%7Cjiaozivideoplayer%7C5.8.2%7Caar"><img src="https://img.shields.io/badge/Maven%20Central-6.1.2-green.svg"></a>
<a href="http://choosealicense.com/licenses/mit/"><img src="https://img.shields.io/badge/license-MIT-green.svg"></a>
<a href="https://android-arsenal.com/details/1/3269"><img src="https://img.shields.io/badge/Android%20Arsenal-jiaozivideoplayer-green.svg?style=true"></a>
</p>

* This project needs translators, you can change everything editing readme, release note, formate variable and annotation.
# [斗鱼直播](https://www.douyu.com/1667893)

#### Ambition is becoming the most widely used video playback control. Q群:490442439 验证信息:jzvd
每天下午两点开始直播写代码,回答大家的使用问题,请大家进入直播间后提问,直播期间不再手动打字回复,关注数到100的时候抽奖100元(两个50)

I think the final solution to video in android is `android.media.MediaPlayer`, other players are not in the trend, even if the `android.media.MediaPlayer` has disavantages we should make concession, if `android.media.MediaPlayer` has defect we will consider to change other player.
Q群:490442439 验证信息:jzvd

[中文文档](README-ZH.md) [WorkPlan](https://github.com/lipangit/JiaoZiVideoPlayer/projects/2) [Weibo](http://weibo.com/2342820395/profile?topnav=1&wvr=6&is_all=1) [VideoTutorial](https://github.com/lipangit/JiaoZiVideoPlayer/wiki/%E8%A7%86%E9%A2%91%E6%95%99%E7%A8%8B)

## Features

1. Video fullscreen and float tiny window
2. Completely custom ui and function
3. In `ListView``ViewPager` and `ListView``ViewPager` and `Fragment` and other nested fragments and views situation, it works well
4. Gestrues to modify progress and volume
5. Adaptive to the screen size, where at least the width or length of the video is adaptive while the other is centered on the screen
6. It will not disturb or change the playing state when entering or exiting fullscreen
7. Gravity sensor auto fullscreen
8. WebView with local video control
9. [Support https and rtsp](https://developer.android.com/guide/topics/media/media-formats.html)
10. Less than 110kb
11. [Press home button will pause vidoe, come back goon play](https://github.com/lipangit/JiaoZiVideoPlayer/blob/develop/app/src/main/java/cn/jzvd/demo/ApiActivity.java#L117)
1. You can completely customize the UI and any function
2. Support https and rtsp agreement, more agreement please click [here](https://developer.android.com/guide/topics/media/media-formats.html)
3. Less than 110kb
4. Can achieve full-screen playback, small window playback
5. The perfect list of sliding judgment
6. Full-screen work in multiple nested modes like ListView, ViewPager and ListView, ViewPager and Fragment
7. Can load, pause, play and other normal state into the full screen and exit full screen
8. A variety of video adaptation screen mode, can be covered full screen, you can cut full screen
9. Gravity sensing automatically enter full screen
10. Full screen gestures to modify the progress and volume
11. Home key to exit the interface to suspend the playback, return to the interface to continue playing
12. WebView Nested Local Video Controls

I think the final solution to video in android is `android.media.MediaPlayer`, other players are not in the trend, even if the `android.media.MediaPlayer` has disavantages we should make concession, if `android.media.MediaPlayer` has defect we will consider to change other player.

## Effect

**[jiaozivideoplayer-6.1.1.apk](https://github.com/lipangit/JiaoZiVideoPlayer/releases/download/6.1.1/jiaozivideoplayer-6.1.1.apk)**
**[jiaozivideoplayer-6.1.2.apk](https://github.com/lipangit/JiaoZiVideoPlayer/releases/download/v6.1.2/jiaozivideoplayer-6.1.2.apk)**

![Demo Screenshot][1]

[List sliding automatically into the small window effect](http://weibo.com/tv/v/FtxpWgqmg?fid=1034:5cda6fc7f394b403d592bd9b1d5a9701)

## Usage

Even the custom UI, or has changed to the Library, is also the five steps to use the player.

1.Import library
```gradle
compile 'cn.jzvd:jiaozivideoplayer:6.1.1'
compile 'cn.jzvd:jiaozivideoplayer:6.1.2'
```

[Or download lib](https://github.com/lipangit/JiaoZiVideoPlayer/releases/tag/v6.1.1) not recommended
Or download [lib](https://github.com/lipangit/JiaoZiVideoPlayer/releases/tag/v6.1.2) (not recommended)

2.Add JZVideoPlayer in your layout
```xml
Expand Down Expand Up @@ -112,18 +117,15 @@ Need translator to make English native.

* [Group management](https://github.com/lipangit/JiaoZiVideoPlayer/wiki#%E7%BE%A4%E7%AE%A1%E7%90%86)

[熊晓清](http://blog.csdn.net/yaya_xiong) QQ:137048616

[Lionet](https://github.com/Lionet6?tab=repositories) QQ:2950527715

[montauk](https://github.com/hanmeimei888) QQ:958489121

[张展硕]() QQ:229431468
1. [熊晓清](http://blog.csdn.net/yaya_xiong) QQ:137048616
2. [Lionet](https://github.com/Lionet6?tab=repositories) QQ:2950527715
3. [montauk](https://github.com/hanmeimei888) QQ:958489121
4. [张展硕]() QQ:229431468

* [Questions and Answers](https://github.com/lipangit/JiaoZiVideoPlayer/wiki#%E9%97%AE%E9%A2%98%E8%A7%A3%E7%AD%94)

[熊晓清](http://blog.csdn.net/yaya_xiong) QQ:137048616
[の伤也快乐](https://github.com/jmhjmh) QQ:466278628
1. [熊晓清](http://blog.csdn.net/yaya_xiong) QQ:137048616
2. [の伤也快乐](https://github.com/jmhjmh) QQ:466278628

* [Wiki finishing](https://github.com/lipangit/JiaoZiVideoPlayer/wiki#wiki%E6%95%B4%E7%90%86)

Expand Down
14 changes: 7 additions & 7 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ android {
applicationId "cn.jzvd.demo"
minSdkVersion 16
targetSdkVersion 27
versionCode 69
versionName "6.1.1"
versionCode 70
versionName "6.1.2"
}
signingConfigs {
releaseConfig {
Expand All @@ -32,15 +32,15 @@ android {
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
implementation fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:27.0.0'
compile project(':jiaozivideoplayer')
compile 'com.squareup.picasso:picasso:2.5.2'
implementation 'com.android.support:appcompat-v7:27.0.0'
implementation project(':jiaozivideoplayer')
implementation 'com.squareup.picasso:picasso:2.5.2'

debugCompile 'com.squareup.leakcanary:leakcanary-android:1.5'
releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5'
testCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5'

compile 'com.android.support:recyclerview-v7:27.0.0'
implementation 'com.android.support:recyclerview-v7:27.0.0'
}
50 changes: 35 additions & 15 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />

<application
android:name=".DemoApplication"
android:name=".ApplicationDemo"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme">
<activity
android:name=".MainActivity"
android:name=".ActivityMain"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait">
<intent-filter>
Expand All @@ -24,55 +24,75 @@
</activity>

<activity
android:name=".DirectFullscreenActivity"
android:name=".ActivityDirectPlay"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" />
<activity
android:name=".ListViewActivity"
android:name=".ActivityListView"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" />
<activity
android:name=".ListViewNormalActivity"
android:name=".ActivityListViewNormal"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" />
<activity
android:name=".ListViewNormalAutoTinyActivity"
android:name=".ActivityTinyWindowListViewNormal"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" />
<activity
android:name=".ListViewFragmentViewPagerActivity"
android:name=".ActivityListViewFragmentViewPager"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" />
<activity
android:name=".ListViewMultiHolderActivity"
android:name=".ActivityListViewMultiHolder"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" />
<activity
android:name=".ApiActivity"
android:name=".ActivityTinyWindowRecycleView"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" />
<activity
android:name=".UISmallChangeActivity"
android:name=".ActivityTinyWindow"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" />
<activity
android:name=".UIBigChangeActivity"
android:name=".ActivityTinyWindowListViewMultiHolder"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" />
<activity
android:name=".RecyclerViewNormalActivity"
android:name=".ActivityTinyWindowRecycleViewMultiHolder"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" />
<activity
android:name=".WebViewActivity"
android:name=".ActivityApi"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" />
<activity
android:name=".OrientationActivity"
android:name=".ActivityApiUISmallChange"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" />
<activity
android:name=".ActivityApiUIBigChange"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" />
<activity
android:name=".ActivityApiRotationVideoSize"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" />
<activity
android:name=".ActivityListViewRecyclerView"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" />
<activity
android:name=".ActivityWebView"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" />
<activity
android:name=".ActivityApiOrientation"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="landscape" />
<activity
android:name=".ExtendsNormalActivity"
android:name=".ActivityApiExtendsNormal"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" />
</application>
Expand Down
2 changes: 0 additions & 2 deletions app/src/main/assets/jzvd.html
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,6 @@ <h3 style="width:100%;text-align:center">This is webview</h3>
var cont1=document.getElementById("cont1");
jzvd.adViewJiaoZiVideoPlayer(210,120,cont1.offsetTop,cont1.offsetLeft,1)



</script>
</body>
</html>
Loading

0 comments on commit e7348db

Please sign in to comment.