android屏幕共享demo,屏幕共享

本文介绍了Android屏幕共享功能的使用,包括在视频会议和在线课堂中的应用场景。详细讲解了如何创建屏幕共享组件,开始和停止共享,以及开启和停止标注的操作。同时,提供了相关API的参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# 屏幕共享

功能简介:

在视频会话中为了提高沟通效率,可以将自己的屏幕内容分享给其他参与方观看。还支持在屏幕上进行标注,以及授权其他参与方进行远程控制。当屏幕共享者开启标注后,控件就进入标注模式。此时,房间内所有用户都可以进行标注,并观看他人标注的内容。

使用场景如下: 视频会议场景中,屏幕共享可以将讲话者本地的文件、数据、网页、PPT 等画面分享给其他与会人;

在线课堂场景中,屏幕共享可以将老师的课件、笔记、讲课内容等画面展示给学生观看。

注意:同一个房间中,不支持多人同时开启屏幕共享。

共享端

观看端

共享端

1.创建屏幕共享观看组件

使用可视化UI组件进行屏幕共享显示和操作 控件调用

android:id="@+id/view_screenshare"

android:layout_width="match_parent"

android:layout_height="match_parent" />

相关API请参考:

2.开始共享 接口调用:

//设置屏幕共享参数:帧率8,其他採用系統默认參數

ScreenShareCfg cfg = new ScreenShareCfg();

// 共享帧率

cfg.maxFps = 8;

// 配置共享参数

CloudroomVideoMeeting.getInstance().setScreenShareCfg(cfg);

//开启屏幕共享

/* 注:共享屏幕需要相应授权,请添加下面权限申请界面声明到主配置文件

android:name="com.cloudroom.screencapture.PermissionActivity"

android:configChanges="orientation|uiMode|screenLayout|screenSize|smallestScreenSize|locale|fontScale|keyboard|keyboardHidden|navigation"

android:launchMode="singleTop"

android:screenOrientation="sensor" >

*/

CloudroomVideoMeeting.getInstance().startScreenShare();回调通知:

// 开启结果

void startScreenShareRslt(CRVIDEOSDK_ERR_DEF sdkErr) {

if (sdkErr == CRVIDEOSDK_ERR_DEF.CRVIDEOSDK_NOERR){

//开启屏幕共享成功

...

}else{

//开启屏幕共享失败

...

}

}

相关API请参考:

3.开启标注

注意:只有主动开启屏幕共享的用户,才可以开启标注功能。 接口调用:

//开启标注

CloudroomVideoMeeting.getInstance().startScreenMark();回调通知:

//开启标注结果

void startScreenMarkRslt(CRVIDEOSDK_ERR_DEF sdkErr){

if (e.p_sdkErr == CRVIDEOSDK_NOERR){

//标注开启成功后,显示屏幕共享控件

screenshareView.setVisiblity(View.VISIBLE);

}else{

//开启标注失败

...

}

}

相关API请参考:

4.停止标注 接口调用:

//停止标注

axVideoMeeting.stopScreenMark();回调通知:

//停止标注的结果

void stopScreenMarkRslt(CRVIDEOSDK_ERR_DEF sdkErr){

//停止标注成功

...

}

相关API请参考:

5.停止共享 接口调用:

//主动停止屏幕共享

axVideoMeeting.stopScreenShare();回调通知:

//主动停止屏幕共享的结果

void stopScreenShareRslt(CRVIDEOSDK_ERR_DEF sdkErr){

...

}

观看端

1.创建屏幕共享观看组件

使用可视化UI组件进行屏幕共享显示和操作 控件调用

android:id="@+id/view_screenshare"

android:layout_width="match_parent"

android:layout_height="match_parent" />

相关API请参考:

2.通知开始共享

- 回调通知:

//收到屏幕共享通知的处理,显示屏幕共享控件

void notifyScreenShareStarted(){

screenshareView.setVisibility(View.VISIBLE);

}

相关API请参考:

3.通知开启标注

- 回调通知:

//收到屏幕共享已开启标注的通知

void notifyScreenMarkStarted() {

...

}

4.通知停止标注 回调通知:

//收到屏幕共享停止标注的通知

void notifyScreenMarkStopped(){

...

}

5.通知停止共享

//收到他人停止了屏幕共享的通知

void notifyScreenShareStopped()

{

//隐藏屏幕共享控件

screenshareView.setVisibility(View.GONE);

}

相关API请参考:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值