免费试用

中文化、本土化、云端化的在线跨平台软件开发工具,支持APP、电脑端、小程序、IOS免签等等

视立方播放器SDK接入教程

准备工作

  1. 为了您体验到更完整全面的播放器功能,建议您开通 云点播 相关服务,未注册用户可注册账号 试用。若您不使用云点播服务,可略过此步骤,但集成后仅可使用播放器基础能力。
  2. 下载 Android Studio,您可以进入 Android Studio 官网 下载安装,如已下载可略过该步骤。

通过本文你可以学会

SDK 集成

步骤1:集成 SDK 开发包

下载和集成 SDK 开发包,请参考同目录下的 SDK 集成指引

步骤2:配置 License 授权

若您已获得相关 License 授权,需在 腾讯云视立方控制台 获取 License URL 和 License Key:

image

若您暂未获得 License 授权,需先参见 视频播放 License 获取相关授权。

获取到 License 信息后,在调用 SDK 的相关接口前,通过下面的接口初始化 License,建议在 Application 类中进行如下设置:

public class MApplication extends Application {

 @Override
 public void onCreate() {
 super.onCreate();
 String licenceURL = ""; // 获取到的 licence url
 String licenceKey = ""; // 获取到的 licence key
 TXLiveBase.getInstance().setLicence(this, licenceURL, licenceKey);
 TXLiveBase.setListener(new TXLiveBaseListener() {
 @Override
 public void onLicenceLoaded(int result, String reason) {
 Log.i(TAG, "onLicenceLoaded: result:" + result + ", reason:" + reason);
 }
 });
 }
}

步骤3: 添加 View

SDK 默认提供 TXCloudVideoView 用于视频渲染,我们第一步要做的就是在布局 xml 文件里加入如下一段代码:

<com.tencent.rtmp.ui.TXCloudVideoView
 android:id="@+id/video_view"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:layout_centerInParent="true"
 android:visibility="gone"/>

步骤4:创建 Player

接下来创建一个 TXVodPlayer 的对象,并使用 setPlayerView 接口将它与我们刚添加到界面上的 video_view 控件进行关联。

//mPlayerView 即步骤3中添加的视频渲染 view
TXCloudVideoView mPlayerView = findViewById(R.id.video_view);
//创建 player 对象
TXVodPlayer mVodPlayer = new TXVodPlayer(getActivity());
//关联 player 对象与视频渲染 view
mVodPlayer.setPlayerView(mPlayerView);

步骤5:启动播放

TXVodPlayer 支持两种播放模式,您可以根据需要自行选择:

TXVodPlayer 内部会自动识别播放协议,您只需要将您的播放 URL 传给 startVodPlay 函数即可。

// 播放 URL 视频资源
String url = "http://1252463788.vod2.myqcloud.com/xxxxx/v.f20.mp4";
mVodPlayer.startVodPlay(url); 


// 播放本地视频资源
String localFile = "/sdcard/video.mp4";
mVodPlayer.startVodPlay(localFile); 

步骤6:结束播放

结束播放时记得销毁 view 控件,尤其是在下次 startVodPlay 之前,否则会产生大量的内存泄露以及闪屏问题。

同时,在退出播放界面时,记得一定要调用渲染 View 的onDestroy()函数,否则可能会产生内存泄露和“Receiver not registered”报警。

@Override
public void onDestroy() {
 super.onDestroy();
 mVodPlayer.stopPlay(true); // true 代表清除最后一帧画面
 mPlayerView.onDestroy(); 
}

说明:

stopPlay 的布尔型参数含义为:“是否清除最后一帧画面”。早期版本的 RTMP SDK 的直播播放器没有 pause 的概念,所以通过这个布尔值来控制最后一帧画面的清除。

如果是点播播放结束后,也想保留最后一帧画面,您可以在收到播放结束事件后什么也不做,默认停在最后一帧。


相关知识:
java开发网页和app的区别
Java是一种通用编程语言,广泛应用于开发各种类型的应用程序,包括网页和移动应用程序。在这篇文章中,我们将详细介绍Java开发网页和移动应用程序的区别。1. 开发环境和工具网页应用程序通常使用HTML、CSS和JavaScript开发,而Java仅在后端用
2023-07-14
debian开发app
Debian是一种基于Linux的操作系统,它是一个强大的开发平台,可以用来开发各种应用程序。在本篇文章中,我将为您介绍Debian开发应用程序的原理和详细步骤。Debian作为一个开源操作系统,提供了丰富的开发工具和库,使开发者能够快速创建各种应用程序。
2023-07-14
app开发需要ui设计吗
当开发一个应用程序时,UI设计是至关重要的一环。UI(User Interface,用户界面)设计是指通过设计和布局来创造一个用户友好且吸引人的应用程序界面,以便用户能够轻松地与应用程序进行交互。以下是关于为什么UI设计对于应用程序开发的重要性以及一些UI
2023-06-29
app开发行业将会发生这些变化
APP开发行业一直是一个快速发展的市场,随着人们对智能手机和移动设备使用的增加,APP的需求也在不断增长。然而,APP开发行业也在不断地发生变化,以下是一些可能会出现的变化:1. 增加人工智能和机器学习技术人工智能和机器学习技术日益成熟,使APP具有更多的
2023-06-29
app开发类
随着移动互联网的普及,移动应用程序(App)愈发流行。很多公司和开发者投入大量时间和资源,开发出千千万万个App,满足用户在生活和工作中的需求。那么,什么是App呢?如何开发一个App呢?一、什么是App?App是一种应用程序,可以在移动设备上运行,包括智
2023-06-29
app开发工具build
APP开发工具build是一种用于构建和打包移动应用的工具,简单来说就是将开发者编写的代码,转换成可在移动设备上运行的应用程序。在开发APP时,build工具的作用非常重要,因为它能够自动化地完成编译、打包和部署等一系列过程,减少开发者的工作量,提高开发效
2023-06-29