Android客户端集成

基础功能

关于登录、消息、群组等基础IM功能,请参考文档Android SDK 介绍及导入。

直播聊天室管理

前期准备

直播聊天室功能由于要依赖于第三方直播SDK Ucloud,代码暂时放在demo里。

使用前需要先加入Ucloud的库,加入以下依赖至你项目的module级别的build.gradle文件里。

compile(name: 'ucommon-android-sdk-1.0.0', ext: 'aar')

compile(name: 'ulive-android-sdk-1.5.1', ext: 'aar')

compile(name: 'uvod-android-sdk-1.5.8', ext: 'aar')

请注意: 因为demo中的推拉流使用的是临时地址,用户在集成时需要使用“服务器集成”中的方法设置自己申请的直播的推流拉流地址。

开启直播室

开启直播有两种方法,一是创建一个的新的直播聊天室,或者选择一个已经关联好的直播室开启直播。

第一种方法:

/**

* 创建直播室

* @param name 直播室名称

* @param description 直播室描述

* @param coverUrl 直播封面图片url

*/

LiveManager.getInstance().createLiveRoom(name, desc, coverUrl);

第二种方法:

/**

* 根据指定的已经关联的直播室id创建直播

* @param name 直播室名称

* @param description 直播室描述

* @param coverUrl 直播封面图片url

* @param liveRoomId 要关联直播的直播室id

*/

LiveManager.getInstance().createLiveRoom(name, desc, coverUrl, liveRoomId);

如何关联直播室:

每次创建一个新的直播室时,创建者自动会关联此直播室,也可通过管理后台调用相应接口关联直播室。

如何获取关联的直播室列表:

调用LiveManager.getInstance().getAssociatedRooms(uerid)

结束直播

LiveManager.getInstance().terminateLiveRoom(liveId);

获取正在直播的直播室列表

/**

* 获取正在直播的直播室列表

* @param limit 取多少

* @param cursor 在这个游标基础上取数据,首次获取传null

*/

LiveManager.getInstance().getLivingRoomList(pageSize, cursor);

获取直播室详情

LiveManager.getInstance().getLiveRoomDetails(liveId);

加入直播室

直接调用聊天室的加入接口即可。

String chatroomId = liveRoom.getChatroomId();

EMClient.getInstance()

.chatroomManager()

.joinChatRoom(chatroomId,callback);

退出直播室

直接调用聊天室的退出接口即可。

String chatroomId = liveRoom.getChatroomId();

EMClient.getInstance().chatroomManager().leaveChatRoom(chatroomId);

获取直播室状态

LiveStatus status = LiveManager.getInstance().getLiveRoomStatus(liveId);

public enum LiveStatus{

not_start, //未开始

ongoing, //正在直播

completed, //直播已结束

closed //直播间已关闭

}

更新直播室封面

LiveManager.getInstance().updateLiveRoomCover(liveId, coverUrl);

发送消息

您可以使用透传消息来实现礼物,撒花等聊天室常见功能,比如cmd里面action: flower, UI上显示撒花效果,如果action: plane 就显示成送飞机做礼物

观众管理

关于直播室加人、踢人、禁言、黑名单等操作,请参考聊天室管理。

主播管理

获取用户已经关联的直播间

LiveManager.getInstance().getAssociatedRooms(liveId);

Logo

致力于链接即构和开发者,提供实时互动和元宇宙领域的前沿洞察、技术分享和丰富的开发者活动,共建实时互动世界。

更多推荐