tencent cloud

Tencent Real-Time Communication

お知らせ・リリースノート
製品アップデート情報
Tencent Cloudオーディオビデオ端末SDKの再生アップグレードおよび承認チェック追加に関するお知らせ
TRTCアプリケーションのサブスクリプションパッケージサービスのリリースに関する説明について
製品の説明
製品概要
基礎概念
製品の機能
製品の強み
ユースケース
性能データ
購入ガイド
Billing Overview
無料時間の説明
Monthly subscription
Pay-as-you-go
TRTC Overdue and Suspension Policy
課金に関するよくあるご質問
Refund Instructions
初心者ガイド
Demo体験
Call
コンポーネントの説明(TUICallKit)
Activate the Service
Run Demo
クイック導入
オフライン通知
Conversational Chat
クラウドレコーディング(TUICallKit)
AI Noise Reduction
インターフェースのカスタマイズ
Calls integration to Chat
Additional Features
No UI Integration
Server APIs
Client APIs
Solution
ErrorCode
公開ログ
よくある質問
ライブ配信
Billing of Video Live Component
Overview
Activating the Service (TUILiveKit)
Demo のクイックスタート
No UI Integration
UI Customization
Live Broadcast Monitoring
Video Live Streaming
Voice Chat Room
Advanced Features
Client APIs
Server APIs
Error Codes
Release Notes
FAQs
RTC Engine
Activate Service
SDKのダウンロード
APIコードサンプル
Usage Guidelines
クライアント側 API
高度な機能
RTC RESTFUL API
History
Introduction
API Category
Room Management APIs
Stream mixing and relay APIs
On-cloud recording APIs
Data Monitoring APIs
Pull stream Relay Related interface
Web Record APIs
AI Service APIs
Cloud Slicing APIs
Cloud Moderation APIs
Making API Requests
Call Quality Monitoring APIs
Usage Statistics APIs
Data Types
Appendix
Error Codes
コンソールガイド
アプリケーション管理
使用統計
監視ダッシュボード
開発支援
Solution
Real-Time Chorus
よくあるご質問
課金関連問題
機能関連
UserSig関連
ファイアウォールの制限の対応関連
インストールパッケージの圧縮に関するご質問
AndriodおよびiOS関連
Web端末関連
Flutter関連
Electron関連
TRTCCalling Web関連
オーディオビデオ品質関連
その他のご質問
旧バージョンのドキュメント
TUIRoom(Web)の統合
TUIRoom (Android)の統合
TUIRoom (iOS)の統合
TUIRoom (Flutter)の統合
TUIRoom (Electron)の統合
TUIRoom APIのクエリー
クラウドレコーディングと再生の実現(旧)
Protocols and Policies
セキュリティコンプライアンス認証
セキュリティホワイトペーパー
情報セキュリティの説明
Service Level Agreement
Apple Privacy Policy: PrivacyInfo.xcprivacy
TRTC ポリシー
プライバシーポリシー
データ処理とセキュリティ契約
用語集

Audience Viewing(Android)

PDF
フォーカスモード
フォントサイズ
最終更新日: 2025-12-25 10:20:19
TUILiveKit's audience viewing page provides users with various and convenient live streaming and interaction features, enabling quick integration into your application to meet diverse audience needs.

Feature Overview

Live streaming: Clear and smooth viewing of the host's real-time live stream.
Interactive co-guest: Apply for mic connection to interact with the host via audio and video.
Live information: View the live streaming room title, description, and audience list, etc.
Live interactive: Send a gift (with animation effects and host notification), like (with animation and real-time statistics), and interact via bullet screen.
Live Streaming
Interactive co-guest
Live Information
Live Interactive















Quick Start

Step 1. Activate the Service

Refer to the Activate Service document to enable the Free trial or official package.

Step 2. Code Integration

Refer to Preparations guide to integrate the TUILiveKit SDK.

Step 3. Add an Audience Viewing view

In your viewer watching Activity, initialize and add the AudienceContainerView viewer watching view.
Kotlin
Java
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import com.trtc.uikit.livekit.features.audiencecontainer.AudienceContainerView
import com.trtc.uikit.livekit.features.audiencecontainer.AudienceContainerViewDefine.AudienceContainerViewListener

class YourAudienceActivity : AppCompatActivity() {
lateinit var audienceContainerView: AudienceContainerView
lateinit var listener: AudienceContainerViewListener

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// 1. Create AudienceContainerView
audienceContainerView = AudienceContainerView(this)
val roomId = "1236666"
// 2. Initialize AudienceContainerView
audienceContainerView.init(this, roomId)

// 3. (Optional) Add AudienceContainerView event monitoring
listener = object : AudienceContainerViewListener {
override fun onLiveEnded(roomId: String?, ownerName: String?, ownerAvatarUrl: String?) {
// Live streaming end event, you can handle this event as your business need, here example code: end current page after live streaming ends
finish()
}

override fun onPictureInPictureClick() {
// Picture-in-Picture button click event, you can handle this event as your business need, here example code: click the Picture-in-Picture button to convert the current page to picture-in-picture mode
enterPictureInPictureMode()
}
}
audienceContainerView.addListener(listener)
// 4. Add AudienceContainerView to the interface
setContentView(audienceContainerView)
}

override fun onDestroy() {
// 5. (Optional) If you added an event listener, it needs to be removed on page termination
audienceContainerView.removeListener(listener)
super.onDestroy()
}
}
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
import com.trtc.uikit.livekit.features.audiencecontainer.AudienceContainerView;
import com.trtc.uikit.livekit.features.audiencecontainer.AudienceContainerViewDefine;

public class YourAudienceActivity extends AppCompatActivity {
private AudienceContainerView mAudienceContainerView;
private AudienceContainerViewDefine.AudienceContainerViewListener mListener;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 1. Create AudienceContainerView
mAudienceContainerView = new AudienceContainerView(this);
// 2. Initialize AudienceContainerView
String roomId = "1236666";
mAudienceContainerView.init(this, roomId);
// 3. (Optional) Add AudienceContainerView event monitoring
mListener = new AudienceContainerViewDefine.AudienceContainerViewListener() {
@Override
public void onLiveEnded(String roomId, String ownerName, String ownerAvatarUrl) {
// Live streaming end event, you can handle this event as your business need, here example code: end current page after live streaming ends
finish();
}

@Override
public void onPictureInPictureClick() {
// Picture-in-Picture button click event, you can handle this event as your business need, here example code: click the Picture-in-Picture button to convert the current page to picture-in-picture mode
enterPictureInPictureMode();
}
};
mAudienceContainerView.addListener(mListener);
// 4. Add AudienceContainerView to the interface
setContentView(mAudienceContainerView);
}

@Override
protected void onDestroy() {
// 5. (Optional) If you added an event listener, it needs to be removed on page termination
mAudienceContainerView.removeListener(mListener);
super.onDestroy();
}
}

Step 4. Navigate to the Audience Viewing view

Usually in the live stream list, use the following code example when you need to jump to the viewer watching page:
Kotlin
Java
fun startActivity(context: Context) {
val intent = Intent(context, YourAudienceActivity::class.java)
intent.putExtra("roomId", "1236666")
context.startActivity(intent)
}
private void startActivity(Context context){
Intent intent = new Intent(context, YourAudienceActivity.class);
intent.putExtra("roomId", "1236666");
context.startActivity(intent);
}

Customize Your UI Layout

Customize the AudienceContainerView Feature Area

By calling the API of the audienceView created in Step 3, you can customize and disable (hide) the operation area or specific features on the viewer watching page:
Kotlin
Java
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import com.trtc.uikit.livekit.features.audiencecontainer.AudienceContainerView

class YourAudienceActivity : AppCompatActivity() {
lateinit var audienceContainerView: AudienceContainerView

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// 1. Create and initialize AudienceContainerView
audienceContainerView = AudienceContainerView(this)
val roomId = "1236666"
audienceContainerView.init(this, roomId)
// 2. Custom function example - forbid swiping to switch live rooms
audienceContainerView.disableSliding(true)
// 3. Add AudienceContainerView to the interface
setContentView(audienceContainerView)
}
}
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
import com.trtc.uikit.livekit.features.audiencecontainer.AudienceContainerView;

public class YourAudienceActivity extends AppCompatActivity {
private AudienceContainerView mAudienceContainerView;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 1. Create and initialize AudienceContainerView
mAudienceContainerView = new AudienceContainerView(this);
String roomId = "1236666";
mAudienceContainerView.init(this, roomId);

// 2. Custom function example - forbid swiping to switch live rooms
mAudienceContainerView.disableSliding(true);

// 3. Add AudienceContainerView to the interface
setContentView(mAudienceContainerView);
}
}
API
Description
disableHeaderLiveData(true)
Hide Top Operation Section Live Information
disableHeaderFloatWin(true)
Hide Top Operation Section Floating Window Feature
disableHeaderVisitorCnt(true)
Hide Top Operation Section Audience List Function
disableFooterCoGuest(true)
Hide Bottom Operation Section Co-Anchoring Function
disableSliding(true)
Forbid Swiping to Switch Live Rooms

Text Customization (String Resources)

TUILiveKit uses standard Android XML resource files to manage the text displayed in the UI. You can directly modify the strings that need adjustment via the XML file:


Icon Customization (Drawable Resources)

TUILiveKit uses the standard Android drawable resource folder to manage the image resources for the UI. You can quickly change the custom icons by replacing the resource files. When replacing, ensure that the new file names are consistent with the original file names.


Next Steps

Congratulations! You have successfully integrated Audience Viewing. Next, you can implement features such as host streaming, live stream list and gift system. Please refer to the table below:
Feature
Description
Integration Guide
Host Streaming
The complete workflow for a host to start a stream, including pre-stream setup and various in-stream interactions.
Live Stream List
Display the live stream list interface and features, including the live stream list and room information display.
Gift System
Support custom gift asset configuration, billing system integration, and gift-sending in PK scenarios.

FAQs

Why is the video screen black when a viewer selects video co-hosting?

Please go to App Info > Permissions > Camera and check if the camera permission is enabled. Refer to the image below:


Why can't other viewers in the live room see the barrage content sent by a viewer?

Reason 1: First check the network connection to ensure the viewer's device network is normal.
Reason 2: The viewer has been muted (banned) by the host and cannot send barrage.
Reason 3: The viewer's barrage content involves keyword blocking. Please confirm whether the content sent by the viewer complies with the live room rules.

ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック