Browse Source

trtc simple dmoe 可用版本

gavin.chen 1 year ago
parent
commit
554b7e2f6f

+ 4 - 4
ios/Runner/GeneratedPluginRegistrant.m

@@ -6,10 +6,10 @@
 
 #import "GeneratedPluginRegistrant.h"
 
-#if __has_include(<path_provider_ios/FLTPathProviderPlugin.h>)
-#import <path_provider_ios/FLTPathProviderPlugin.h>
+#if __has_include(<path_provider_foundation/PathProviderPlugin.h>)
+#import <path_provider_foundation/PathProviderPlugin.h>
 #else
-@import path_provider_ios;
+@import path_provider_foundation;
 #endif
 
 #if __has_include(<permission_handler/PermissionHandlerPlugin.h>)
@@ -33,7 +33,7 @@
 @implementation GeneratedPluginRegistrant
 
 + (void)registerWithRegistry:(NSObject<FlutterPluginRegistry>*)registry {
-  [FLTPathProviderPlugin registerWithRegistrar:[registry registrarForPlugin:@"FLTPathProviderPlugin"]];
+  [PathProviderPlugin registerWithRegistrar:[registry registrarForPlugin:@"PathProviderPlugin"]];
   [PermissionHandlerPlugin registerWithRegistrar:[registry registrarForPlugin:@"PermissionHandlerPlugin"]];
   [ReplayKitLauncherPlugin registerWithRegistrar:[registry registrarForPlugin:@"ReplayKitLauncherPlugin"]];
   [TencentTRTCCloud registerWithRegistrar:[registry registrarForPlugin:@"TencentTRTCCloud"]];

+ 8 - 2
lib/page/trtcmeetingdemo/meeting.dart

@@ -387,7 +387,13 @@ class MeetingPageState extends State<MeetingPage> with WidgetsBindingObserver {
             ),
             TextButton(
               child: Text("Confirm"),
-              onPressed: () {
+              onPressed: () async {
+                /// close trtc
+                await trtcCloud.stopPublishing();
+                await trtcCloud.stopLocalPreview();
+                await trtcCloud.stopAllRemoteView();
+                await trtcCloud.stopLocalAudio();
+                await trtcCloud.exitRoom();
                 Navigator.of(context).pop(true);
               },
             ),
@@ -575,7 +581,7 @@ class MeetingPageState extends State<MeetingPage> with WidgetsBindingObserver {
                 width: width,
                 height: height,
                 //// TOTODODO 加一个渲染条件字段 :副窗口
-                isSubVideo: false,
+                // isSubVideo: false,
               ),
               onViewCreated: (viewId) async {
                 print('🚀 视图创建完成 viewId: $viewId');

+ 1 - 1
macos/Flutter/GeneratedPluginRegistrant.swift

@@ -5,7 +5,7 @@
 import FlutterMacOS
 import Foundation
 
-import path_provider_macos
+import path_provider_foundation
 import tencent_trtc_cloud
 
 func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {

+ 0 - 201
output.puml

@@ -1,201 +0,0 @@
-@startuml
-set namespaceSeparator ::
-
-class "trtc_demo::debug::GenerateTestUserSig.dart::GenerateTestUserSig" {
-  {static} +int sdkAppId
-  {static} +int expireTime
-  {static} +String secretKey
-  {static} +dynamic genTestSig()
-  {static} -int _getCurrentTime()
-  {static} -String _hmacsha256()
-  {static} -String _escape()
-}
-
-class "trtc_demo::debug::JsGenerateTestUserSig.dart::JsGenerateTestUserSig" {
-  +dynamic constructor()
-  +String jsGenTestUserSig()
-}
-
-class "trtc_demo::main.dart::MyApp" {
-  +_MyAppState createState()
-}
-
-"flutter::src::widgets::framework.dart::StatefulWidget" <|-- "trtc_demo::main.dart::MyApp"
-
-class "trtc_demo::main.dart::_MyAppState" {
-  +Widget build()
-}
-
-"flutter::src::widgets::framework.dart::State" <|-- "trtc_demo::main.dart::_MyAppState"
-
-class "trtc_demo::models::meeting.dart::MeetingModel" {
-  -List<dynamic> _userList
-  -Map<dynamic, dynamic> _userInfo
-  -Map<dynamic, dynamic> _userSetting
-  +UnmodifiableListView<dynamic> userList
-  +void setList()
-  +void setUserInfo()
-  +void setUserSettig()
-  +dynamic getUserSetting()
-  +dynamic getUserInfo()
-  +dynamic getList()
-  +void removeAll()
-}
-
-"trtc_demo::models::meeting.dart::MeetingModel" o-- "dart::collection::UnmodifiableListView<dynamic>"
-"flutter::src::foundation::change_notifier.dart::ChangeNotifier" <|-- "trtc_demo::models::meeting.dart::MeetingModel"
-
-class "trtc_demo::page::trtcmeetingdemo::index.dart::IndexPage" {
-  +State<StatefulWidget> createState()
-}
-
-"flutter::src::widgets::framework.dart::StatefulWidget" <|-- "trtc_demo::page::trtcmeetingdemo::index.dart::IndexPage"
-
-class "trtc_demo::page::trtcmeetingdemo::index.dart::IndexPageState" {
-  +String userId
-  +String meetId
-  +bool enabledCamera
-  +bool enabledMicrophone
-  +int quality
-  +FocusNode meetIdFocusNode
-  +FocusNode userFocusNode
-  +void initState()
-  +dynamic unFocus()
-  +void dispose()
-  +dynamic enterMeeting()
-  +Widget build()
-}
-
-"trtc_demo::page::trtcmeetingdemo::index.dart::IndexPageState" o-- "flutter::src::widgets::focus_manager.dart::FocusNode"
-"flutter::src::widgets::framework.dart::State" <|-- "trtc_demo::page::trtcmeetingdemo::index.dart::IndexPageState"
-
-class "trtc_demo::page::trtcmeetingdemo::meeting.dart::MeetingPage" {
-  +State<StatefulWidget> createState()
-}
-
-"flutter::src::widgets::framework.dart::StatefulWidget" <|-- "trtc_demo::page::trtcmeetingdemo::meeting.dart::MeetingPage"
-
-class "trtc_demo::page::trtcmeetingdemo::meeting.dart::MeetingPageState" {
-  -GlobalKey<ScaffoldState> _scaffoldKey
-  +dynamic meetModel
-  +Map<dynamic, dynamic> userInfo
-  +bool isOpenMic
-  +bool isOpenCamera
-  +bool isFrontCamera
-  +bool isSpeak
-  +bool isDoubleTap
-  +bool isShowingWindow
-  +int? localViewId
-  +bool isShowBeauty
-  +String curBeauty
-  +double curBeautyValue
-  +String doubleUserId
-  +String doubleUserIdType
-  +TRTCCloud trtcCloud
-  +TXDeviceManager txDeviceManager
-  +TXBeautyManager txBeautyManager
-  +TXAudioEffectManager txAudioManager
-  +List<dynamic> userList
-  +List<dynamic> userListLast
-  +List<dynamic> screenUserList
-  +int? meetId
-  +int quality
-  -Offset _offset
-  +ScrollController scrollControl
-  +void initState()
-  +dynamic iniRoom()
-  +void didChangeAppLifecycleState()
-  +dynamic enterRoom()
-  +dynamic initData()
-  +dynamic destoryRoom()
-  +void dispose()
-  +dynamic onRtcListener()
-  +dynamic initScrollListener()
-  +Future<bool?> showErrordDialog()
-  +Future<bool?> showExitMeetingConfirmDialog()
-  +dynamic doubleTap()
-  +dynamic startShare()
-  +dynamic onShareClick()
-  +Widget renderView()
-  +Widget videoVoice()
-  +Widget topSetting()
-  +Widget beautySetting()
-  +Widget bottomSetting()
-  +Widget build()
-}
-
-"trtc_demo::page::trtcmeetingdemo::meeting.dart::MeetingPageState" o-- "flutter::src::widgets::framework.dart::GlobalKey<ScaffoldState>"
-"trtc_demo::page::trtcmeetingdemo::meeting.dart::MeetingPageState" o-- "tencent_trtc_cloud::trtc_cloud.dart::TRTCCloud"
-"trtc_demo::page::trtcmeetingdemo::meeting.dart::MeetingPageState" o-- "tencent_trtc_cloud::tx_device_manager.dart::TXDeviceManager"
-"trtc_demo::page::trtcmeetingdemo::meeting.dart::MeetingPageState" o-- "tencent_trtc_cloud::tx_beauty_manager.dart::TXBeautyManager"
-"trtc_demo::page::trtcmeetingdemo::meeting.dart::MeetingPageState" o-- "tencent_trtc_cloud::tx_audio_effect_manager.dart::TXAudioEffectManager"
-"trtc_demo::page::trtcmeetingdemo::meeting.dart::MeetingPageState" o-- "dart::ui::Offset"
-"trtc_demo::page::trtcmeetingdemo::meeting.dart::MeetingPageState" o-- "flutter::src::widgets::scroll_controller.dart::ScrollController"
-"flutter::src::widgets::framework.dart::State" <|-- "trtc_demo::page::trtcmeetingdemo::meeting.dart::MeetingPageState"
-"flutter::src::widgets::binding.dart::WidgetsBindingObserver" <|-- "trtc_demo::page::trtcmeetingdemo::meeting.dart::MeetingPageState"
-
-class "trtc_demo::page::trtcmeetingdemo::member_list.dart::MemberListPage" {
-  +State<StatefulWidget> createState()
-}
-
-"flutter::src::widgets::framework.dart::StatefulWidget" <|-- "trtc_demo::page::trtcmeetingdemo::member_list.dart::MemberListPage"
-
-class "trtc_demo::page::trtcmeetingdemo::member_list.dart::MemberListPageState" {
-  +TRTCCloud trtcCloud
-  +dynamic meetModel
-  +dynamic userInfo
-  +List<dynamic> micList
-  +Map<dynamic, dynamic> micMap
-  +void initState()
-  +dynamic initRoom()
-  +void dispose()
-  +Widget build()
-}
-
-"trtc_demo::page::trtcmeetingdemo::member_list.dart::MemberListPageState" o-- "tencent_trtc_cloud::trtc_cloud.dart::TRTCCloud"
-"flutter::src::widgets::framework.dart::State" <|-- "trtc_demo::page::trtcmeetingdemo::member_list.dart::MemberListPageState"
-
-class "trtc_demo::page::trtcmeetingdemo::setting.dart::SettingPage" {
-  +State<StatefulWidget> createState()
-}
-
-"flutter::src::widgets::framework.dart::StatefulWidget" <|-- "trtc_demo::page::trtcmeetingdemo::setting.dart::SettingPage"
-
-class "trtc_demo::page::trtcmeetingdemo::setting.dart::SettingPageState" {
-  +TRTCCloud trtcCloud
-  +bool isShowSetDialog
-  +bool isAPPPausedToClosed
-  +double currentCaptureValue
-  +double currentPlayValue
-  +bool enabledMirror
-  +String currentResolution
-  +int currentResValue
-  +List<dynamic> resolutionList
-  +int currentVideoFps
-  +List<dynamic> videoFpsList
-  +double minBitrate
-  +double maxBitrate
-  +double currentBitrate
-  +void initState()
-  +dynamic initRoom()
-  +dynamic dealMirror()
-  +dynamic showResolution()
-  +dynamic showVideoFps()
-  +dynamic showSetDialog()
-  +void didChangeAppLifecycleState()
-  +Widget build()
-}
-
-"trtc_demo::page::trtcmeetingdemo::setting.dart::SettingPageState" o-- "tencent_trtc_cloud::trtc_cloud.dart::TRTCCloud"
-"flutter::src::widgets::framework.dart::State" <|-- "trtc_demo::page::trtcmeetingdemo::setting.dart::SettingPageState"
-"flutter::src::widgets::binding.dart::WidgetsBindingObserver" <|-- "trtc_demo::page::trtcmeetingdemo::setting.dart::SettingPageState"
-
-class "trtc_demo::page::trtcmeetingdemo::tool.dart::MeetingTool" {
-  {static} +int screenLen
-  {static} +dynamic toast()
-  {static} +dynamic getScreenList()
-  {static} +Size getViewSize()
-}
-
-
-@enduml

+ 1 - 2
pubspec.yaml

@@ -6,8 +6,7 @@ environment:
   sdk: '>=2.12.0 <3.0.0'
 
 dependencies:
-  tencent_trtc_cloud:
-    tencent_trtc_cloud: ^2.4.1
+  tencent_trtc_cloud: 2.4.2
   cupertino_icons: ^1.0.2
   provider: ^5.0.0
   crypto: ^3.0.1