发现了ijkplayer播放器,支持android 和ios
我们用AndroidStudio新建project名字是bilibili_ijkplayer(ijk 开发者常用的3个变量名称)
第一步:在project的build gradle中添加
maven { url "https://jitpack.io" }
第二步:在app的build.gradle中添加
implementation 'com.github.open-android:IjkPlayer:1.0.0'
image.png
第三步:Sync Now同步一下
第四步:开发了
因为我们只是先加载一个播放器,所以只有一个主Activity MainActiity
其布局activity_main为
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<com.dl7.player.media.IjkPlayerView
android:id="@+id/player_view"
android:layout_width="match_parent"
android:layout_height="200dp"/>
</android.support.constraint.ConstraintLayout>
MainActivity.java
package com.example.bilibili_ijkplayer;
import android.content.res.Configuration;
import android.net.Uri;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.KeyEvent;
import com.dl7.player.media.IjkPlayerView;
public class MainActivity extends AppCompatActivity {
IjkPlayerView mPlayerView;
Uri mUri;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//mPlayerView 播放view
mPlayerView = (IjkPlayerView) findViewById(R.id.player_view);
//网址↓
mUri = Uri.parse("http://www.520mylove.com/1.mp4");
mPlayerView.init()
.setVideoPath(mUri)
.setMediaQuality(IjkPlayerView.MEDIA_QUALITY_HIGH)
.enableDanmaku()
.start();
}
@Override
protected void onResume() {
super.onResume();
mPlayerView.onResume();
}
@Override
protected void onPause() {
super.onPause();
mPlayerView.onPause();
}
@Override
protected void onDestroy() {
super.onDestroy();
mPlayerView.onDestroy();
}
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
mPlayerView.configurationChanged(newConfig);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (mPlayerView.handleVolumeKey(keyCode)) {
return true;
}
return super.onKeyDown(keyCode, event);
}
@Override
public void onBackPressed() {
if (mPlayerView.onBackPressed()) {
return;
}
super.onBackPressed();
}
}
其中的mPlayerView为播放器的控件
mUrl为播放地址
我们开发时只需要根据情况更改mUrl的值即可
具体效果:
image.png
网友评论