优酷安卓SDK 7.0.1的最简实践
2019-02-20 本文已影响0人
DevMeteor
今天给大家带来优酷安卓SDK 7.0.1的最简单的集成方法,由于效果图太大,加载不了,就不贴了。
首先给广告刷一下存在感,以防大家以为7.0.1的SDK会取消广告(手动滑稽)。
下面进入正题,由于我的AndroidStudio使用Gradle无法下载SDK的依赖,我就直接把SDK的aar包放在了项目的libs文件夹下,别忘了在app下的build.gradle文件里加上一句
implementation fileTree(dir: 'libs', include: ['*.aar'])
此外还有两个必要的依赖
implementation 'com.android.support:recyclerview-v7:28.0.0'
implementation 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'
这样SDK就能用了,按照官方Github上的Demo的文档,首先建一个Application类,在里面写上
new PlayerApplication(this).init();
YoukuProfile.CLIENT_ID = "你的client_id";
YoukuProfile.CLIENT_SECRET = "你的client_secret";
别忘了在AndroidManifest文件里声明,顺便再加个网络权限,更重要的是要在Application和播放器所在的Activity标签里分别加一个需要划重点的属性
tools:replace="android:label,android:allowBackup" //划重点,不写这句会报错
android:configChanges="orientation|keyboard|keyboardHidden|screenSize|screenLayout|uiMode"
接下来在Activity里建一个YoukuPlayer对象在oncreate中初始化,并按照文档中的方法绑定Activity的生命周期,这部分代码就不贴了。
然后到布局里写一个FrameLayout作为播放器的容器,并在Activity中绑定播放器
ViewGroup normalContainer=findViewById(R.id.player_container);
//全屏时的容器
ViewGroup fullContainer=new FrameLayout(this);
fullContainer.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
((ViewGroup)getWindow().getDecorView()).addView(fullContainer);
player.setDisplayContainer(normalContainer);
给播放器设置监听器
player.addPlayerListener(new PlayerListener() {
@Override
public void onBackButtonPressed() {
onBackPressed();
}
@Override
public void onScreenModeChanged(boolean isFullScreen) {
super.onScreenModeChanged(isFullScreen);
if (isFullScreen)
player.setDisplayContainer(fullContainer);
else
player.setDisplayContainer(normalContainer);
}
});
最后一步,播放视频
player.playVideo("测试的视频ID","");
小结
方法写的啰嗦了些,但是只要按照以上的方法就能实现基本的视频播放。