JLChen
2021-10-08 f8457b624a75bf8e41489b74f66009eee6891b8b
iOS/Xamarin/LCSDKOnXamarin/LCSDKOnXamarin/LCOnIntercomViewController.m
@@ -53,11 +53,8 @@
@implementation LCOnIntercomViewController{
    
    BOOL isAccessAudio;
    BOOL isAccessVideo;
    BOOL isBackGround;
    BOOL iSVideoNotDetermined;
    BOOL iSAudioNotDetermined;
    BOOL isAnswer;//是否已经点击接听过了
    
    NSString * tipStr;
@@ -92,8 +89,7 @@
    //开始反呼
    [self StartReverseCall];
    [self ShowCalltimeBtn:callingStr];
//    //暂时不支持开锁功能
//    [self setUnlock:NO];
    //注册开锁成功监听
    [self addOpenSuccessAction];
    
@@ -131,8 +127,6 @@
    }
}
- (void)initTopBarView {
    UIView *TopView =  [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, APP_TOP_BAR_HEIGHT)];
    TopView.backgroundColor = HEXCOLORA(0xF7F7F7,1.0);
@@ -143,7 +137,6 @@
    TopView.layer.shadowOffset = CGSizeMake(0,0.5);
    TopView.layer.shadowOpacity = 1;
    TopView.layer.shadowRadius = 0;
}
- (UIButton *)backButton{
@@ -450,13 +443,13 @@
    
}
- (int *)getTextWidth:(UIButton*) btn
{
    int textWidth = 0;
    //     CGSize size = [btn.titleLabel.textsizeWithFont:[UIFontboldSystemFontOfSize:15]constrainedToSize:contentMaxSizes lineBreakMode:UILineBreakModeCharacterWrap];
    //    textWidth = (int)fontSize.Width;
    return textWidth;
}
//- (int *)getTextWidth:(UIButton*) btn
//{
//    int textWidth = 0;
//    //     CGSize size = [btn.titleLabel.textsizeWithFont:[UIFontboldSystemFontOfSize:15]constrainedToSize:contentMaxSizes lineBreakMode:UILineBreakModeCharacterWrap];
//    //    textWidth = (int)fontSize.Width;
//    return textWidth;
//}
@@ -702,7 +695,7 @@
- (void)onPlayerResult:(NSString*)code Type:(NSInteger)type Index:(NSInteger)index {
    // play
    WEAKSELF_AT(self);
    NSLog(@"LIVE_PLAY-CODE:%@,TYPE:%ld", code, type);
    NSLog(@"LIVE_PLAY-CODE:%@,TYPE:%ld", code, (long)type);
    //是否已经弹窗过
    if(isShowErrorAlert) return;;
    
@@ -859,24 +852,11 @@
    [super viewWillDisappear:animated];
    [self stopPlaySystemSound];
    //防止用户不按挂断,或者不等收到对方的挂断,点击返回按钮。
    //1.暂停SDK相关播放
    [self stopPlay];
    //    if(_es){
    //        [_es onHangup];
    //        [_es onStopCapture];
    //        [_es stopTalk];
    //
    //        _es.delegate = nil;
    //        ESVideo.shareInstance.snapImageCallback = nil;
    //
    //
    //    }
    //    [_es freeSubClass];
}
-(void)dealloc{
    [[NSNotificationCenter defaultCenter] removeObserver:self];
    //    [_es freeSubClass];
    //2.Delegate释放
    self.mLCCallDelegate = nil;
    //3.定时器释放
    if(_openDoorTimer){
        dispatch_source_cancel(_openDoorTimer);
        _openDoorTimer = nil; // OK
@@ -886,9 +866,12 @@
        _countdownTimer = nil; // OK
        
    }
    NSLog(@"==============dealloc");
}
-(void)dealloc{
    NSLog(@"==============dealloc  1");
    [[NSNotificationCenter defaultCenter] removeObserver:self];
}
//#pragma mark ESVideoPhoneDelegate
@@ -1095,11 +1078,11 @@
- (void)stopPlaySystemSound{
    //    return;
    NSLog(@"stop PlaySystemSound");
    stopRingAndVibration();
    LCStopRingAndVibration();
}
//停止响铃和震动,移除回调并处理掉铃声和震动
void stopRingAndVibration() {
void LCStopRingAndVibration() {
    AudioServicesRemoveSystemSoundCompletion(kSystemSoundID_Vibrate);
    //    AudioServicesRemoveSystemSoundCompletion(sound);
    AudioServicesDisposeSystemSoundID(kSystemSoundID_Vibrate);