제품 업데이트
Tencent Cloud 오디오/비디오 단말 SDK 재생 업그레이드 및 권한 부여 인증 추가
TRTC 월간 구독 패키지 출시 관련 안내

setting.gradle에서 가져오기를 완료합니다.include ':Source'include ':Debug'
api project(':Source')
build.gradle 파일에 TRTC SDK 및 IM SDK에 대한 종속성을 추가합니다.ext {liteavSdk = "com.tencent.liteav:LiteAVSDK_TRTCl:latest.release"imSdk = "com.tencent.imsdk:imsdk-plus:latest.release"}
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /> // 사용 사례: 이 권한은 플로팅 창에 필요;<uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /><uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /><uses-permission android:name="android.permission.RECORD_AUDIO" /><uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /><uses-permission android:name="android.permission.BLUETOOTH" /> // 사용 사례: 블루투스 헤드셋 사용 시 이 권한이 필요함;
-keep class com.tencent.** { *; }
// 1. 초기화TRTCKaraokeRoom mTRTCKaraokeRoom = TRTCKaraokeRoom.sharedInstance(this);mTRTCKaraokeRoom.setDelegate(this);// 2. 로그인mTRTCKaraokeRoom.login(SDKAppID, UserID, UserSig, new TRTCKaraokeRoomCallback.ActionCallback() {@Overridepublic void onCallback(int code, String msg) {if (code == 0) {//로그인 성공}}});

int roomId = "방 ID";TRTCKaraokeRoomDef.RoomParam roomParam = new TRTCKaraokeRoomDef.RoomParam();roomParam.roomName = "방 이름";roomParam.needRequest = false; // 마이크 연결 시 방 주인 확인 필요 여부roomParam.seatCount = 8; // 방의 좌석 수. 8개로 설정roomParam.coverUrl = "방 표지 이미지의 URL";mTRTCKaraokeRoom.createRoom(roomId, roomParam, new TRTCKaraokeRoomCallback.ActionCallback() {@Overridepublic void onCallback(int code, String msg) {if (code == 0) {//방 생성 성공}}});
mTRTCKaraokeRoom.enterRoom(roomId, new TRTCKaraokeRoomCallback.ActionCallback() {@Overridepublic void onCallback(int code, String msg) {if (code == 0) {//방 들어가기 성공}}});
// 1. 청취자가 마이크를 켜기 위해 API 호출int seatIndex = 1;mTRTCKaraokeRoom.enterSeat(seatIndex, new TRTCKaraokeRoomCallback.ActionCallback() {@Overridepublic void onCallback(int code, String msg) {if (code == 0) {//마이크 활성화 성공}}});// 2. 청취자는 onSeatListChange 콜백을 수신하고 좌석 목록을 새로고침함@Overridepublic void onSeatListChange(final List<TRTCKaraokeRoomDef.SeatInfo> seatInfoList) {}
//음악 재생mTRTCKaraokeRoom.startPlayMusic(musicID,url);//음악 중지mTRTCKaraokeRoom.stopPlayMusic();
// 발신측: 텍스트 메시지 발송mTRTCKaraokeRoom.sendRoomTextMsg("Hello Word!", new TRTCKaraokeRoomCallback.ActionCallback() {@Overridepublic void onCallback(int code, String msg) {if (code == 0) {//전송 성공}}});// 수신측: 텍스트 메시지 수신mTRTCKaraokeRoom.setDelegate(new TRTCKaraokeRoomDelegate() {@Overridepublic void onRecvRoomTextMsg(String message, TRTCKaraokeRoomDef.UserInfo userInfo) {Log.d(TAG, userInfo.userName + "님이 발송한 메시지:" + message);}});
// 발신측: 선물 메시지를 구별하기 위해 "CMD_GIFT"를 사용자 정의합니다.mTRTCKaraokeRoom.sendRoomCustomMsg("CMD_GIFT",date, new TRTCKaraokeRoomCallback.ActionCallback() {@Overridepublic void onCallback(int code, String msg) {if (code == 0) {//전송 성공}}});// 수신측: 선물 메시지 수신mTRTCKaraokeRoom.setDelegate(new TRTCKaraokeRoomDelegate() {@Overridepublic void onRecvRoomCustomMsg(String cmd, String message, TRTCKaraokeRoomDef.UserInfo userInfo) {if ("CMD_GIFT".equals(cmd)) {// 선물 메시지 수신Log.d(TAG, userInfo.userName + "님이 보낸" + "선물을 받았습니다." + message);}}});
피드백