@tencentcloud/sdk-mcp 1.3.9 → 1.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +1 -1
- package/index.js.map +1 -1
- package/package.json +2 -2
- package/resource/doc/{tuicallkit/android/faq.md → callkit/faq/android-faq.md} +75 -308
- package/resource/doc/{tuicallkit/faq/common/error_code.md → callkit/faq/common/error-code.md} +2 -2
- package/resource/doc/{tuicallkit/flutter/faq.md → callkit/faq/flutter-faq.md} +83 -315
- package/resource/doc/{tuicallkit/iOS/faq.md → callkit/faq/ios-faq.md} +76 -313
- package/resource/doc/{tuicallkit/vue/faq.md → callkit/faq/web-faq.md} +78 -311
- package/resource/doc/callkit/preset/android/api.md +330 -0
- package/resource/doc/{tuicallkit → callkit/preset}/android/integration.md +63 -420
- package/resource/doc/callkit/preset/flutter/api.md +401 -0
- package/resource/doc/{tuicallkit → callkit/preset}/flutter/integration.md +53 -273
- package/resource/doc/callkit/preset/ios/api.md +282 -0
- package/resource/doc/{tuicallkit/iOS → callkit/preset/ios}/integration.md +39 -120
- package/resource/doc/callkit/preset/react/api.md +600 -0
- package/resource/doc/{tuicallkit → callkit/preset}/react/integration.md +6 -6
- package/resource/doc/callkit/preset/vue/api.md +600 -0
- package/resource/doc/{tuicallkit → callkit/preset}/vue/integration.md +5 -5
- package/resource/doc/{chatuikit → chatkit}/android/faq.md +29 -37
- package/resource/doc/{chatuikit → chatkit}/android/features/theme.md +22 -166
- package/resource/doc/{chatuikit → chatkit}/android/integration.md +30 -126
- package/resource/doc/chatkit/faq/android_sdk/client-api.md +280 -0
- package/resource/doc/{chatuikit → chatkit}/faq/common/product.md +4 -17
- package/resource/doc/{chatuikit → chatkit}/faq/common/server.md +1 -2
- package/resource/doc/chatkit/faq/flutter_sdk/client-api.md +183 -0
- package/resource/doc/{chatuikit → chatkit}/faq/flutter_sdk/faq.md +3 -3
- package/resource/doc/chatkit/faq/ios_sdk/client-api.md +279 -0
- package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/error_code.md +1 -1
- package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/faq.md +4 -4
- package/resource/doc/{chatuikit → chatkit}/flutter/features/theme.md +22 -166
- package/resource/doc/{chatuikit → chatkit}/flutter/integration.md +20 -95
- package/resource/doc/{chatuikit/iOS → chatkit/ios}/faq.md +29 -37
- package/resource/doc/{chatuikit/iOS → chatkit/ios}/features/theme.md +27 -176
- package/resource/doc/{chatuikit/iOS → chatkit/ios}/integration.md +78 -280
- package/resource/doc/{chatuikit/vue → chatkit/react}/components/avatar.md +0 -1
- package/resource/doc/{chatuikit → chatkit}/react/components/chat-header.md +7 -12
- package/resource/doc/{chatuikit → chatkit}/react/components/chat-setting.md +10 -17
- package/resource/doc/{chatuikit → chatkit}/react/components/chat.md +1 -1
- package/resource/doc/{chatuikit → chatkit}/react/components/component-list.md +0 -1
- package/resource/doc/{chatuikit → chatkit}/react/components/contact-list.md +122 -703
- package/resource/doc/chatkit/react/components/conversation-actions.md +174 -0
- package/resource/doc/chatkit/react/components/conversation-list.md +333 -0
- package/resource/doc/chatkit/react/components/conversation-preview.md +116 -0
- package/resource/doc/chatkit/react/components/conversation-search.md +57 -0
- package/resource/doc/{chatuikit → chatkit}/react/components/message-input.md +36 -186
- package/resource/doc/{chatuikit → chatkit}/react/components/message-list.md +21 -113
- package/resource/doc/chatkit/react/components/search.md +282 -0
- package/resource/doc/{chatuikit → chatkit}/react/components/tuikit.md +5 -26
- package/resource/doc/{chatuikit → chatkit}/react/integration.md +37 -104
- package/resource/doc/{chatuikit/react → chatkit/vue}/components/avatar.md +0 -1
- package/resource/doc/{chatuikit → chatkit}/vue/components/chat-header.md +7 -13
- package/resource/doc/{chatuikit → chatkit}/vue/components/chat-setting.md +13 -18
- package/resource/doc/{chatuikit → chatkit}/vue/components/chat.md +1 -2
- package/resource/doc/{chatuikit → chatkit}/vue/components/component-list.md +0 -1
- package/resource/doc/chatkit/vue/components/contact-list.md +271 -0
- package/resource/doc/chatkit/vue/components/conversation-actions.md +228 -0
- package/resource/doc/{chatuikit → chatkit}/vue/components/conversation-list.md +42 -316
- package/resource/doc/chatkit/vue/components/conversation-preview.md +213 -0
- package/resource/doc/chatkit/vue/components/conversation-search.md +50 -0
- package/resource/doc/{chatuikit → chatkit}/vue/components/message-input.md +1 -23
- package/resource/doc/{chatuikit → chatkit}/vue/components/message-list.md +23 -134
- package/resource/doc/{chatuikit → chatkit}/vue/components/search.md +73 -640
- package/resource/doc/chatkit/vue/components/tuikit.md +45 -0
- package/resource/doc/{chatuikit → chatkit}/vue/components/userpicker.md +4 -4
- package/resource/doc/{chatuikit → chatkit}/vue/faq.md +1 -1
- package/resource/doc/{chatuikit → chatkit}/vue/integration.md +53 -121
- package/resource/doc/livekit/core-sdk/live/android/api-reference/AudioEffectStore.md +283 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/BarrageStore.md +148 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/BattleStore.md +316 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/CameraView.md +57 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/CoGuestStore.md +419 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/CoHostStore.md +325 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/DeviceStore.md +436 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/GiftStore.md +165 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/LikeStore.md +49 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveAudienceStore.md +239 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveCoreView.md +74 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveSeatStore.md +417 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/LoginStore.md +207 -0
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-audience-list.md +17 -88
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-audio-effect.md +34 -192
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-barrage.md +26 -139
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-base-beauty.md +16 -99
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-co-guest-interaction.md +54 -161
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-gift.md +75 -455
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-host-interaction.md +91 -338
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-integration.md +108 -492
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-live-list.md +27 -165
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/AudioEffectStore.md +279 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BarrageStore.md +158 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BaseBeautyStore.md +155 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BattleStore.md +304 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/CoGuestStore.md +394 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/CoHostStore.md +303 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/DeviceStore.md +410 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/GiftStore.md +160 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LikeStore.md +51 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveAudienceStore.md +231 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveCoreView.md +143 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveSeatStore.md +375 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LoginStore.md +170 -0
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audience-list.md +13 -91
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audio-effect.md +34 -177
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-barrage.md +18 -102
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-base-beauty.md +24 -164
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-co-guest-interaction.md +56 -161
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-gift.md +66 -460
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-host-interaction.md +117 -364
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-integration.md +160 -543
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-live-list.md +22 -161
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/AudioEffectStore.md +287 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/BarrageStore.md +165 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/BaseBeautyStore.md +143 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/BattleStore.md +298 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/CoGuestStore.md +349 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/CoHostStore.md +297 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/DeviceStore.md +471 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/GiftStore.md +179 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/LikeStore.md +49 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveAudienceStore.md +238 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveCoreView.md +74 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveSeatStore.md +412 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/LoginStore.md +173 -0
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audience-list.md +23 -96
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audio-effect.md +33 -195
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-barrage.md +35 -150
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-base-beauty.md +20 -105
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-co-guest-interaction.md +35 -140
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-gift.md +77 -457
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-host-interaction.md +70 -317
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-integration.md +90 -473
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-live-list.md +28 -163
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-audience-list.md +17 -88
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-audio-effect.md +34 -192
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-barrage.md +26 -139
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-co-guest-interaction.md +53 -262
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-gift.md +75 -455
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-host-interaction.md +60 -272
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-integration.md +63 -440
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-room-list.md +23 -151
- package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-audience-list.md +13 -91
- package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-audio-effect.md +34 -177
- package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-barrage.md +18 -102
- package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-co-guest-interaction.md +44 -201
- package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-gift.md +66 -460
- package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-integration.md +57 -419
- package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-room-list.md +24 -157
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-audience-list.md +23 -96
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-audio-effect.md +33 -195
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-barrage.md +35 -150
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-co-guest-interaction.md +45 -254
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-gift.md +77 -457
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-host-interaction.md +52 -261
- package/resource/doc/livekit/core-sdk/voice/ios/voice-integration.md +478 -0
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-room-list.md +36 -167
- package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-audience-list.md +15 -45
- package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-audio-effect.md +23 -137
- package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-barrage.md +25 -131
- package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-co-guest-interaction.md +70 -366
- package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-gift.md +70 -424
- package/resource/doc/livekit/core-sdk/voice/uni-app/voice-integration.md +323 -0
- package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-room-list.md +24 -116
- package/resource/doc/livekit/faq/common/{error_code.md → error-code.md} +2 -3
- package/resource/doc/livekit/preset/live/vue/api-reference/index.md +780 -0
- package/resource/doc/livekit/preset/live/vue/components/barrage.md +291 -0
- package/resource/doc/livekit/{live → preset/live}/vue/components/co-guest-panel.md +9 -48
- package/resource/doc/livekit/{live → preset/live}/vue/components/live-audience-list.md +27 -145
- package/resource/doc/livekit/{live → preset/live}/vue/components/live-scene-panel.md +13 -76
- package/resource/doc/livekit/{live → preset/live}/vue/components/live-view.md +33 -224
- package/resource/doc/livekit/preset/live/vue/components/stream-mixer.md +211 -0
- package/resource/doc/livekit/preset/live/vue/faq.md +1 -0
- package/resource/doc/livekit/preset/live/vue/live-list-integration.md +244 -0
- package/resource/doc/livekit/preset/live/vue/live-player-desk-integration.md +301 -0
- package/resource/doc/livekit/preset/live/vue/live-player-h5-integration.md +307 -0
- package/resource/doc/livekit/preset/live/vue/live-pusher-integration.md +754 -0
- package/resource/doc/roomkit/android/features/call-user-to-room.md +234 -0
- package/resource/doc/roomkit/android/features/room-participant-state.md +850 -0
- package/resource/doc/roomkit/android/features/room-state.md +358 -0
- package/resource/doc/roomkit/android/features/schedule-room.md +336 -0
- package/resource/doc/roomkit/android/integration.md +433 -0
- package/resource/doc/roomkit/{common/error_code.md → faq/common/error-code.md} +1 -1
- package/resource/doc/roomkit/flutter/features/call-user-to-room.md +228 -0
- package/resource/doc/roomkit/flutter/features/room-participant-state.md +796 -0
- package/resource/doc/roomkit/flutter/features/room-state.md +324 -0
- package/resource/doc/roomkit/flutter/features/schedule-room.md +324 -0
- package/resource/doc/roomkit/flutter/integration.md +405 -0
- package/resource/doc/roomkit/ios/features/call-user-to-room.md +226 -0
- package/resource/doc/roomkit/ios/features/room-participant-state.md +821 -0
- package/resource/doc/roomkit/ios/features/room-state.md +320 -0
- package/resource/doc/roomkit/ios/features/schedule-room.md +318 -0
- package/resource/doc/roomkit/ios/integration.md +384 -0
- package/resource/doc/roomkit/vue/faq.md +1 -0
- package/resource/doc/roomkit/vue/features/call-user-to-room.md +17 -53
- package/resource/doc/roomkit/vue/features/device-detection.md +30 -48
- package/resource/doc/roomkit/vue/features/device-state.md +24 -44
- package/resource/doc/roomkit/vue/features/free-beauty-panel.md +13 -36
- package/resource/doc/roomkit/vue/features/room-chat.md +31 -89
- package/resource/doc/roomkit/vue/features/room-participant-state.md +28 -50
- package/resource/doc/roomkit/vue/features/room-state.md +25 -36
- package/resource/doc/roomkit/vue/features/room-view.md +30 -127
- package/resource/doc/roomkit/vue/features/schedule-room.md +9 -40
- package/resource/doc/roomkit/vue/features/screen-share.md +22 -90
- package/resource/doc/roomkit/vue/features/virtual-background.md +13 -34
- package/resource/doc/roomkit/vue/integration.md +21 -80
- package/resource/doc/rtcengine/faq/common/userSig.md +17 -141
- package/resource/doc/rtcengine/faq/web/web.md +15 -22
- package/resource/doc/rtcengine/web/api.md +17 -21
- package/resource/doc/rtcengine/web/how_to_integrated_web_sdk.md +4 -10
- package/resource/doc/rtcengine/web/how_to_run_web_sdk_demo.md +4 -8
- package/resource/doc/rtcengine/web/plugin/20-advanced-customized-capture-rendering.md +3 -3
- package/resource/doc/rtcengine/web/plugin/21-advanced-auto-play-policy.md +2 -3
- package/resource/doc/rtcengine/web/plugin/22-advanced-audio-mixer.md +6 -6
- package/resource/doc/rtcengine/web/plugin/23-advanced-support-detection.md +2 -2
- package/resource/doc/rtcengine/web/plugin/24-advanced-network-quality.md +2 -4
- package/resource/doc/rtcengine/web/plugin/25-advanced-device-change.md +1 -2
- package/resource/doc/rtcengine/web/plugin/26-advanced-publish-cdn-stream.md +2 -6
- package/resource/doc/rtcengine/web/plugin/27-advanced-small-stream.md +13 -14
- package/resource/doc/rtcengine/web/plugin/28-advanced-beauty.md +10 -90
- package/resource/doc/rtcengine/web/plugin/31-advanced-plugins-overview.md +5 -8
- package/resource/doc/rtcengine/web/plugin/34-advanced-proxy.md +31 -35
- package/resource/doc/rtcengine/web/plugin/35-advanced-ai-denoiser.md +0 -2
- package/resource/doc/rtcengine/web/plugin/36-advanced-virtual-background.md +7 -49
- package/resource/doc/rtcengine/web/plugin/37-advanced-voice-changer.md +1 -1
- package/resource/doc/rtcengine/web/plugin/39-advanced-video-decoder.md +0 -3
- package/resource/doc/rtcengine/web/plugin/40-advanced-video-mixer.md +20 -20
- package/resource/doc/rtcengine/web/plugin/41-advanced-small-stream-auto-switcher.md +1 -1
- package/resource/doc/rtcengine/web/plugin/42-advanced-realtime-transcriber.md +4 -4
- package/resource/doc/rtcengine/web/plugin/43-advanced-face-detection.md +3 -3
- package/resource/doc/trtc/C++/ITRTCCloud.md +718 -2847
- package/resource/doc/trtc/C++/ITRTCStatistics.md +53 -308
- package/resource/doc/trtc/C++/ITXAudioEffectManager.md +207 -1041
- package/resource/doc/trtc/C++/ITXDeviceManager.md +127 -768
- package/resource/doc/trtc/C++/TRTCCloudCallback.md +634 -2259
- package/resource/doc/trtc/C++/TRTCTypeDef.md +726 -3465
- package/resource/doc/trtc/C++/TXLiteAVCode.md +117 -916
- package/resource/doc/trtc/android/TRTCCloud.md +638 -2612
- package/resource/doc/trtc/android/TRTCCloudDef.md +769 -3697
- package/resource/doc/trtc/android/TRTCCloudListener.md +609 -2070
- package/resource/doc/trtc/android/TRTCStatistics.md +48 -278
- package/resource/doc/trtc/android/TXAudioEffectManager.md +207 -1049
- package/resource/doc/trtc/android/TXBeautyManager.md +127 -704
- package/resource/doc/trtc/android/TXDeviceManager.md +51 -318
- package/resource/doc/trtc/android/TXLiteAVCode.md +115 -900
- package/resource/doc/trtc/iOS/TRTCCloud.md +726 -2930
- package/resource/doc/trtc/iOS/TRTCCloudDelegate.md +580 -2099
- package/resource/doc/trtc/iOS/TRTCStatistics.md +48 -278
- package/resource/doc/trtc/iOS/TXAudioEffectManager.md +179 -896
- package/resource/doc/trtc/iOS/TXBeautyManager.md +128 -710
- package/resource/doc/trtc/iOS/TXDeviceManager.md +129 -772
- package/resource/doc/trtc/iOS/TXLiteAVCode.md +117 -915
- package/resource/doc/trtc/iOS/TXLiveSDKTypeDef.md +747 -3559
- package/server.js +1 -5
- package/server.js.map +1 -1
- package/tools/call/get_callkit_api.js +32 -0
- package/tools/call/get_callkit_api.js.map +1 -0
- package/tools/call/get_native_call_uikit_integration.js +34 -0
- package/tools/call/get_native_call_uikit_integration.js.map +1 -0
- package/tools/call/{get-web-call-integration.js → get_web_call_uikit_integration.js} +13 -8
- package/tools/call/get_web_call_uikit_integration.js.map +1 -0
- package/tools/chat/get_native_chat_uikit_feature_detail.js +34 -0
- package/tools/chat/get_native_chat_uikit_feature_detail.js.map +1 -0
- package/tools/chat/get_native_chat_uikit_integration.js +45 -0
- package/tools/chat/get_native_chat_uikit_integration.js.map +1 -0
- package/tools/chat/get_web_chat_uikit_component_detail.js +34 -0
- package/tools/chat/get_web_chat_uikit_component_detail.js.map +1 -0
- package/tools/chat/get_web_chat_uikit_integration.js +45 -0
- package/tools/chat/get_web_chat_uikit_integration.js.map +1 -0
- package/tools/common/get_faq.js +265 -0
- package/tools/common/get_faq.js.map +1 -0
- package/tools/common/{get-usersig.js → get_usersig.js} +6 -3
- package/tools/common/get_usersig.js.map +1 -0
- package/tools/common/present_framework_choice.js +63 -0
- package/tools/common/present_framework_choice.js.map +1 -0
- package/tools/common/record_skill_session.js +58 -0
- package/tools/common/record_skill_session.js.map +1 -0
- package/tools/definitions/get_callkit_api_def.js +28 -0
- package/tools/definitions/get_callkit_api_def.js.map +1 -0
- package/tools/definitions/get_faq_def.js +18 -19
- package/tools/definitions/get_faq_def.js.map +1 -1
- package/tools/definitions/get_native_call_uikit_integration_def.js +15 -34
- package/tools/definitions/get_native_call_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_native_chat_uikit_feature_detail_def.js +31 -0
- package/tools/definitions/get_native_chat_uikit_feature_detail_def.js.map +1 -0
- package/tools/definitions/get_native_chat_uikit_integration_def.js +16 -41
- package/tools/definitions/get_native_chat_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_native_livekit_core_features_def.js +33 -0
- package/tools/definitions/get_native_livekit_core_features_def.js.map +1 -0
- package/tools/definitions/get_native_livekit_core_integration_def.js +33 -0
- package/tools/definitions/get_native_livekit_core_integration_def.js.map +1 -0
- package/tools/definitions/get_native_trtc_sdk_docs_def.js +32 -0
- package/tools/definitions/get_native_trtc_sdk_docs_def.js.map +1 -0
- package/tools/definitions/get_usersig_def.js +17 -24
- package/tools/definitions/get_usersig_def.js.map +1 -1
- package/tools/definitions/get_web_call_uikit_integration_def.js +15 -7
- package/tools/definitions/get_web_call_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_chat_uikit_component_detail_def.js +17 -49
- package/tools/definitions/get_web_chat_uikit_component_detail_def.js.map +1 -1
- package/tools/definitions/get_web_chat_uikit_integration_def.js +16 -19
- package/tools/definitions/get_web_chat_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_live_uikit_integration_def.js +13 -18
- package/tools/definitions/get_web_live_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_livekit_api_def.js +27 -0
- package/tools/definitions/get_web_livekit_api_def.js.map +1 -0
- package/tools/definitions/get_web_livekit_component_detail_def.js +29 -0
- package/tools/definitions/get_web_livekit_component_detail_def.js.map +1 -0
- package/tools/definitions/get_web_room_uikit_integration_def.js +13 -46
- package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_roomkit_feature_detail_def.js +30 -0
- package/tools/definitions/get_web_roomkit_feature_detail_def.js.map +1 -0
- package/tools/definitions/get_web_trtc_sdk_api_def.js +25 -0
- package/tools/definitions/get_web_trtc_sdk_api_def.js.map +1 -0
- package/tools/definitions/get_web_trtc_sdk_integration_def.js +25 -0
- package/tools/definitions/get_web_trtc_sdk_integration_def.js.map +1 -0
- package/tools/definitions/get_web_trtc_sdk_plugin_def.js +25 -0
- package/tools/definitions/get_web_trtc_sdk_plugin_def.js.map +1 -0
- package/tools/definitions/present_framework_choice_def.js +23 -12
- package/tools/definitions/present_framework_choice_def.js.map +1 -1
- package/tools/definitions/record_skill_session_def.js +31 -0
- package/tools/definitions/record_skill_session_def.js.map +1 -0
- package/tools/index.js +49 -61
- package/tools/index.js.map +1 -1
- package/tools/live/get_native_livekit_core_features.js +65 -0
- package/tools/live/get_native_livekit_core_features.js.map +1 -0
- package/tools/live/get_native_livekit_core_integration.js +59 -0
- package/tools/live/get_native_livekit_core_integration.js.map +1 -0
- package/tools/live/get_web_live_uikit_integration.js +48 -0
- package/tools/live/get_web_live_uikit_integration.js.map +1 -0
- package/tools/live/get_web_livekit_api.js +32 -0
- package/tools/live/get_web_livekit_api.js.map +1 -0
- package/tools/live/get_web_livekit_component_detail.js +34 -0
- package/tools/live/get_web_livekit_component_detail.js.map +1 -0
- package/tools/room/{get-web-room-integration.js → get_web_room_uikit_integration.js} +13 -14
- package/tools/room/get_web_room_uikit_integration.js.map +1 -0
- package/tools/room/{get-web-room-feature-detail.js → get_web_roomkit_feature_detail.js} +30 -31
- package/tools/room/get_web_roomkit_feature_detail.js.map +1 -0
- package/tools/rtcengine/get_web_trtc_sdk_api.js +31 -0
- package/tools/rtcengine/get_web_trtc_sdk_api.js.map +1 -0
- package/tools/rtcengine/get_web_trtc_sdk_integration.js +31 -0
- package/tools/rtcengine/get_web_trtc_sdk_integration.js.map +1 -0
- package/tools/rtcengine/get_web_trtc_sdk_plugin.js +31 -0
- package/tools/rtcengine/get_web_trtc_sdk_plugin.js.map +1 -0
- package/tools/trtc/get_native_trtc_sdk_docs.js +73 -0
- package/tools/trtc/get_native_trtc_sdk_docs.js.map +1 -0
- package/utils/generate-structured-result.js +61 -17
- package/utils/generate-structured-result.js.map +1 -1
- package/utils/report-cls-client.js +21 -1
- package/utils/report-cls-client.js.map +1 -1
- package/utils/report-es-client.js +1 -1
- package/resource/doc/chatuikit/android/workflow.md +0 -713
- package/resource/doc/chatuikit/faq/android_sdk/client-api.md +0 -1376
- package/resource/doc/chatuikit/faq/flutter_sdk/client-api.md +0 -860
- package/resource/doc/chatuikit/faq/ios_sdk/client-api.md +0 -1371
- package/resource/doc/chatuikit/flutter/workflow.md +0 -816
- package/resource/doc/chatuikit/iOS/workflow.md +0 -0
- package/resource/doc/chatuikit/react/components/conversation-list.md +0 -765
- package/resource/doc/chatuikit/react/components/search.md +0 -885
- package/resource/doc/chatuikit/react/create-group.md +0 -22
- package/resource/doc/chatuikit/react/init.md +0 -25
- package/resource/doc/chatuikit/react/workflow.md +0 -254
- package/resource/doc/chatuikit/uniapp-app/faq.md +0 -0
- package/resource/doc/chatuikit/uniapp-app/integration.md +0 -619
- package/resource/doc/chatuikit/uniapp-app/workflow.md +0 -576
- package/resource/doc/chatuikit/vue/components/contact-list.md +0 -679
- package/resource/doc/chatuikit/vue/components/tuikit.md +0 -110
- package/resource/doc/chatuikit/vue/create-group.md +0 -26
- package/resource/doc/chatuikit/vue/init.md +0 -35
- package/resource/doc/chatuikit/vue/workflow.md +0 -395
- package/resource/doc/livekit/live/android/workflow.md +0 -322
- package/resource/doc/livekit/live/flutter/workflow.md +0 -353
- package/resource/doc/livekit/live/ios/workflow.md +0 -352
- package/resource/doc/livekit/live/vue/components/barrage.md +0 -615
- package/resource/doc/livekit/live/vue/components/stream-mixer.md +0 -442
- package/resource/doc/livekit/live/vue/faq.md +0 -0
- package/resource/doc/livekit/live/vue/live-list-integration.md +0 -195
- package/resource/doc/livekit/live/vue/live-player-desk-integration.md +0 -293
- package/resource/doc/livekit/live/vue/live-player-h5-integration.md +0 -381
- package/resource/doc/livekit/live/vue/live-pusher-integration.md +0 -598
- package/resource/doc/livekit/live/vue/states/live-state.md +0 -2656
- package/resource/doc/livekit/live/vue/workflow.md +0 -219
- package/resource/doc/livekit/voice/android/workflow.md +0 -333
- package/resource/doc/livekit/voice/flutter/workflow.md +0 -359
- package/resource/doc/livekit/voice/ios/voice-integration.md +0 -853
- package/resource/doc/livekit/voice/ios/workflow.md +0 -358
- package/resource/doc/livekit/voice/uni-app/voice-integration.md +0 -613
- package/resource/doc/livekit/voice/uni-app/workflow.md +0 -369
- package/resource/doc/native_live/android/V2TXLiveCode_api_android.md +0 -334
- package/resource/doc/native_live/android/V2TXLiveDef_api_android.md +0 -434
- package/resource/doc/native_live/android/V2TXLivePlayerObserver_api_android.md +0 -685
- package/resource/doc/native_live/android/V2TXLivePlayer_api_android.md +0 -712
- package/resource/doc/native_live/android/V2TXLivePremier_api_android.md +0 -284
- package/resource/doc/native_live/android/V2TXLivePusherObserver_api_android.md +0 -849
- package/resource/doc/native_live/android/V2TXLivePusher_api_android.md +0 -1046
- package/resource/doc/native_live/flutter/V2TXLiveCode_api_flutter.md +0 -460
- package/resource/doc/native_live/flutter/V2TXLiveDef_api_flutter.md +0 -558
- package/resource/doc/native_live/flutter/V2TXLivePlayerObserver_api_flutter.md +0 -879
- package/resource/doc/native_live/flutter/V2TXLivePlayer_api_flutter.md +0 -668
- package/resource/doc/native_live/flutter/V2TXLivePremier_api_flutter.md +0 -456
- package/resource/doc/native_live/flutter/V2TXLivePusherObserver_api_flutter.md +0 -332
- package/resource/doc/native_live/flutter/V2TXLivePusher_api_flutter.md +0 -748
- package/resource/doc/native_live/iOS/V2TXLiveCode_api_iOS.md +0 -328
- package/resource/doc/native_live/iOS/V2TXLiveDef_api_iOS.md +0 -505
- package/resource/doc/native_live/iOS/V2TXLivePlayerObserver_api_iOS.md +0 -507
- package/resource/doc/native_live/iOS/V2TXLivePlayer_api_iOS.md +0 -676
- package/resource/doc/native_live/iOS/V2TXLivePremier_api_iOS.md +0 -284
- package/resource/doc/native_live/iOS/V2TXLivePusherObserver_api_iOS.md +0 -820
- package/resource/doc/native_live/iOS/V2TXLivePusher_api_iOS.md +0 -1065
- package/resource/doc/roomkit/vue/features/workflow.md +0 -553
- package/resource/doc/roomkit/vue/workflow.md +0 -733
- package/resource/doc/tuicallkit/android/workflow.md +0 -432
- package/resource/doc/tuicallkit/faq/android_sdk/call-observer-api.md +0 -786
- package/resource/doc/tuicallkit/faq/android_sdk/callkit-api.md +0 -663
- package/resource/doc/tuicallkit/faq/flutter_sdk/call-define-api.md +0 -932
- package/resource/doc/tuicallkit/faq/flutter_sdk/call-observer-api.md +0 -926
- package/resource/doc/tuicallkit/faq/flutter_sdk/callkit-api.md +0 -452
- package/resource/doc/tuicallkit/faq/ios_sdk/call-observer-api.md +0 -779
- package/resource/doc/tuicallkit/faq/ios_sdk/callkit-api.md +0 -635
- package/resource/doc/tuicallkit/flutter/workflow.md +0 -331
- package/resource/doc/tuicallkit/react/api.md +0 -1512
- package/resource/doc/tuicallkit/react/faq.md +0 -986
- package/resource/doc/tuicallkit/vue/api.md +0 -1512
- package/tools/call/get-native-call-integration.js +0 -43
- package/tools/call/get-native-call-integration.js.map +0 -1
- package/tools/call/get-web-call-api.js +0 -27
- package/tools/call/get-web-call-api.js.map +0 -1
- package/tools/call/get-web-call-integration.js.map +0 -1
- package/tools/chat/get-native-chat-feature-detail.js +0 -30
- package/tools/chat/get-native-chat-feature-detail.js.map +0 -1
- package/tools/chat/get-native-chat-integration.js +0 -45
- package/tools/chat/get-native-chat-integration.js.map +0 -1
- package/tools/chat/get-web-chat-component-detail.js +0 -31
- package/tools/chat/get-web-chat-component-detail.js.map +0 -1
- package/tools/chat/get-web-chat-integration.js +0 -45
- package/tools/chat/get-web-chat-integration.js.map +0 -1
- package/tools/chat/get-web-chat-uikit-init.js +0 -28
- package/tools/chat/get-web-chat-uikit-init.js.map +0 -1
- package/tools/chat/get-web-create-group-doc.js +0 -28
- package/tools/chat/get-web-create-group-doc.js.map +0 -1
- package/tools/common/get-faq.js +0 -91
- package/tools/common/get-faq.js.map +0 -1
- package/tools/common/get-usersig.js.map +0 -1
- package/tools/common/present-framework-choice.js +0 -16
- package/tools/common/present-framework-choice.js.map +0 -1
- package/tools/common/present-scenario-choice.js +0 -16
- package/tools/common/present-scenario-choice.js.map +0 -1
- package/tools/common/record-prompt.js +0 -55
- package/tools/common/record-prompt.js.map +0 -1
- package/tools/common/record-result.js +0 -60
- package/tools/common/record-result.js.map +0 -1
- package/tools/definitions/get_native_chat_feature_detail_def.js +0 -32
- package/tools/definitions/get_native_chat_feature_detail_def.js.map +0 -1
- package/tools/definitions/get_native_live_api_def.js +0 -22
- package/tools/definitions/get_native_live_api_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_extra_features_def.js +0 -109
- package/tools/definitions/get_native_live_uikit_extra_features_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_integration_def.js +0 -75
- package/tools/definitions/get_native_live_uikit_integration_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_interaction_def.js +0 -63
- package/tools/definitions/get_native_live_uikit_interaction_def.js.map +0 -1
- package/tools/definitions/get_trtc_native_api_def.js +0 -17
- package/tools/definitions/get_trtc_native_api_def.js.map +0 -1
- package/tools/definitions/get_web_call_uikit_api_def.js +0 -23
- package/tools/definitions/get_web_call_uikit_api_def.js.map +0 -1
- package/tools/definitions/get_web_chat_uikit_init_def.js +0 -23
- package/tools/definitions/get_web_chat_uikit_init_def.js.map +0 -1
- package/tools/definitions/get_web_create_group_doc_def.js +0 -18
- package/tools/definitions/get_web_create_group_doc_def.js.map +0 -1
- package/tools/definitions/get_web_live_state_detail_def.js +0 -19
- package/tools/definitions/get_web_live_state_detail_def.js.map +0 -1
- package/tools/definitions/get_web_live_uikit_component_detail_def.js +0 -27
- package/tools/definitions/get_web_live_uikit_component_detail_def.js.map +0 -1
- package/tools/definitions/get_web_room_feature_detail_def.js +0 -92
- package/tools/definitions/get_web_room_feature_detail_def.js.map +0 -1
- package/tools/definitions/present_scenario_choice_def.js +0 -53
- package/tools/definitions/present_scenario_choice_def.js.map +0 -1
- package/tools/definitions/record_prompt_def.js +0 -58
- package/tools/definitions/record_prompt_def.js.map +0 -1
- package/tools/definitions/record_result_def.js +0 -46
- package/tools/definitions/record_result_def.js.map +0 -1
- package/tools/live/get-native-live-uikit-integration.js +0 -177
- package/tools/live/get-native-live-uikit-integration.js.map +0 -1
- package/tools/live/get-web-live-component-detail.js +0 -31
- package/tools/live/get-web-live-component-detail.js.map +0 -1
- package/tools/live/get-web-live-state-detail.js +0 -31
- package/tools/live/get-web-live-state-detail.js.map +0 -1
- package/tools/live/get-web-live-uikit-integration.js +0 -52
- package/tools/live/get-web-live-uikit-integration.js.map +0 -1
- package/tools/live/get_native_live_uikit_extra_features.js +0 -105
- package/tools/live/get_native_live_uikit_extra_features.js.map +0 -1
- package/tools/live/get_native_live_uikit_interaction.js +0 -194
- package/tools/live/get_native_live_uikit_interaction.js.map +0 -1
- package/tools/native_live/get-native-live-api.js +0 -31
- package/tools/native_live/get-native-live-api.js.map +0 -1
- package/tools/room/get-web-room-feature-detail.js.map +0 -1
- package/tools/room/get-web-room-integration.js.map +0 -1
- package/tools/rtcengine/get-rtcengine-web-sdk-integration.js +0 -28
- package/tools/rtcengine/get-rtcengine-web-sdk-integration.js.map +0 -1
- package/tools/rtcengine/get-trtc-sdk-faq.js +0 -32
- package/tools/rtcengine/get-trtc-sdk-faq.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-api.js +0 -28
- package/tools/rtcengine/get-trtc-web-sdk-api.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-faq.js +0 -30
- package/tools/rtcengine/get-trtc-web-sdk-faq.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-integration.js +0 -29
- package/tools/rtcengine/get-trtc-web-sdk-integration.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-plugin.js +0 -45
- package/tools/rtcengine/get-trtc-web-sdk-plugin.js.map +0 -1
- package/tools/trtc/get-trtc-native-api.js +0 -31
- package/tools/trtc/get-trtc-native-api.js.map +0 -1
- package/utils/handle-component-name.js +0 -33
- package/utils/handle-component-name.js.map +0 -1
- /package/resource/doc/{rtcengine/web → callkit/core-sdk}/.gitkeep +0 -0
- /package/resource/doc/{chatuikit → chatkit}/faq/common/server_error_code.md +0 -0
- /package/resource/doc/{chatuikit → chatkit}/flutter/faq.md +0 -0
- /package/resource/doc/{chatuikit → chatkit}/react/faq.md +0 -0
|
@@ -2,31 +2,30 @@
|
|
|
2
2
|
|
|
3
3
|
### **核心功能**
|
|
4
4
|
|
|
5
|
-
**LiveCoreView** 是一个专为直播场景设计的轻量级 `View`
|
|
5
|
+
**LiveCoreView** 是一个专为直播场景设计的轻量级 `View` 组件,是您构建直播场景的核心,它封装了所有复杂的底层直播技术(例如推拉流、连麦、音视频渲染)。您可以将 LiveCoreView 作为直播画面的"画布",专注于上层 UI 与交互的开发。
|
|
6
6
|
|
|
7
7
|
通过下方的视图层级示意图,您可以直观了解 **LiveCoreView** 在直播界面中的位置和作用:
|
|
8
8
|
|
|
9
|
-

|
|
10
|
-
|
|
11
|
-
|
|
12
9
|
## 准备工作
|
|
13
10
|
|
|
14
11
|
### 步骤1:开通服务
|
|
15
12
|
|
|
16
|
-
请参见
|
|
13
|
+
请参见 开通服务,获取体验版或付费版 SDK。
|
|
17
14
|
|
|
18
15
|
### 步骤2:在当前项目中导入 AtomicXCore
|
|
19
16
|
|
|
20
17
|
**安装组件**:请在您的 **build.gradle** 文件中添加 `implementation 'com.tencent.atomicx:atomicxcore:latest'` 依赖,然后执行 **Gradle Sync**。
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
18
|
+
|
|
19
|
+
【build.gradle.kts】
|
|
20
|
+
``` java
|
|
21
|
+
implementation("io.trtc.uikit:atomicx-core:4.0.0.110")
|
|
22
|
+
api("com.tencent.imsdk:imsdk-plus:8.9.7511")
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
【build.gradle】
|
|
26
|
+
``` java
|
|
27
|
+
implementation 'io.trtc.uikit:atomicx-core:4.0.0.110'
|
|
28
|
+
api "com.tencent.imsdk:imsdk-plus:8.9.7511"
|
|
30
29
|
```
|
|
31
30
|
|
|
32
31
|
### 步骤3:实现登录逻辑
|
|
@@ -34,10 +33,10 @@ dependencies {
|
|
|
34
33
|
在您的项目中调用 `LoginStore.shared.login`完成登录,**这是使用 **`AtomicXCore`** 所有功能的关键前提**。
|
|
35
34
|
|
|
36
35
|
> **重要:**
|
|
37
|
-
>
|
|
36
|
+
>
|
|
38
37
|
|
|
39
38
|
> 推荐在您 App 自身的用户账户登录成功后,再调用 LoginStore.shared.login,以确保登录业务逻辑的清晰和一致。
|
|
40
|
-
>
|
|
39
|
+
>
|
|
41
40
|
|
|
42
41
|
``` java
|
|
43
42
|
import android.os.Bundle
|
|
@@ -72,40 +71,11 @@ class MainActivity : AppCompatActivity() {
|
|
|
72
71
|
```
|
|
73
72
|
|
|
74
73
|
**登录接口参数说明:**
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
<td rowspan="1" colSpan="1" >说明</td>
|
|
82
|
-
</tr>
|
|
83
|
-
|
|
84
|
-
<tr>
|
|
85
|
-
<td rowspan="1" colSpan="1" >sdkAppId</td>
|
|
86
|
-
|
|
87
|
-
<td rowspan="1" colSpan="1" >Int</td>
|
|
88
|
-
|
|
89
|
-
<td rowspan="1" colSpan="1" >从 [控制台](https://console.cloud.tencent.com/trtc) 获取,通常是以 `140` 或 `160` 开头的 10 位整数。</td>
|
|
90
|
-
</tr>
|
|
91
|
-
|
|
92
|
-
<tr>
|
|
93
|
-
<td rowspan="1" colSpan="1" >userID</td>
|
|
94
|
-
|
|
95
|
-
<td rowspan="1" colSpan="1" >String</td>
|
|
96
|
-
|
|
97
|
-
<td rowspan="1" colSpan="1" >当前用户的唯一 ID,仅包含英文字母、数字、连字符和下划线。为避免多端登录冲突,**请勿使用**`1`、`123`**等简单 ID**。</td>
|
|
98
|
-
</tr>
|
|
99
|
-
|
|
100
|
-
<tr>
|
|
101
|
-
<td rowspan="1" colSpan="1" >userSig</td>
|
|
102
|
-
|
|
103
|
-
<td rowspan="1" colSpan="1" >String</td>
|
|
104
|
-
|
|
105
|
-
<td rowspan="1" colSpan="1" >用于腾讯云鉴权的票据。请注意:<br>- 开发环境:您可以采用本地 `GenerateTestUserSig.genTestSig` 函数生成 userSig 或者 通过 [UserSig 辅助工具](https://console.cloud.tencent.com/im/tool-usersig) 生成临时的 UserSig。<br>- 生产环境:为了防止密钥泄露,请务必采用服务端生成 UserSig 的方式。详细信息请参考 [服务端生成 UserSig](https://cloud.tencent.com/document/product/647/17275)。<br>更多信息请参见 [如何计算及使用 UserSig](https://cloud.tencent.com/document/product/647/17275)。</td>
|
|
106
|
-
</tr>
|
|
107
|
-
</table>
|
|
108
|
-
|
|
74
|
+
| 参数 | 类型 | 说明 |
|
|
75
|
+
| --- | --- | --- |
|
|
76
|
+
| sdkAppId | Int | 从 [控制台](https://console.cloud.tencent.com/trtc) 获取,通常是以 `140` 或 `160` 开头的 10 位整数。 |
|
|
77
|
+
| userID | String | 当前用户的唯一 ID,仅包含英文字母、数字、连字符和下划线。为避免多端登录冲突,**请勿使用**`1`、`123`**等简单 ID**。 |
|
|
78
|
+
| userSig | String | 用于腾讯云鉴权的票据。请注意:<br>- 开发环境:您可以采用本地 `GenerateTestUserSig.genTestSig` 函数生成 userSig 或者 通过 [UserSig 辅助工具](https://console.cloud.tencent.com/im/tool-usersig) 生成临时的 UserSig。<br>- 生产环境:为了防止密钥泄露,请务必采用服务端生成 UserSig 的方式。详细信息请参考 [服务端生成 UserSig](https://cloud.tencent.com/document/product/647/17275)。<br>更多信息请参见 [如何计算及使用 UserSig](https://cloud.tencent.com/document/product/647/17275)。 |
|
|
109
79
|
|
|
110
80
|
## 搭建基础直播间
|
|
111
81
|
|
|
@@ -113,18 +83,14 @@ class MainActivity : AppCompatActivity() {
|
|
|
113
83
|
|
|
114
84
|
主播开播流程如下,您只需执行以下几步操作,即可快速搭建主播视频直播。
|
|
115
85
|
|
|
116
|
-

|
|
117
|
-
|
|
118
|
-
|
|
119
86
|
> **提示:**
|
|
120
|
-
>
|
|
87
|
+
>
|
|
121
88
|
|
|
122
89
|
> 主播开播推流的业务代码,您也可以参考 TUILiveKit 开源项目中的 [VideoLiveAnchorActivity.kt](https://github.com/Tencent-RTC/TUIKit_Android/blob/main/live/tuilivekit/src/main/java/com/trtc/uikit/livekit/livestream/VideoLiveAnchorActivity.kt) 文件来了解完整的实现逻辑。
|
|
123
|
-
>
|
|
90
|
+
>
|
|
124
91
|
|
|
125
92
|
1. **初始化主播推流的视图**
|
|
126
93
|
|
|
127
|
-
|
|
128
94
|
在您的主播 Activity 中,创建一个 `LiveCoreView` 实例,并将 `viewType` 指定为 `PUSH_VIEW`(推流视图)。
|
|
129
95
|
|
|
130
96
|
``` java
|
|
@@ -133,31 +99,31 @@ class MainActivity : AppCompatActivity() {
|
|
|
133
99
|
import android.os.Bundle
|
|
134
100
|
import androidx.appcompat.app.AppCompatActivity
|
|
135
101
|
import androidx.constraintlayout.widget.ConstraintLayout
|
|
136
|
-
|
|
102
|
+
|
|
137
103
|
// YourAnchorActivity 代表您的主播开播Activity
|
|
138
104
|
class YourAnchorActivity : AppCompatActivity() {
|
|
139
|
-
|
|
105
|
+
|
|
140
106
|
// 1. 将 LiveCoreView 作为您Activity的一个属性
|
|
141
107
|
private lateinit var coreView: LiveCoreView
|
|
142
|
-
|
|
108
|
+
|
|
143
109
|
override fun onCreate(savedInstanceState: Bundle?) {
|
|
144
110
|
super.onCreate(savedInstanceState)
|
|
145
|
-
|
|
111
|
+
|
|
146
112
|
// 2. 初始化视图
|
|
147
113
|
coreView = LiveCoreView(this, viewType = CoreViewType.PUSH_VIEW)
|
|
148
114
|
coreView.setLiveID("test_live_001")
|
|
149
|
-
|
|
115
|
+
|
|
150
116
|
// 布局 UI
|
|
151
117
|
setupUI()
|
|
152
118
|
}
|
|
153
|
-
|
|
119
|
+
|
|
154
120
|
private fun setupUI() {
|
|
155
121
|
setContentView(R.layout.activity_anchor)
|
|
156
|
-
|
|
122
|
+
|
|
157
123
|
// 3. 将主播推流页面加载到您的视图上
|
|
158
124
|
val container = findViewById<ConstraintLayout>(R.id.container)
|
|
159
125
|
container.addView(coreView)
|
|
160
|
-
|
|
126
|
+
|
|
161
127
|
// 设置布局参数
|
|
162
128
|
val params = ConstraintLayout.LayoutParams(
|
|
163
129
|
ConstraintLayout.LayoutParams.MATCH_PARENT,
|
|
@@ -168,21 +134,20 @@ class MainActivity : AppCompatActivity() {
|
|
|
168
134
|
coreView.layoutParams = params
|
|
169
135
|
}
|
|
170
136
|
}
|
|
171
|
-
|
|
137
|
+
|
|
172
138
|
```
|
|
173
139
|
2. **打开摄像头和麦克风**
|
|
174
140
|
|
|
175
|
-
|
|
176
141
|
通过调用 **DeviceStore** 的 `openLocalCamera、openLocalMicrophone` 接口打开摄像头和麦克风,**您无需做额外操作,LiveCoreView 会自动预览当前摄像头的视频流**,示例代码如下:
|
|
177
142
|
|
|
178
143
|
``` java
|
|
179
144
|
import androidx.appcompat.app.AppCompatActivity
|
|
180
145
|
import android.os.Bundle
|
|
181
146
|
import io.trtc.tuikit.atomicxcore.api.device.DeviceStore
|
|
182
|
-
|
|
147
|
+
|
|
183
148
|
class YourAnchorActivity : AppCompatActivity() {
|
|
184
149
|
// ... 其他代码 ...
|
|
185
|
-
|
|
150
|
+
|
|
186
151
|
override fun onCreate(savedInstanceState: Bundle?) {
|
|
187
152
|
super.onCreate(savedInstanceState)
|
|
188
153
|
// 布局 UI
|
|
@@ -190,7 +155,7 @@ class MainActivity : AppCompatActivity() {
|
|
|
190
155
|
// 打开设备
|
|
191
156
|
openDevices()
|
|
192
157
|
}
|
|
193
|
-
|
|
158
|
+
|
|
194
159
|
private fun openDevices() {
|
|
195
160
|
// 1. 打开前置摄像头
|
|
196
161
|
DeviceStore.shared().openLocalCamera(true, completion = null)
|
|
@@ -201,7 +166,6 @@ class MainActivity : AppCompatActivity() {
|
|
|
201
166
|
```
|
|
202
167
|
3. **开始直播**
|
|
203
168
|
|
|
204
|
-
|
|
205
169
|
通过调用 **LiveListStore** 的 `createLive` 接口开始视频直播,完整示例代码如下:
|
|
206
170
|
|
|
207
171
|
``` java
|
|
@@ -210,11 +174,11 @@ class MainActivity : AppCompatActivity() {
|
|
|
210
174
|
import io.trtc.tuikit.atomicxcore.api.live.LiveInfo
|
|
211
175
|
import io.trtc.tuikit.atomicxcore.api.live.LiveInfoCompletionHandler
|
|
212
176
|
import io.trtc.tuikit.atomicxcore.api.live.LiveListStore
|
|
213
|
-
|
|
177
|
+
|
|
214
178
|
class YourAnchorActivity : AppCompatActivity() {
|
|
215
|
-
|
|
179
|
+
|
|
216
180
|
// ... 其他代码 ...
|
|
217
|
-
|
|
181
|
+
|
|
218
182
|
// 调用开播接口开始直播
|
|
219
183
|
private fun startLive() {
|
|
220
184
|
val liveInfo = LiveInfo().apply {
|
|
@@ -222,17 +186,15 @@ class MainActivity : AppCompatActivity() {
|
|
|
222
186
|
liveID = "test_live_001"
|
|
223
187
|
// 2. 设置直播的房间名称
|
|
224
188
|
liveName = "test 直播"
|
|
225
|
-
// 3.
|
|
226
|
-
|
|
227
|
-
// 4. 配置主播始终在麦位上
|
|
228
|
-
keepOwnerOnSeat = true
|
|
189
|
+
// 3. 配置布局模板,VideoDynamicGrid9Seats 为九宫格布局
|
|
190
|
+
seatTemplate = SeatLayoutTemplate.VideoDynamicGrid9Seats
|
|
229
191
|
}
|
|
230
192
|
// 5. 调用 LiveListStore.shared().createLive 开始直播
|
|
231
193
|
LiveListStore.shared().createLive(liveInfo, object: LiveInfoCompletionHandler {
|
|
232
194
|
override fun onFailure(code: Int, desc: String) {
|
|
233
195
|
Log.e("Live", "Response startLive onError: $desc")
|
|
234
196
|
}
|
|
235
|
-
|
|
197
|
+
|
|
236
198
|
override fun onSuccess(liveInfo: LiveInfo) {
|
|
237
199
|
Log.d("Live", "Response startLive onSuccess")
|
|
238
200
|
}
|
|
@@ -243,179 +205,23 @@ class MainActivity : AppCompatActivity() {
|
|
|
243
205
|
|
|
244
206
|
`LiveInfo`** 参数说明**
|
|
245
207
|
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
<
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
261
|
-
|
|
262
|
-
<td rowspan="1" colSpan="1" >必填</td>
|
|
263
|
-
|
|
264
|
-
<td rowspan="1" colSpan="1" >直播间的唯一标识符。</td>
|
|
265
|
-
</tr>
|
|
266
|
-
|
|
267
|
-
<tr>
|
|
268
|
-
<td rowspan="1" colSpan="1" >`liveName`</td>
|
|
269
|
-
|
|
270
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
271
|
-
|
|
272
|
-
<td rowspan="1" colSpan="1" >选填</td>
|
|
273
|
-
|
|
274
|
-
<td rowspan="1" colSpan="1" >直播间的标题。</td>
|
|
275
|
-
</tr>
|
|
276
|
-
|
|
277
|
-
<tr>
|
|
278
|
-
<td rowspan="1" colSpan="1" >`notice`</td>
|
|
279
|
-
|
|
280
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
281
|
-
|
|
282
|
-
<td rowspan="1" colSpan="1" >选填</td>
|
|
283
|
-
|
|
284
|
-
<td rowspan="1" colSpan="1" >直播间的公告信息。</td>
|
|
285
|
-
</tr>
|
|
286
|
-
|
|
287
|
-
<tr>
|
|
288
|
-
<td rowspan="1" colSpan="1" >`isMessageDisable`</td>
|
|
289
|
-
|
|
290
|
-
<td rowspan="1" colSpan="1" >`Boolean`</td>
|
|
291
|
-
|
|
292
|
-
<td rowspan="1" colSpan="1" >选填</td>
|
|
293
|
-
|
|
294
|
-
<td rowspan="1" colSpan="1" >是否禁言(`true`:是,`false`:否)。</td>
|
|
295
|
-
</tr>
|
|
296
|
-
|
|
297
|
-
<tr>
|
|
298
|
-
<td rowspan="1" colSpan="1" >`isPublicVisible`</td>
|
|
299
|
-
|
|
300
|
-
<td rowspan="1" colSpan="1" >`Boolean`</td>
|
|
301
|
-
|
|
302
|
-
<td rowspan="1" colSpan="1" >选填</td>
|
|
303
|
-
|
|
304
|
-
<td rowspan="1" colSpan="1" >是否公开可见(`true`:是,`false`:否)。</td>
|
|
305
|
-
</tr>
|
|
306
|
-
|
|
307
|
-
<tr>
|
|
308
|
-
<td rowspan="1" colSpan="1" >`isSeatEnabled`</td>
|
|
309
|
-
|
|
310
|
-
<td rowspan="1" colSpan="1" >`Boolean`</td>
|
|
311
|
-
|
|
312
|
-
<td rowspan="1" colSpan="1" >选填</td>
|
|
313
|
-
|
|
314
|
-
<td rowspan="1" colSpan="1" >是否启用麦位功能(`true`:是,`false`:否)。</td>
|
|
315
|
-
</tr>
|
|
316
|
-
|
|
317
|
-
<tr>
|
|
318
|
-
<td rowspan="1" colSpan="1" >`keepOwnerOnSeat`</td>
|
|
319
|
-
|
|
320
|
-
<td rowspan="1" colSpan="1" >`Boolean`</td>
|
|
321
|
-
|
|
322
|
-
<td rowspan="1" colSpan="1" >选填</td>
|
|
323
|
-
|
|
324
|
-
<td rowspan="1" colSpan="1" >是否保持房主在麦位上。</td>
|
|
325
|
-
</tr>
|
|
326
|
-
|
|
327
|
-
<tr>
|
|
328
|
-
<td rowspan="1" colSpan="1" >`maxSeatCount`</td>
|
|
329
|
-
|
|
330
|
-
<td rowspan="1" colSpan="1" >`Int`</td>
|
|
331
|
-
|
|
332
|
-
<td rowspan="1" colSpan="1" >必填</td>
|
|
333
|
-
|
|
334
|
-
<td rowspan="1" colSpan="1" >最大麦位数量。</td>
|
|
335
|
-
</tr>
|
|
336
|
-
|
|
337
|
-
<tr>
|
|
338
|
-
<td rowspan="1" colSpan="1" >`seatMode`</td>
|
|
339
|
-
|
|
340
|
-
<td rowspan="1" colSpan="1" >[TakeSeatMode](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-take-seat-mode/index.html)</td>
|
|
341
|
-
|
|
342
|
-
<td rowspan="1" colSpan="1" >选填</td>
|
|
343
|
-
|
|
344
|
-
<td rowspan="1" colSpan="1" >上麦模式(`FREE`:自由上麦,`APPLY`:申请上麦)。</td>
|
|
345
|
-
</tr>
|
|
346
|
-
|
|
347
|
-
<tr>
|
|
348
|
-
<td rowspan="1" colSpan="1" >`seatLayoutTemplateID`</td>
|
|
349
|
-
|
|
350
|
-
<td rowspan="1" colSpan="1" >`Int`</td>
|
|
351
|
-
|
|
352
|
-
<td rowspan="1" colSpan="1" >必填</td>
|
|
353
|
-
|
|
354
|
-
<td rowspan="1" colSpan="1" >麦位布局模板 `ID`。</td>
|
|
355
|
-
</tr>
|
|
356
|
-
|
|
357
|
-
<tr>
|
|
358
|
-
<td rowspan="1" colSpan="1" >`coverURL`</td>
|
|
359
|
-
|
|
360
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
361
|
-
|
|
362
|
-
<td rowspan="1" colSpan="1" >选填</td>
|
|
363
|
-
|
|
364
|
-
<td rowspan="1" colSpan="1" >直播间的封面图片地址。</td>
|
|
365
|
-
</tr>
|
|
366
|
-
|
|
367
|
-
<tr>
|
|
368
|
-
<td rowspan="1" colSpan="1" >`backgroundURL`</td>
|
|
369
|
-
|
|
370
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
371
|
-
|
|
372
|
-
<td rowspan="1" colSpan="1" >选填</td>
|
|
373
|
-
|
|
374
|
-
<td rowspan="1" colSpan="1" >直播间的背景图片地址。</td>
|
|
375
|
-
</tr>
|
|
376
|
-
|
|
377
|
-
<tr>
|
|
378
|
-
<td rowspan="1" colSpan="1" >`categoryList`</td>
|
|
379
|
-
|
|
380
|
-
<td rowspan="1" colSpan="1" >`List<Int>`</td>
|
|
381
|
-
|
|
382
|
-
<td rowspan="1" colSpan="1" >选填</td>
|
|
383
|
-
|
|
384
|
-
<td rowspan="1" colSpan="1" >直播间的分类标签列表。</td>
|
|
385
|
-
</tr>
|
|
386
|
-
|
|
387
|
-
<tr>
|
|
388
|
-
<td rowspan="4" colSpan="1" >`activityStatus`</td>
|
|
389
|
-
|
|
390
|
-
<td rowspan="4" colSpan="1" >`Int`</td>
|
|
391
|
-
|
|
392
|
-
<td rowspan="4" colSpan="1" >选填</td>
|
|
393
|
-
|
|
394
|
-
<td rowspan="4" colSpan="1" >直播活动状态。</td>
|
|
395
|
-
</tr>
|
|
396
|
-
|
|
397
|
-
<tr></tr>
|
|
398
|
-
|
|
399
|
-
<tr></tr>
|
|
400
|
-
|
|
401
|
-
<tr></tr>
|
|
402
|
-
|
|
403
|
-
<tr>
|
|
404
|
-
<td rowspan="2" colSpan="1" >`isGiftEnabled`</td>
|
|
405
|
-
|
|
406
|
-
<td rowspan="2" colSpan="1" >`Boolean`</td>
|
|
407
|
-
|
|
408
|
-
<td rowspan="2" colSpan="1" >选填</td>
|
|
409
|
-
|
|
410
|
-
<td rowspan="2" colSpan="1" >是否启用礼物功能(`true`:是,`false`:否)。</td>
|
|
411
|
-
</tr>
|
|
412
|
-
|
|
413
|
-
<tr></tr>
|
|
414
|
-
</table>
|
|
208
|
+
| **参数名** | **类型** | **属性** | **描述** |
|
|
209
|
+
| --- | --- | --- | --- |
|
|
210
|
+
| `liveID` | `String` | 必填 | 直播间的唯一标识符。 |
|
|
211
|
+
| `liveName` | `String` | 选填 | 直播间的标题。 |
|
|
212
|
+
| `notice` | `String` | 选填 | 直播间的公告信息。 |
|
|
213
|
+
| `isMessageDisable` | `Boolean` | 选填 | 是否禁言(`true`:是,`false`:否)。 |
|
|
214
|
+
| `isPublicVisible` | `Boolean` | 选填 | 是否公开可见(`true`:是,`false`:否)。 |
|
|
215
|
+
| `seatMode` | [TakeSeatMode](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-take-seat-mode/index.html) | 选填 | 上麦模式(`FREE`:自由上麦,`APPLY`:申请上麦)。 |
|
|
216
|
+
| `seatTemplate` | SeatLayoutTemplate | 必填 | 麦位布局模板。 |
|
|
217
|
+
| `coverURL` | `String` | 选填 | 直播间的封面图片地址。 |
|
|
218
|
+
| `backgroundURL` | `String` | 选填 | 直播间的背景图片地址。 |
|
|
219
|
+
| `categoryList` | `List<Int>` | 选填 | 直播间的分类标签列表。 |
|
|
220
|
+
| `activityStatus` | `Int` | 选填 | 直播活动状态。 |
|
|
221
|
+
| `isGiftEnabled` | `Boolean` | 选填 | 是否启用礼物功能(`true`:是,`false`:否)。 |
|
|
415
222
|
|
|
416
223
|
4. **结束直播**
|
|
417
224
|
|
|
418
|
-
|
|
419
225
|
直播结束后,主播可以调用 **LiveListStore** 的 `endLive` 接口结束直播。SDK 会处理停止推流和销毁房间的逻辑。
|
|
420
226
|
|
|
421
227
|
``` java
|
|
@@ -425,24 +231,24 @@ class MainActivity : AppCompatActivity() {
|
|
|
425
231
|
import io.trtc.tuikit.atomicxcore.api.device.DeviceStore
|
|
426
232
|
import io.trtc.tuikit.atomicxcore.api.live.LiveListStore
|
|
427
233
|
import io.trtc.tuikit.atomicxcore.api.live.StopLiveCompletionHandler
|
|
428
|
-
|
|
234
|
+
|
|
429
235
|
class YourAnchorActivity : AppCompatActivity() {
|
|
430
|
-
|
|
236
|
+
|
|
431
237
|
// ... 其他代码 ...
|
|
432
|
-
|
|
238
|
+
|
|
433
239
|
// 结束直播
|
|
434
240
|
private fun stopLive() {
|
|
435
241
|
LiveListStore.shared().endLive(object : StopLiveCompletionHandler {
|
|
436
242
|
override fun onSuccess(statisticsData: TUILiveListManager.LiveStatisticsData) {
|
|
437
243
|
Log.d("Live", "endLive success, duration: ${statisticsData.liveDuration}, totalViewers: ${statisticsData.totalViewers}")
|
|
438
244
|
}
|
|
439
|
-
|
|
245
|
+
|
|
440
246
|
override fun onFailure(code: Int, desc: String) {
|
|
441
247
|
Log.e("Live", "endLive error: $desc")
|
|
442
248
|
}
|
|
443
249
|
})
|
|
444
250
|
}
|
|
445
|
-
|
|
251
|
+
|
|
446
252
|
// 确保在 Activity 销毁时也调用结束直播
|
|
447
253
|
override fun onDestroy() {
|
|
448
254
|
super.onDestroy()
|
|
@@ -459,18 +265,14 @@ class MainActivity : AppCompatActivity() {
|
|
|
459
265
|
|
|
460
266
|
观众观看流程如下,通过简单几步操作,即可实现观众观看直播。
|
|
461
267
|
|
|
462
|
-

|
|
463
|
-
|
|
464
|
-
|
|
465
268
|
> **提示:**
|
|
466
|
-
>
|
|
269
|
+
>
|
|
467
270
|
|
|
468
271
|
> 观众进房拉流的业务代码,您也可以参考 TUILiveKit 开源项目中的 [VideoLiveAudienceActivity.kt](https://github.com/Tencent-RTC/TUIKit_Android/blob/main/live/tuilivekit/src/main/java/com/trtc/uikit/livekit/livestream/VideoLiveAudienceActivity.kt) 文件来了解完整的实现逻辑。
|
|
469
|
-
>
|
|
272
|
+
>
|
|
470
273
|
|
|
471
274
|
1. **添加观众拉流页面**
|
|
472
275
|
|
|
473
|
-
|
|
474
276
|
在您的观众 Activity 中,创建 `LiveCoreView` 实例,并将 `viewType` 指定为`PLAY_VIEW`(拉流视图)。
|
|
475
277
|
|
|
476
278
|
``` java
|
|
@@ -479,31 +281,31 @@ class MainActivity : AppCompatActivity() {
|
|
|
479
281
|
import android.os.Bundle
|
|
480
282
|
import androidx.appcompat.app.AppCompatActivity
|
|
481
283
|
import androidx.constraintlayout.widget.ConstraintLayout
|
|
482
|
-
|
|
284
|
+
|
|
483
285
|
// YourAudienceActivity 代表您的观众观看Activity
|
|
484
286
|
class YourAudienceActivity : AppCompatActivity() {
|
|
485
|
-
|
|
287
|
+
|
|
486
288
|
// 1. 初始化观众拉流页面
|
|
487
289
|
private lateinit var coreView: LiveCoreView
|
|
488
|
-
|
|
290
|
+
|
|
489
291
|
override fun onCreate(savedInstanceState: Bundle?) {
|
|
490
292
|
super.onCreate(savedInstanceState)
|
|
491
|
-
|
|
293
|
+
|
|
492
294
|
// 2. 初始化视图
|
|
493
295
|
coreView = LiveCoreView(this, viewType = CoreViewType.PLAY_VIEW)
|
|
494
296
|
coreView.setLiveId("test_live_001")
|
|
495
|
-
|
|
297
|
+
|
|
496
298
|
// UI 布局
|
|
497
299
|
setupUI()
|
|
498
300
|
}
|
|
499
|
-
|
|
301
|
+
|
|
500
302
|
private fun setupUI() {
|
|
501
303
|
setContentView(R.layout.activity_audience)
|
|
502
|
-
|
|
304
|
+
|
|
503
305
|
// 3. 将观众拉流页面加载到您的视图上
|
|
504
306
|
val container = findViewById<ConstraintLayout>(R.id.container)
|
|
505
307
|
container.addView(coreView)
|
|
506
|
-
|
|
308
|
+
|
|
507
309
|
// 设置布局参数
|
|
508
310
|
val params = ConstraintLayout.LayoutParams(
|
|
509
311
|
ConstraintLayout.LayoutParams.MATCH_PARENT,
|
|
@@ -517,7 +319,6 @@ class MainActivity : AppCompatActivity() {
|
|
|
517
319
|
```
|
|
518
320
|
2. **进入直播间观看**
|
|
519
321
|
|
|
520
|
-
|
|
521
322
|
通过调用 **LiveListStore** 的 `joinLive` 接口加入直播,**您无需做额外操作,LiveCoreView 会自动播放当前房间的视频流**,完整示例代码如下:
|
|
522
323
|
|
|
523
324
|
``` java
|
|
@@ -527,12 +328,12 @@ class MainActivity : AppCompatActivity() {
|
|
|
527
328
|
import android.os.Bundle
|
|
528
329
|
import androidx.appcompat.app.AppCompatActivity
|
|
529
330
|
import android.util.Log
|
|
530
|
-
|
|
331
|
+
|
|
531
332
|
// YourAudienceActivity 代表您的观众观看Activity
|
|
532
333
|
class YourAudienceActivity : AppCompatActivity() {
|
|
533
|
-
|
|
334
|
+
|
|
534
335
|
// ... 其他代码 ...
|
|
535
|
-
|
|
336
|
+
|
|
536
337
|
override fun onCreate(savedInstanceState: Bundle?) {
|
|
537
338
|
super.onCreate(savedInstanceState)
|
|
538
339
|
setupUI()
|
|
@@ -542,7 +343,7 @@ class MainActivity : AppCompatActivity() {
|
|
|
542
343
|
override fun onFailure(code: Int, desc: String) {
|
|
543
344
|
Log.e("Live", "joinLive error: $desc")
|
|
544
345
|
}
|
|
545
|
-
|
|
346
|
+
|
|
546
347
|
override fun onSuccess(liveInfo: LiveInfo) {
|
|
547
348
|
Log.d("Live", "joinLive success")
|
|
548
349
|
}
|
|
@@ -552,7 +353,6 @@ class MainActivity : AppCompatActivity() {
|
|
|
552
353
|
```
|
|
553
354
|
3. **退出直播**
|
|
554
355
|
|
|
555
|
-
|
|
556
356
|
观众退出直播间时,需要调用 **LiveListStore** 的 `leaveLive` 接口退出直播。SDK 会自动停止拉流并退出房间。
|
|
557
357
|
|
|
558
358
|
``` java
|
|
@@ -560,25 +360,25 @@ class MainActivity : AppCompatActivity() {
|
|
|
560
360
|
import io.trtc.tuikit.atomicxcore.api.CompletionHandler
|
|
561
361
|
import androidx.appcompat.app.AppCompatActivity
|
|
562
362
|
import android.util.Log
|
|
563
|
-
|
|
363
|
+
|
|
564
364
|
// YourAudienceActivity 代表您的观众观看Activity
|
|
565
365
|
class YourAudienceActivity : AppCompatActivity() {
|
|
566
|
-
|
|
366
|
+
|
|
567
367
|
// ... 其他代码 ...
|
|
568
|
-
|
|
368
|
+
|
|
569
369
|
// 退出直播
|
|
570
370
|
private fun leaveLive() {
|
|
571
371
|
LiveListStore.shared().leaveLive(object : CompletionHandler {
|
|
572
372
|
override fun onSuccess() {
|
|
573
373
|
Log.d("Live", "leaveLive success")
|
|
574
374
|
}
|
|
575
|
-
|
|
375
|
+
|
|
576
376
|
override fun onFailure(code: Int, desc: String) {
|
|
577
377
|
Log.e("Live", "leaveLive error: $desc")
|
|
578
378
|
}
|
|
579
379
|
})
|
|
580
380
|
}
|
|
581
|
-
|
|
381
|
+
|
|
582
382
|
// 确保在 Activity 销毁时也调用退出直播
|
|
583
383
|
override fun onDestroy() {
|
|
584
384
|
super.onDestroy()
|
|
@@ -604,7 +404,7 @@ import android.util.Log
|
|
|
604
404
|
|
|
605
405
|
// YourAudienceActivity 代表您的观众观看Activity
|
|
606
406
|
class YourAudienceActivity : AppCompatActivity() {
|
|
607
|
-
|
|
407
|
+
|
|
608
408
|
// ... (coreView, liveId, setupUI, joinLive, leaveLive 等代码) ...
|
|
609
409
|
|
|
610
410
|
// 2. 定义一个 LiveListListener 实例
|
|
@@ -626,15 +426,15 @@ class YourAudienceActivity : AppCompatActivity() {
|
|
|
626
426
|
|
|
627
427
|
override fun onCreate(savedInstanceState: Bundle?) {
|
|
628
428
|
super.onCreate(savedInstanceState)
|
|
629
|
-
setupUI()
|
|
630
|
-
|
|
429
|
+
setupUI()
|
|
430
|
+
|
|
631
431
|
// 3. 注册监听器
|
|
632
432
|
LiveListStore.shared().addLiveListListener(liveListListener)
|
|
633
433
|
|
|
634
434
|
// 4. 进入直播间
|
|
635
435
|
joinLive()
|
|
636
436
|
}
|
|
637
|
-
|
|
437
|
+
|
|
638
438
|
// ... joinLive() 和 leaveLive() 方法 ...
|
|
639
439
|
|
|
640
440
|
override fun onDestroy() {
|
|
@@ -649,221 +449,38 @@ class YourAudienceActivity : AppCompatActivity() {
|
|
|
649
449
|
|
|
650
450
|
### 运行效果
|
|
651
451
|
|
|
652
|
-
集成 **LiveCoreView** 后,您将得到一个纯净的视频渲染视图,它已具备完整的直播业务能力,但没有任何交互 UI。您可以参考下一章节
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
<td rowspan="1" colSpan="1" >**浮动小窗布局**</td>
|
|
660
|
-
|
|
661
|
-
<td rowspan="1" colSpan="1" >**固定宫格布局**</td>
|
|
662
|
-
|
|
663
|
-
<td rowspan="1" colSpan="1" >**固定小窗布局**</td>
|
|
664
|
-
</tr>
|
|
665
|
-
|
|
666
|
-
<tr>
|
|
667
|
-
<td rowspan="1" colSpan="1" >**模板 ID**</td>
|
|
668
|
-
|
|
669
|
-
<td rowspan="1" colSpan="1" >600</td>
|
|
670
|
-
|
|
671
|
-
<td rowspan="1" colSpan="1" >601</td>
|
|
672
|
-
|
|
673
|
-
<td rowspan="1" colSpan="1" >800</td>
|
|
674
|
-
|
|
675
|
-
<td rowspan="1" colSpan="1" >801</td>
|
|
676
|
-
</tr>
|
|
677
|
-
|
|
678
|
-
<tr>
|
|
679
|
-
<td rowspan="1" colSpan="1" >**描述**</td>
|
|
680
|
-
|
|
681
|
-
<td rowspan="1" colSpan="1" >默认布局,可根据连麦人数动态调整宫格大小。</td>
|
|
682
|
-
|
|
683
|
-
<td rowspan="1" colSpan="1" >连麦嘉宾以浮动小窗形式显示。</td>
|
|
684
|
-
|
|
685
|
-
<td rowspan="1" colSpan="1" >连麦人数固定,每个嘉宾占据一个固定宫格。</td>
|
|
686
|
-
|
|
687
|
-
<td rowspan="1" colSpan="1" >连麦人数固定,嘉宾以固定小窗形式显示。</td>
|
|
688
|
-
</tr>
|
|
689
|
-
|
|
690
|
-
<tr>
|
|
691
|
-
<td rowspan="1" colSpan="1" >**运行效果**</td>
|
|
692
|
-
|
|
693
|
-
<td rowspan="1" colSpan="1" ></td>
|
|
694
|
-
|
|
695
|
-
<td rowspan="1" colSpan="1" ></td>
|
|
696
|
-
|
|
697
|
-
<td rowspan="1" colSpan="1" ></td>
|
|
698
|
-
|
|
699
|
-
<td rowspan="1" colSpan="1" ></td>
|
|
700
|
-
</tr>
|
|
701
|
-
</table>
|
|
702
|
-
|
|
452
|
+
集成 **LiveCoreView** 后,您将得到一个纯净的视频渲染视图,它已具备完整的直播业务能力,但没有任何交互 UI。您可以参考下一章节 丰富直播场景 来完善直播场景。
|
|
453
|
+
| | **动态宫格布局** | **浮动小窗布局** | **固定宫格布局** | **固定小窗布局** |
|
|
454
|
+
| --- | --- | --- | --- | --- |
|
|
455
|
+
| **模板取值** | VideoDynamicGrid9Seats | VideoDynamicFloat7Seats | VideoFixedGrid9Seats | VideoFixedFloat7Seats |
|
|
456
|
+
| **描述** | 默认布局,可根据连麦人数动态调整宫格大小。 | 连麦嘉宾以浮动小窗形式显示。 | 连麦人数固定,每个嘉宾占据一个固定宫格。 | 连麦人数固定,嘉宾以固定小窗形式显示。 |
|
|
457
|
+
| **运行效果** | | | | |
|
|
703
458
|
|
|
704
459
|
## 丰富直播场景
|
|
705
460
|
|
|
706
461
|
当您完成了基础的直播功能后,您可以参考以下功能指南来为直播添加丰富的互动玩法。
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
<td rowspan="1" colSpan="1" >**功能 Stores**</td>
|
|
714
|
-
|
|
715
|
-
<td rowspan="1" colSpan="1" >**实现指南**</td>
|
|
716
|
-
</tr>
|
|
717
|
-
|
|
718
|
-
<tr>
|
|
719
|
-
<td rowspan="1" colSpan="1" >**实现观众音视频连线**</td>
|
|
720
|
-
|
|
721
|
-
<td rowspan="1" colSpan="1" >观众申请上麦,与主播进行实时视频互动。</td>
|
|
722
|
-
|
|
723
|
-
<td rowspan="1" colSpan="1" >[CoGuestStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-co-guest-store/index.html)</td>
|
|
724
|
-
|
|
725
|
-
<td rowspan="1" colSpan="1" >[观众连线](https://write.woa.com/document/191126685644365824)</td>
|
|
726
|
-
</tr>
|
|
727
|
-
|
|
728
|
-
<tr>
|
|
729
|
-
<td rowspan="1" colSpan="1" >**实现主播跨房连线 PK**</td>
|
|
730
|
-
|
|
731
|
-
<td rowspan="1" colSpan="1" >两个不同房间的主播进行连线,实现互动或 PK。</td>
|
|
732
|
-
|
|
733
|
-
<td rowspan="1" colSpan="1" >[CoHostStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-co-host-store/index.html)<br>[BattleStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-battle-store/index.html)</td>
|
|
734
|
-
|
|
735
|
-
<td rowspan="1" colSpan="1" >[主播连线 & PK](https://write.woa.com/document/191126527339847680)</td>
|
|
736
|
-
</tr>
|
|
737
|
-
|
|
738
|
-
<tr>
|
|
739
|
-
<td rowspan="1" colSpan="1" >**添加弹幕聊天功能**</td>
|
|
740
|
-
|
|
741
|
-
<td rowspan="1" colSpan="1" >观众可以在直播间发送和接收实时文字消息。</td>
|
|
742
|
-
|
|
743
|
-
<td rowspan="1" colSpan="1" >[BarrageStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.barrage/-barrage-store/index.html)</td>
|
|
744
|
-
|
|
745
|
-
<td rowspan="1" colSpan="1" >[实现弹幕功能](https://write.woa.com/document/191126771034308608)</td>
|
|
746
|
-
</tr>
|
|
747
|
-
|
|
748
|
-
<tr>
|
|
749
|
-
<td rowspan="1" colSpan="1" >**构建礼物赠送系统**</td>
|
|
750
|
-
|
|
751
|
-
<td rowspan="1" colSpan="1" >观众可以向主播赠送虚拟礼物,增加互动和趣味性。</td>
|
|
752
|
-
|
|
753
|
-
<td rowspan="1" colSpan="1" >[GiftStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.gift/-gift-store/index.html)</td>
|
|
754
|
-
|
|
755
|
-
<td rowspan="1" colSpan="1" >[实现礼物功能](https://write.woa.com/document/191126992871682048)</td>
|
|
756
|
-
</tr>
|
|
757
|
-
</table>
|
|
758
|
-
|
|
462
|
+
| **直播功能** | **功能介绍** | **功能 Stores** | **实现指南** |
|
|
463
|
+
| --- | --- | --- | --- |
|
|
464
|
+
| **实现观众音视频连线** | 观众申请上麦,与主播进行实时视频互动。 | [CoGuestStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-co-guest-store/index.html) | 观众连线 |
|
|
465
|
+
| **实现主播跨房连线 PK** | 两个不同房间的主播进行连线,实现互动或 PK。 | [CoHostStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-co-host-store/index.html)<br>[BattleStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-battle-store/index.html) | 主播连线 & PK |
|
|
466
|
+
| **添加弹幕聊天功能** | 观众可以在直播间发送和接收实时文字消息。 | [BarrageStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.barrage/-barrage-store/index.html) | 实现弹幕功能 |
|
|
467
|
+
| **构建礼物赠送系统** | 观众可以向主播赠送虚拟礼物,增加互动和趣味性。 | [GiftStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.gift/-gift-store/index.html) | 实现礼物功能 |
|
|
759
468
|
|
|
760
469
|
## API 文档
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
<td rowspan="1" colSpan="1" >[API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.view/-live-core-view/index.html)</td>
|
|
776
|
-
</tr>
|
|
777
|
-
|
|
778
|
-
<tr>
|
|
779
|
-
<td rowspan="1" colSpan="1" >**LiveListStore**</td>
|
|
780
|
-
|
|
781
|
-
<td rowspan="1" colSpan="1" >直播间全生命周期管理:创建 / 加入 / 离开 / 销毁房间,查询房间列表,修改直播信息(名称、公告等),监听直播状态(如被踢出、结束)。</td>
|
|
782
|
-
|
|
783
|
-
<td rowspan="1" colSpan="1" >[API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-live-list-store/index.html)</td>
|
|
784
|
-
</tr>
|
|
785
|
-
|
|
786
|
-
<tr>
|
|
787
|
-
<td rowspan="1" colSpan="1" >**DeviceStore**</td>
|
|
788
|
-
|
|
789
|
-
<td rowspan="1" colSpan="1" >音视频设备控制:麦克风(开关 / 音量)、摄像头(开关 / 切换 / 画质)、屏幕共享,设备状态实时监听。</td>
|
|
790
|
-
|
|
791
|
-
<td rowspan="1" colSpan="1" >[API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.device/-device-store/index.html)</td>
|
|
792
|
-
</tr>
|
|
793
|
-
|
|
794
|
-
<tr>
|
|
795
|
-
<td rowspan="1" colSpan="1" >**CoGuestStore**</td>
|
|
796
|
-
|
|
797
|
-
<td rowspan="1" colSpan="1" >观众连麦管理:连麦申请 / 邀请 / 同意 / 拒绝,连麦成员权限控制(麦克风 / 摄像头),状态同步。</td>
|
|
798
|
-
|
|
799
|
-
<td rowspan="1" colSpan="1" >[API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-co-guest-store/index.html)</td>
|
|
800
|
-
</tr>
|
|
801
|
-
|
|
802
|
-
<tr>
|
|
803
|
-
<td rowspan="1" colSpan="1" >**CoHostStore**</td>
|
|
804
|
-
|
|
805
|
-
<td rowspan="1" colSpan="1" >主播跨房连线:支持多布局模板(动态网格等),发起 / 接受 / 拒绝连线,连麦主播互动管理。</td>
|
|
806
|
-
|
|
807
|
-
<td rowspan="1" colSpan="1" >[API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-co-host-store/index.html)</td>
|
|
808
|
-
</tr>
|
|
809
|
-
|
|
810
|
-
<tr>
|
|
811
|
-
<td rowspan="1" colSpan="1" >**BattleStore**</td>
|
|
812
|
-
|
|
813
|
-
<td rowspan="1" colSpan="1" >主播 PK 对战:发起 PK(配置时长 / 对手),管理 PK 状态(开始 / 结束),同步分数,监听对战结果。</td>
|
|
814
|
-
|
|
815
|
-
<td rowspan="1" colSpan="1" >[API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-battle-store/index.html)</td>
|
|
816
|
-
</tr>
|
|
817
|
-
|
|
818
|
-
<tr>
|
|
819
|
-
<td rowspan="1" colSpan="1" >**GiftStore**</td>
|
|
820
|
-
|
|
821
|
-
<td rowspan="1" colSpan="1" >礼物互动:获取礼物列表,发送 / 接收礼物,监听礼物事件(含发送者、礼物详情)。</td>
|
|
822
|
-
|
|
823
|
-
<td rowspan="1" colSpan="1" >[API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.gift/-gift-store/index.html)</td>
|
|
824
|
-
</tr>
|
|
825
|
-
|
|
826
|
-
<tr>
|
|
827
|
-
<td rowspan="1" colSpan="1" >**BarrageStore**</td>
|
|
828
|
-
|
|
829
|
-
<td rowspan="1" colSpan="1" >弹幕功能:发送文本 / 自定义弹幕,维护弹幕列表,实时监听弹幕状态。</td>
|
|
830
|
-
|
|
831
|
-
<td rowspan="1" colSpan="1" >[API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.barrage/-barrage-store/index.html)</td>
|
|
832
|
-
</tr>
|
|
833
|
-
|
|
834
|
-
<tr>
|
|
835
|
-
<td rowspan="1" colSpan="1" >**LikeStore**</td>
|
|
836
|
-
|
|
837
|
-
<td rowspan="1" colSpan="1" >点赞互动:发送点赞,监听点赞事件,同步总点赞数。</td>
|
|
838
|
-
|
|
839
|
-
<td rowspan="1" colSpan="1" >[API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-like-store/index.html)</td>
|
|
840
|
-
</tr>
|
|
841
|
-
|
|
842
|
-
<tr>
|
|
843
|
-
<td rowspan="1" colSpan="1" >**LiveAudienceStore**</td>
|
|
844
|
-
|
|
845
|
-
<td rowspan="1" colSpan="1" >观众管理:获取实时观众列表(ID / 名称 / 头像),统计观众数量,监听观众进出事件。</td>
|
|
846
|
-
|
|
847
|
-
<td rowspan="1" colSpan="1" >[API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-live-audience-store/index.html)</td>
|
|
848
|
-
</tr>
|
|
849
|
-
|
|
850
|
-
<tr>
|
|
851
|
-
<td rowspan="1" colSpan="1" >**AudioEffectStore**</td>
|
|
852
|
-
|
|
853
|
-
<td rowspan="1" colSpan="1" >音频特效:变声(童声 / 男声)、混响(KTV 等)、耳返调节,实时切换特效。</td>
|
|
854
|
-
|
|
855
|
-
<td rowspan="1" colSpan="1" >[API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.device/-audio-effect-store/index.html)</td>
|
|
856
|
-
</tr>
|
|
857
|
-
|
|
858
|
-
<tr>
|
|
859
|
-
<td rowspan="1" colSpan="1" >**BaseBeautyStore**</td>
|
|
860
|
-
|
|
861
|
-
<td rowspan="1" colSpan="1" >基础美颜:调节磨皮 / 美白 / 红润(0-100 级),重置美颜状态,同步效果参数。</td>
|
|
862
|
-
|
|
863
|
-
<td rowspan="1" colSpan="1" >[API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.device/-base-beauty-store/index.html)</td>
|
|
864
|
-
</tr>
|
|
865
|
-
</table>
|
|
866
|
-
|
|
470
|
+
| **Store/Component** | **功能描述** | **API 文档** |
|
|
471
|
+
| --- | --- | --- |
|
|
472
|
+
| **LiveCoreView** | 直播视频流展示与交互的核心视图组件:负责视频流渲染和视图挂件处理,支持主播直播、观众连麦、主播连线等场景。 | [API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.view/-live-core-view/index.html) |
|
|
473
|
+
| **LiveListStore** | 直播间全生命周期管理:创建 / 加入 / 离开 / 销毁房间,查询房间列表,修改直播信息(名称、公告等),监听直播状态(如被踢出、结束)。 | [API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-live-list-store/index.html) |
|
|
474
|
+
| **DeviceStore** | 音视频设备控制:麦克风(开关 / 音量)、摄像头(开关 / 切换 / 画质)、屏幕共享,设备状态实时监听。 | [API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.device/-device-store/index.html) |
|
|
475
|
+
| **CoGuestStore** | 观众连麦管理:连麦申请 / 邀请 / 同意 / 拒绝,连麦成员权限控制(麦克风 / 摄像头),状态同步。 | [API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-co-guest-store/index.html) |
|
|
476
|
+
| **CoHostStore** | 主播跨房连线:支持多布局模板(动态网格等),发起 / 接受 / 拒绝连线,连麦主播互动管理。 | [API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-co-host-store/index.html) |
|
|
477
|
+
| **BattleStore** | 主播 PK 对战:发起 PK(配置时长 / 对手),管理 PK 状态(开始 / 结束),同步分数,监听对战结果。 | [API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-battle-store/index.html) |
|
|
478
|
+
| **GiftStore** | 礼物互动:获取礼物列表,发送 / 接收礼物,监听礼物事件(含发送者、礼物详情)。 | [API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.gift/-gift-store/index.html) |
|
|
479
|
+
| **BarrageStore** | 弹幕功能:发送文本 / 自定义弹幕,维护弹幕列表,实时监听弹幕状态。 | [API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.barrage/-barrage-store/index.html) |
|
|
480
|
+
| **LikeStore** | 点赞互动:发送点赞,监听点赞事件,同步总点赞数。 | [API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-like-store/index.html) |
|
|
481
|
+
| **LiveAudienceStore** | 观众管理:获取实时观众列表(ID / 名称 / 头像),统计观众数量,监听观众进出事件。 | [API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-live-audience-store/index.html) |
|
|
482
|
+
| **AudioEffectStore** | 音频特效:变声(童声 / 男声)、混响(KTV 等)、耳返调节,实时切换特效。 | [API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.device/-audio-effect-store/index.html) |
|
|
483
|
+
| **BaseBeautyStore** | 基础美颜:调节磨皮 / 美白 / 红润(0-100 级),重置美颜状态,同步效果参数。 | [API 文档](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.device/-base-beauty-store/index.html) |
|
|
867
484
|
|
|
868
485
|
## 常见问题
|
|
869
486
|
|
|
@@ -876,7 +493,6 @@ class YourAudienceActivity : AppCompatActivity() {
|
|
|
876
493
|
|
|
877
494
|
- **检查网络**:请检查设备网络连接是否正常。
|
|
878
495
|
|
|
879
|
-
|
|
880
496
|
### 主播端打开摄像头后,开播后可以看到本地视频预览画面,开播前视频预览是黑屏?
|
|
881
497
|
- **检查主播端**:请检查主播推流视图`LiveCoreView` 的 `viewType`是否配置为`PUSH_VIEW`。
|
|
882
498
|
|