lxy 2 년 전
부모
커밋
859472de82

+ 2 - 2
Example/LenzCameraNativeModuleForRN/LENZViewController.m

@@ -100,8 +100,8 @@
     NSMutableDictionary *dict = [NSMutableDictionary dictionary];
     dict[@"dataRetainedMode"] = @"retain";
     NSArray *array = @[
-    @{@"flashMode": @"auto", @"isRemake":@(1),@"mode":@"continuous", @"quality":@(100),@"type":@"back"  },
-    @{@"flashMode": @"auto", @"isRemake":@(1),@"mode":@"single", @"quality":@(100),@"type":@"back"  },
+    @{@"flashMode": @"auto", @"isRemake":@(0),@"mode":@"continuous", @"quality":@(100),@"type":@"back"  },
+    @{@"flashMode": @"auto", @"isRemake":@(0),@"mode":@"single", @"quality":@(100),@"type":@"back"  },
     @{@"flashMode": @"auto", @"isRemake":@(1),@"mode":@"video", @"quality":@(100),@"type":@"back", @"videoQuality":@(1080)},
     @{@"flashMode": @"auto", @"isRemake":@(1),@"mode":@"panorama", @"quality":@(100),@"type":@"back", @"videoQuality":@(1080)},
     @{@"flashMode": @"auto", @"isRemake":@(1),@"mode":@"panoramaPlus", @"quality":@(100),@"type":@"back", @"videoQuality":@(480)}

+ 7 - 6
LenzCameraNativeModuleForRN/Classes/inner/PCSBaseViewController/PCSBaseViewController.m

@@ -1858,9 +1858,11 @@
 
 - (void)takePhotoButtonTouchUpInside:(id)sender{
     self.takePhotoButton.enabled = NO;
-    if (self.outputSettings.flashMode == AVCaptureFlashModeOn && (self.mode == SDK_CAPTURE_MODE_SINGLE || self.mode == SDK_CAPTURE_MODE_CONTINUOUS || self.mode == SDK_CAPTURE_MODE_INTELLEGENCE_PANORAMA)) {
+    if ((self.outputSettings.flashMode == AVCaptureFlashModeOn || self.outputSettings.flashMode == AVCaptureFlashModeAuto) && (self.mode == SDK_CAPTURE_MODE_SINGLE || self.mode == SDK_CAPTURE_MODE_CONTINUOUS || self.mode == SDK_CAPTURE_MODE_INTELLEGENCE_PANORAMA)) {
+        self.panGesture.enabled = NO;
         dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(3 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
             self.takePhotoButton.enabled = YES;
+            self.panGesture.enabled = YES;
         });
     } else {
         dispatch_async(dispatch_get_main_queue(), ^{
@@ -2425,15 +2427,15 @@
 #pragma mark - AVCaptureFileOutputRecordingDelegate
 - (void)captureOutput:(AVCaptureFileOutput *)output didFinishRecordingToOutputFileAtURL:(NSURL *)outputFileURL fromConnections:(NSArray<AVCaptureConnection *> *)connections error:(NSError *)error{
     //视频录制
+    [self.timerLabel updateWith:0];
+
     BOOL recordedSuccessfully = YES;
     if(error.code == AVErrorMaximumDurationReached){
-    }
-    else if (error.code == AVErrorDiskFull){
+    } else if (error.code == AVErrorDiskFull){
         dispatch_async(dispatch_get_main_queue(), ^{
             [[NSNotificationCenter defaultCenter] postNotificationName:LenzSDKNotificationDiskIsFull object:error];
         });
-    }
-    else if (error.code == AVErrorSessionWasInterrupted){
+    }else if (error.code == AVErrorSessionWasInterrupted){
     }
     id value = [[error userInfo] objectForKey:AVErrorRecordingSuccessfullyFinishedKey];
     if (value) {
@@ -2467,7 +2469,6 @@
     self.resourceModel.lastIndex = self.mode;
     
     [self updateViewStatus];
-    [self.timerLabel updateWith:0];
 
     dispatch_async(dispatch_get_main_queue(), ^{
         [self.currentOperationNode triggered];

+ 10 - 0
LenzCameraNativeModuleForRN/Classes/inner/PCSBaseViewController/PCSPreviewViewController.m

@@ -42,6 +42,7 @@
 //        player.view.frame = CGRectMake(0, 0, CGRectGetWidth(self.scrollView.frame), CGRectGetHeight(self.scrollView.frame));
 //        player.view.hidden = YES;
         [self.contentView addSubview:self.player.view];
+        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(playbackFinished) name:AVPlayerItemDidPlayToEndTimeNotification  object:nil];
 
     }
     return self;
@@ -99,10 +100,19 @@
         _player = [[AVPlayerViewController alloc]init];
         _player.view.hidden = YES;
         _player.videoGravity = AVLayerVideoGravityResizeAspect;
+        _player.showsPlaybackControls = NO;
     }
     return _player;
 }
 
+- (void)playbackFinished {
+    if (_model.mode == SDK_CAPTURE_MODE_MOVIE) {
+        self.videoImageView.hidden = NO;
+        self.player.view.hidden = YES;
+    }
+}
+
+
 @end