StageView 逻辑调整:兼容最小化进房或者房间模式切换
This commit is contained in:
@@ -16,6 +16,11 @@
|
||||
@property (nonatomic, strong) id<RtcInterface> engine;
|
||||
@property (nonatomic, weak) id<RtcDelegate> engineDelegate;
|
||||
@property (nonatomic, assign) RtcEngineType engineType;
|
||||
/**
|
||||
* 当前 Rtc 所在的房间 roomUid 。
|
||||
*/
|
||||
@property(nonatomic, strong) NSString * enterdRoomUid;
|
||||
|
||||
@end
|
||||
|
||||
@implementation RtcManager
|
||||
@@ -47,16 +52,24 @@
|
||||
}
|
||||
|
||||
- (BOOL)enterRoom:(NSString *)roomUid {
|
||||
if (self.enterdRoomUid && [self.enterdRoomUid isEqualToString:roomUid]) {
|
||||
return YES;
|
||||
}
|
||||
return [self.engine joinChannel:roomUid completion:^{
|
||||
[self muteRemote:NO];
|
||||
[self muteLocal:NO];
|
||||
self.enterdRoomUid = roomUid;
|
||||
}];
|
||||
}
|
||||
|
||||
- (BOOL)enterRoom:(NSString *)roomUid trtcSign:(nonnull NSString *)sign {
|
||||
if (self.enterdRoomUid && [self.enterdRoomUid isEqualToString:roomUid]) {
|
||||
return YES;
|
||||
}
|
||||
return [self.engine joinChannel:roomUid sign:sign completion:^{
|
||||
[self muteRemote:NO];
|
||||
[self muteLocal:NO];
|
||||
self.enterdRoomUid = roomUid;
|
||||
}];
|
||||
}
|
||||
|
||||
@@ -79,6 +92,7 @@
|
||||
[self.engine exitChannel:^{
|
||||
[self muteRemote:NO];
|
||||
[self muteLocal:NO];
|
||||
self.enterdRoomUid = nil;
|
||||
}];
|
||||
}
|
||||
|
||||
@@ -109,6 +123,7 @@
|
||||
[_engine exitChannel:nil];
|
||||
[_engine destory];
|
||||
_engine = nil;
|
||||
_enterdRoomUid = nil;
|
||||
}
|
||||
_engineType = type;
|
||||
}
|
||||
|
Reference in New Issue
Block a user