我在實戰(zhàn)項目中用了它信夫。
更新了2.1.0版本ijkplayer的封裝
支持屏幕滑動--滑動時間,亮度,聲音,支持全屏-單屏,雙擊暫停--繼續(xù),鎖定屏幕粱栖,支持HTTP和https冀惭。最大的特點是你可以控制聲道(單聲道播放實現(xiàn)KTV功能)豹爹。實現(xiàn)了《單片購買-圖片廣告》功能
QzpcVXNlcnNcQWRtaW5pc3RyYXRvclxBcHBEYXRhXFJvYW1pbmdcRGluZ1RhbGtcNDY5MjcyMzY0X3YyXEltYWdlRmlsZXNcMTU4NzAzMjU2NzIxMl9BMjk3QzRFRC02RDA4LTRmMWUtOEVCNS03MDhEQTNFNzUxN0IucG5n.png
test (1).gif
使用
1.不要忘記項目的根目錄build.gradle配置
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
2.NurVideoPlayer的依賴庫使用最新版本
implementation 'com.gitee.nurApplication:NurVideoPlayer:2.1.9'
3.AndroidManifest.xml中
自己的activity里面添加這兩行
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait"
不要忘記L司丁4镏贰擂橘!不然全屏無效
例如:
<activity
android:name=".activityName"
android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait"/>
4.添加網(wǎng)絡(luò)權(quán)限
<uses-permission android:name="android.permission.INTERNET"/>
xml
NurVideoView是繼承```LinearLayout的
orientation是
VERTICAL``
<com.nurmemet.nur.nurvideoplayer.NurVideoView
android:id="@+id/video_view"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!--播放器下面的UI寫在這里-->
</com.nurmemet.nur.nurvideoplayer.NurVideoView>
android:layout_height=
一定要"match_parent"
參數(shù)xml中只有一個app:video_view_height
也就是視頻播放器的高度,默認值"match_parent"
默認樣式:
e81d40b9e196ff1b1a5f12ee77ae4b9.jpg
設(shè)置了
app:video_view_height="260dp"
后8d5cdff9aa4e1e5e7029692f85afc10.jpg
也就是說這里的
video_view_height
是播放器的高度
java
初始化
String url = "http://vfx.mtime.cn/Video/2019/02/04/mp4/190204084208765161.mp4";
NurVideoView videoView = findViewById(R.id.video_view);
videoView.setUp(this, url, "This is video title");
videoView.start();
需要在onPause() & onResume () & onKeyDown()
中調(diào)用
@Override
public void onBackPressed() {
if (nurVideoPlayer.getIsFullScreen()) {
nurVideoPlayer.setChangeScreen(false);
} else
super.onBackPressed();
}
@Override
protected void onPause() {
super.onPause();
nurVideoPlayer.pause();
}
@Override
protected void onResume() {
super.onResume();
nurVideoPlayer.start();
}
@Override
protected void onDestroy() {
super.onDestroy();
nurVideoPlayer.stopPlay();
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
boolean b = nurVideoPlayer.onKeyDown(keyCode);
return b || super.onKeyDown(keyCode, event);
}
參數(shù)
方法
return | 方法 | 注釋 | 作用 |
---|---|---|---|
void |
setUp(Activity activity, String url, String videoName) |
url視頻的地址,videoName | 初始化 |
void |
start(); |
開始播放 | |
void |
pause(); |
暫停 | |
void |
resume(); |
繼續(xù) | |
void |
stopPlay(); |
禁止播放 | |
void |
setMaxADView(View v) |
滿(就是播放器的上面)-廣告view | |
void |
setSmallADView(View v) |
小廣告view,單片購買等等 |
還有好多方法你自己去看吧。寞埠。屁置。。
listener(監(jiān)聽)
return | 方法 | 注釋 | 作用 |
---|---|---|---|
void |
setOnMediaListener(OnMediaListener mediaListener) |
監(jiān)聽播放進度,更改屏幕(全屏)等 | |
void |
setOnControlClickListener(OnControlClickListener controlClickListener); |
監(jiān)聽點擊事件仁连,返回按鈕蓝角,麥克風按鈕等 |
遇到了什么問題后者是出現(xiàn)了bug麻煩留言,我會盡快的修改饭冬。使鹅。。