lxy 1 gadu atpakaļ
vecāks
revīzija
c54c8744be

+ 4 - 2
Example/LenzCameraNativeModuleForRN/LENZViewController.m

@@ -99,11 +99,13 @@
     self.textView.text = nil;
     NSMutableDictionary *dict = [NSMutableDictionary dictionary];
     dict[@"dataRetainedMode"] = @"retain";
-    NSArray *array = @[@{@"flashMode": @"auto", @"isRemake":@(1),@"mode":@"continuous", @"quality":@(100),@"type":@"back"  },
+    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":@(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)}];
+    @{@"flashMode": @"auto", @"isRemake":@(1),@"mode":@"panoramaPlus", @"quality":@(100),@"type":@"back", @"videoQuality":@(480)}
+    ];
     
     
     dict[@"cameraMode"] = array;

+ 3 - 0
LenzCameraNativeModuleForRN/Classes/headers/LenzSDKConstant.h

@@ -25,6 +25,9 @@ typedef enum SDKCaptureModeIndex {
     SDK_CAPTURE_MODE_PANORAMA,
     /// 智能全景
     SDK_CAPTURE_MODE_INTELLEGENCE_PANORAMA,
+    ///
+    SDK_CAPTURE_MODE_UNKNOW,
+
 } SDKCaptureModeIndex;
 
 typedef enum SDKDataRetainedModeIndex{

+ 12 - 3
LenzCameraNativeModuleForRN/Classes/inner/PCSBaseViewController/PCSBaseViewController.m

@@ -813,7 +813,7 @@
 
     NSMutableArray* nodesArr = [NSMutableArray array];
     NSMutableDictionary* nodesDic = [NSMutableDictionary dictionary];
-    __block SDKCaptureModeIndex defaultModeIndex = SDK_CAPTURE_MODE_CONTINUOUS;
+    __block SDKCaptureModeIndex defaultModeIndex = SDK_CAPTURE_MODE_UNKNOW;
     NSDictionary<NSNumber*, Class>* nodeClsTable = @{
         @(SDK_CAPTURE_MODE_CONTINUOUS): [OperationNodeMultiple class],
         @(SDK_CAPTURE_MODE_SINGLE): [OperationNodeSingle class],
@@ -823,8 +823,16 @@
     };
     
     [[SDKParameters shared].modeIndices enumerateObjectsUsingBlock:^(NSNumber * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
-        if (idx == 0) {
-            defaultModeIndex = (SDKCaptureModeIndex)obj.integerValue;
+        if ([SDKParameters shared].retainedMode == SDK_DATA_RETAINED_RETAIN) {
+            if (idx == 0 && obj.intValue != SDK_CAPTURE_MODE_SINGLE) {
+                defaultModeIndex = (SDKCaptureModeIndex)obj.integerValue;
+            } else if (idx == 1 && defaultModeIndex == SDK_CAPTURE_MODE_UNKNOW) {
+                defaultModeIndex = (SDKCaptureModeIndex)obj.integerValue;
+            }
+        } else {
+            if (idx == 0) {
+                defaultModeIndex = (SDKCaptureModeIndex)obj.integerValue;
+            }
         }
         if(nodeClsTable[obj] != nil){
             if ([SDKParameters shared].retainedMode == SDK_DATA_RETAINED_RETAIN && obj.intValue == SDK_CAPTURE_MODE_SINGLE) {
@@ -855,6 +863,7 @@
 
 
     }
+    
     [SDKParameters shared].modeIndex = defaultModeIndex;
     _operationNodesArray = [nodesArr copy];
     _operationNodes = [nodesDic copy];