Преглед на файлове

修复ios依赖的版本问题

wudebin преди 3 месеца
родител
ревизия
a9d4934ff3

+ 1 - 1
Strides-APP/app.json

@@ -3,7 +3,7 @@
   "displayName": "ChargEco",
   "versionCode": 810,
   "versionName": "V4.1.0",
-  "product": true,
+  "product": false,
   "debug": true,
   "isWhitelabel": true,
   "isLumiWhitelabel": false,

+ 23 - 72
Strides-APP/app/pages/charge/QRScan.js

@@ -2,7 +2,7 @@
  * 扫描二维码
  * @邠心vbe on 2021/03/24
  */
-import React, { Component } from 'react'
+import React, { Component, useState } from 'react'
 import { Pressable, StyleSheet, View } from 'react-native'
 import QRCodeScanner from 'react-native-qrcode-scanner';
 import { RNCamera } from 'react-native-camera';
@@ -18,54 +18,32 @@ import QRResult from './QRResult';
 // 函数组件:QR码扫描器
 const QRScanner = ({ onCodeScanned, isActive }) => {
   const [flashOn, switchFlash] = useState(false);
-  const [hasPermission, setHasPermission] = useState(false);
-  const device = useCameraDevice('back');
-  useEffect(() => {
-    (async () => {
-      const status = await Camera.requestCameraPermission();
-      setHasPermission(status == 'granted');
-    })();
-  }, []);
-  const codeScanner = useCodeScanner({
-    codeTypes: ['qr'],
-    onCodeScanned: (codes) => {
-      if (codes?.length > 0 && isActive) {
-        const code = codes[0];
-        onCodeScanned(code.value || "");
-      }
-    },
-  });
 
   return (
-    (device && hasPermission)
+    isActive
     ? <>
-        <Camera
-          style={{width: $width, height: $vh(110)}}
-          device={device}
-          isActive={isActive}
-          codeScanner={codeScanner}
-          enableZoomGesture={true}
-          photo={false}
-          video={false}
-          audio={false}
-          resizeMode="cover"
-          torch={flashOn ? 'on' : 'off'}
-        />
-        { isActive &&
-          <Pressable
-            style={styles.flashLight}
-            onPress={() => switchFlash(!flashOn)}>
-            <MaterialIcons
-              name={flashOn ? "flashlight-on" : "flashlight-off"}
-              size={36}
-              color="#fff"/>
-          </Pressable>
-        }
+        <QRCodeScanner
+          fadeIn={true}
+          onRead={onCodeScanned}
+          reactivate={false}
+          reactivateTimeout={1000}
+          cameraStyle={{ width: $width, height: $vh(100)}}
+          containerStyle={{ width: $width, height: $vh(100)}}
+          flashMode={flashOn ? RNCamera.Constants.FlashMode.torch : RNCamera.Constants.FlashMode.off}
+          checkAndroid6Permissions={true} />
+        <Pressable
+          style={styles.flashLight}
+          onPress={() => switchFlash(!flashOn)}>
+          <MaterialIcons
+            name={flashOn ? "flashlight-on" : "flashlight-off"}
+            size={36}
+            color="#fff"/>
+        </Pressable>
       </>
     : <View style={styles.tipsScreen}>
-        <TextView style={styles.tipsText}>
+        {/* <TextView style={styles.tipsText}>
           Camera access has been denied. Please enable it in your device settings.
-        </TextView>
+        </TextView> */}
       </View>
   );
 };
@@ -222,32 +200,6 @@ export default class QRScan extends Component {
           onConfirm={() => this.enterStatioinId()}
           onClose={() => this.onEnterStation(false)}
         />
-
-        { !this.state.isResult
-          ? <QRCodeScanner
-              fadeIn={true}
-              onRead={this.scanResult}
-              reactivate={false}
-              reactivateTimeout={1000}
-              cameraStyle={{ width: $width, height: $vh(100)}}
-              containerStyle={{ width: $width, height: $vh(100)}}
-              flashMode={this.state.flashLight ? RNCamera.Constants.FlashMode.torch : RNCamera.Constants.FlashMode.off}
-              checkAndroid6Permissions={true} />
-          : <View style={ui.flex1}></View>
-          /*<Image
-              style={Styles.logo}
-              source={require('../../images/app-logo.png')}/> */
-        }
-        { !this.state.isResult &&
-          <Pressable
-            style={styles.flashLight}
-            onPress={() => this.switchFlash()}>
-            <MaterialIcons
-              name={this.state.flashLight ? "flashlight-on" : "flashlight-off"}
-              size={36}
-              color="#fff"/>
-          </Pressable>
-        }
       </View>
     );
   }
@@ -265,7 +217,6 @@ const styles = StyleSheet.create({
     padding: 48,
     alignItems: "center",
     justifyContent: "center",
-    backgroundColor: '#444',
   },
   tipsText: {
     color: textLight,
@@ -273,7 +224,7 @@ const styles = StyleSheet.create({
     textAlign: "center"
   },
   flashLight: {
-    bottom: 120,
+    bottom: 140,
     zIndex: 2,
     opacity: 0.7,
     padding: 8,
@@ -282,7 +233,7 @@ const styles = StyleSheet.create({
   btnStationInput: {
     left: 16,
     right: 16,
-    bottom: 24,
+    bottom: 40,
     zIndex: 2,
     position: 'absolute',
     backgroundColor: "rgba(0,0,0,.4)"

+ 1 - 1
Strides-APP/app/pages/charging/StepStartView.js

@@ -18,7 +18,7 @@ export default StepStartView = ({
   onIntoCharging
 }) => (
   <View>
-    <View style={{minHeight: $vht(70)}}>
+    <View style={{minHeight: $vht(74)}}>
       <TextView style={styles.gstText}>{hideTaxRates ? $t('charging.tipsRatesTax2') : $t('charging.tipsRatesTax')}</TextView>
       <TextView style={styles.title}>{$t('charging.acChargers')} ({(stationInfo?.acConnector?.available ?? "0") + $t('charging.numberAvailable')})</TextView>
       { stationInfo.acRates?.length > 0

+ 4 - 3
Strides-APP/ios/Podfile

@@ -66,11 +66,11 @@ target 'Strides' do
   flags = get_default_flags()
 
   # 谷歌地图服务
-  pod 'Google-Maps-iOS-Utils', :git => 'https://github.com/Simon-TechForm/google-maps-ios-utils.git', :branch => 'feat/support-apple-silicon'
+  #pod 'Google-Maps-iOS-Utils', :git => 'https://github.com/Simon-TechForm/google-maps-ios-utils.git', :branch => 'feat/support-apple-silicon'
   rn_maps_path = '../node_modules/react-native-maps'
   pod 'react-native-google-maps', :path => rn_maps_path
-  # pod 'GoogleMaps', '3.5.0'
-  # pod 'Google-Maps-iOS-Utils', '2.1.0'
+  pod 'GoogleMaps', '7.4.0'
+  pod 'Google-Maps-iOS-Utils', '4.1.0'
 
   # 谷歌通知启用
   # pod 'FirebaseAuth'
@@ -79,6 +79,7 @@ target 'Strides' do
   pod 'FirebaseMessaging'
   # pod 'FirebaseFirestore'
   pod 'GoogleUtilities', :modular_headers => true
+  pod 'TOCropViewController', '2.6.1'
 
   use_react_native!(
     :path => config[:reactNativePath],

+ 161 - 152
Strides-APP/ios/Podfile.lock

@@ -12,44 +12,44 @@ PODS:
     - React-Core (= 0.72.4)
     - React-jsi (= 0.72.4)
     - ReactCommon/turbomodule/core (= 0.72.4)
-  - FirebaseAnalytics (10.11.0):
-    - FirebaseAnalytics/AdIdSupport (= 10.11.0)
-    - FirebaseCore (~> 10.0)
-    - FirebaseInstallations (~> 10.0)
-    - GoogleUtilities/AppDelegateSwizzler (~> 7.11)
-    - GoogleUtilities/MethodSwizzler (~> 7.11)
-    - GoogleUtilities/Network (~> 7.11)
-    - "GoogleUtilities/NSData+zlib (~> 7.11)"
-    - nanopb (< 2.30910.0, >= 2.30908.0)
-  - FirebaseAnalytics/AdIdSupport (10.11.0):
-    - FirebaseCore (~> 10.0)
-    - FirebaseInstallations (~> 10.0)
-    - GoogleAppMeasurement (= 10.11.0)
-    - GoogleUtilities/AppDelegateSwizzler (~> 7.11)
-    - GoogleUtilities/MethodSwizzler (~> 7.11)
-    - GoogleUtilities/Network (~> 7.11)
-    - "GoogleUtilities/NSData+zlib (~> 7.11)"
-    - nanopb (< 2.30910.0, >= 2.30908.0)
-  - FirebaseCore (10.11.0):
-    - FirebaseCoreInternal (~> 10.0)
-    - GoogleUtilities/Environment (~> 7.8)
-    - GoogleUtilities/Logger (~> 7.8)
-  - FirebaseCoreInternal (10.11.0):
-    - "GoogleUtilities/NSData+zlib (~> 7.8)"
-  - FirebaseInstallations (10.11.0):
-    - FirebaseCore (~> 10.0)
-    - GoogleUtilities/Environment (~> 7.8)
-    - GoogleUtilities/UserDefaults (~> 7.8)
-    - PromisesObjC (~> 2.1)
-  - FirebaseMessaging (10.11.0):
-    - FirebaseCore (~> 10.0)
-    - FirebaseInstallations (~> 10.0)
-    - GoogleDataTransport (~> 9.2)
-    - GoogleUtilities/AppDelegateSwizzler (~> 7.8)
-    - GoogleUtilities/Environment (~> 7.8)
-    - GoogleUtilities/Reachability (~> 7.8)
-    - GoogleUtilities/UserDefaults (~> 7.8)
-    - nanopb (< 2.30910.0, >= 2.30908.0)
+  - FirebaseAnalytics (11.15.0):
+    - FirebaseAnalytics/Default (= 11.15.0)
+    - FirebaseCore (~> 11.15.0)
+    - FirebaseInstallations (~> 11.0)
+    - GoogleUtilities/AppDelegateSwizzler (~> 8.1)
+    - GoogleUtilities/MethodSwizzler (~> 8.1)
+    - GoogleUtilities/Network (~> 8.1)
+    - "GoogleUtilities/NSData+zlib (~> 8.1)"
+    - nanopb (~> 3.30910.0)
+  - FirebaseAnalytics/Default (11.15.0):
+    - FirebaseCore (~> 11.15.0)
+    - FirebaseInstallations (~> 11.0)
+    - GoogleAppMeasurement/Default (= 11.15.0)
+    - GoogleUtilities/AppDelegateSwizzler (~> 8.1)
+    - GoogleUtilities/MethodSwizzler (~> 8.1)
+    - GoogleUtilities/Network (~> 8.1)
+    - "GoogleUtilities/NSData+zlib (~> 8.1)"
+    - nanopb (~> 3.30910.0)
+  - FirebaseCore (11.15.0):
+    - FirebaseCoreInternal (~> 11.15.0)
+    - GoogleUtilities/Environment (~> 8.1)
+    - GoogleUtilities/Logger (~> 8.1)
+  - FirebaseCoreInternal (11.15.0):
+    - "GoogleUtilities/NSData+zlib (~> 8.1)"
+  - FirebaseInstallations (11.15.0):
+    - FirebaseCore (~> 11.15.0)
+    - GoogleUtilities/Environment (~> 8.1)
+    - GoogleUtilities/UserDefaults (~> 8.1)
+    - PromisesObjC (~> 2.4)
+  - FirebaseMessaging (11.15.0):
+    - FirebaseCore (~> 11.15.0)
+    - FirebaseInstallations (~> 11.0)
+    - GoogleDataTransport (~> 10.0)
+    - GoogleUtilities/AppDelegateSwizzler (~> 8.1)
+    - GoogleUtilities/Environment (~> 8.1)
+    - GoogleUtilities/Reachability (~> 8.1)
+    - GoogleUtilities/UserDefaults (~> 8.1)
+    - nanopb (~> 3.30910.0)
   - fmt (6.2.1)
   - glog (0.3.5)
   - Google-Maps-iOS-Utils (4.1.0):
@@ -71,78 +71,90 @@ PODS:
     - GoogleMaps
   - Google-Maps-iOS-Utils/QuadTree (4.1.0):
     - GoogleMaps
-  - GoogleAppMeasurement (10.11.0):
-    - GoogleAppMeasurement/AdIdSupport (= 10.11.0)
-    - GoogleUtilities/AppDelegateSwizzler (~> 7.11)
-    - GoogleUtilities/MethodSwizzler (~> 7.11)
-    - GoogleUtilities/Network (~> 7.11)
-    - "GoogleUtilities/NSData+zlib (~> 7.11)"
-    - nanopb (< 2.30910.0, >= 2.30908.0)
-  - GoogleAppMeasurement/AdIdSupport (10.11.0):
-    - GoogleAppMeasurement/WithoutAdIdSupport (= 10.11.0)
-    - GoogleUtilities/AppDelegateSwizzler (~> 7.11)
-    - GoogleUtilities/MethodSwizzler (~> 7.11)
-    - GoogleUtilities/Network (~> 7.11)
-    - "GoogleUtilities/NSData+zlib (~> 7.11)"
-    - nanopb (< 2.30910.0, >= 2.30908.0)
-  - GoogleAppMeasurement/WithoutAdIdSupport (10.11.0):
-    - GoogleUtilities/AppDelegateSwizzler (~> 7.11)
-    - GoogleUtilities/MethodSwizzler (~> 7.11)
-    - GoogleUtilities/Network (~> 7.11)
-    - "GoogleUtilities/NSData+zlib (~> 7.11)"
-    - nanopb (< 2.30910.0, >= 2.30908.0)
-  - GoogleDataTransport (9.2.3):
-    - GoogleUtilities/Environment (~> 7.7)
-    - nanopb (< 2.30910.0, >= 2.30908.0)
-    - PromisesObjC (< 3.0, >= 1.2)
+  - GoogleAdsOnDeviceConversion (2.1.0):
+    - GoogleUtilities/Logger (~> 8.1)
+    - GoogleUtilities/Network (~> 8.1)
+    - nanopb (~> 3.30910.0)
+  - GoogleAppMeasurement/Core (11.15.0):
+    - GoogleUtilities/AppDelegateSwizzler (~> 8.1)
+    - GoogleUtilities/MethodSwizzler (~> 8.1)
+    - GoogleUtilities/Network (~> 8.1)
+    - "GoogleUtilities/NSData+zlib (~> 8.1)"
+    - nanopb (~> 3.30910.0)
+  - GoogleAppMeasurement/Default (11.15.0):
+    - GoogleAdsOnDeviceConversion (= 2.1.0)
+    - GoogleAppMeasurement/Core (= 11.15.0)
+    - GoogleAppMeasurement/IdentitySupport (= 11.15.0)
+    - GoogleUtilities/AppDelegateSwizzler (~> 8.1)
+    - GoogleUtilities/MethodSwizzler (~> 8.1)
+    - GoogleUtilities/Network (~> 8.1)
+    - "GoogleUtilities/NSData+zlib (~> 8.1)"
+    - nanopb (~> 3.30910.0)
+  - GoogleAppMeasurement/IdentitySupport (11.15.0):
+    - GoogleAppMeasurement/Core (= 11.15.0)
+    - GoogleUtilities/AppDelegateSwizzler (~> 8.1)
+    - GoogleUtilities/MethodSwizzler (~> 8.1)
+    - GoogleUtilities/Network (~> 8.1)
+    - "GoogleUtilities/NSData+zlib (~> 8.1)"
+    - nanopb (~> 3.30910.0)
+  - GoogleDataTransport (10.1.0):
+    - nanopb (~> 3.30910.0)
+    - PromisesObjC (~> 2.4)
   - GoogleMaps (7.4.0):
     - GoogleMaps/Maps (= 7.4.0)
   - GoogleMaps/Base (7.4.0)
   - GoogleMaps/Maps (7.4.0):
     - GoogleMaps/Base
-  - GoogleUtilities (7.11.1):
-    - GoogleUtilities/AppDelegateSwizzler (= 7.11.1)
-    - GoogleUtilities/Environment (= 7.11.1)
-    - GoogleUtilities/ISASwizzler (= 7.11.1)
-    - GoogleUtilities/Logger (= 7.11.1)
-    - GoogleUtilities/MethodSwizzler (= 7.11.1)
-    - GoogleUtilities/Network (= 7.11.1)
-    - "GoogleUtilities/NSData+zlib (= 7.11.1)"
-    - GoogleUtilities/Reachability (= 7.11.1)
-    - GoogleUtilities/SwizzlerTestHelpers (= 7.11.1)
-    - GoogleUtilities/UserDefaults (= 7.11.1)
-  - GoogleUtilities/AppDelegateSwizzler (7.11.1):
+  - GoogleUtilities (8.1.0):
+    - GoogleUtilities/AppDelegateSwizzler (= 8.1.0)
+    - GoogleUtilities/Environment (= 8.1.0)
+    - GoogleUtilities/Logger (= 8.1.0)
+    - GoogleUtilities/MethodSwizzler (= 8.1.0)
+    - GoogleUtilities/Network (= 8.1.0)
+    - "GoogleUtilities/NSData+zlib (= 8.1.0)"
+    - GoogleUtilities/Privacy (= 8.1.0)
+    - GoogleUtilities/Reachability (= 8.1.0)
+    - GoogleUtilities/SwizzlerTestHelpers (= 8.1.0)
+    - GoogleUtilities/UserDefaults (= 8.1.0)
+  - GoogleUtilities/AppDelegateSwizzler (8.1.0):
     - GoogleUtilities/Environment
     - GoogleUtilities/Logger
     - GoogleUtilities/Network
-  - GoogleUtilities/Environment (7.11.1):
-    - PromisesObjC (< 3.0, >= 1.2)
-  - GoogleUtilities/ISASwizzler (7.11.1)
-  - GoogleUtilities/Logger (7.11.1):
+    - GoogleUtilities/Privacy
+  - GoogleUtilities/Environment (8.1.0):
+    - GoogleUtilities/Privacy
+  - GoogleUtilities/Logger (8.1.0):
     - GoogleUtilities/Environment
-  - GoogleUtilities/MethodSwizzler (7.11.1):
+    - GoogleUtilities/Privacy
+  - GoogleUtilities/MethodSwizzler (8.1.0):
     - GoogleUtilities/Logger
-  - GoogleUtilities/Network (7.11.1):
+    - GoogleUtilities/Privacy
+  - GoogleUtilities/Network (8.1.0):
     - GoogleUtilities/Logger
     - "GoogleUtilities/NSData+zlib"
+    - GoogleUtilities/Privacy
     - GoogleUtilities/Reachability
-  - "GoogleUtilities/NSData+zlib (7.11.1)"
-  - GoogleUtilities/Reachability (7.11.1):
+  - "GoogleUtilities/NSData+zlib (8.1.0)":
+    - GoogleUtilities/Privacy
+  - GoogleUtilities/Privacy (8.1.0)
+  - GoogleUtilities/Reachability (8.1.0):
     - GoogleUtilities/Logger
-  - GoogleUtilities/SwizzlerTestHelpers (7.11.1):
+    - GoogleUtilities/Privacy
+  - GoogleUtilities/SwizzlerTestHelpers (8.1.0):
     - GoogleUtilities/MethodSwizzler
-  - GoogleUtilities/UserDefaults (7.11.1):
+  - GoogleUtilities/UserDefaults (8.1.0):
     - GoogleUtilities/Logger
+    - GoogleUtilities/Privacy
   - hermes-engine (0.72.4):
     - hermes-engine/Pre-built (= 0.72.4)
   - hermes-engine/Pre-built (0.72.4)
   - libevent (2.1.12)
-  - nanopb (2.30909.0):
-    - nanopb/decode (= 2.30909.0)
-    - nanopb/encode (= 2.30909.0)
-  - nanopb/decode (2.30909.0)
-  - nanopb/encode (2.30909.0)
-  - PromisesObjC (2.2.0)
+  - nanopb (3.30910.0):
+    - nanopb/decode (= 3.30910.0)
+    - nanopb/encode (= 3.30910.0)
+  - nanopb/decode (3.30910.0)
+  - nanopb/encode (3.30910.0)
+  - PromisesObjC (2.4.0)
   - RCT-Folly (2021.07.22.00):
     - boost
     - DoubleConversion
@@ -659,7 +671,8 @@ DEPENDENCIES:
   - FirebaseCore
   - FirebaseMessaging
   - glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`)
-  - Google-Maps-iOS-Utils (from `https://github.com/Simon-TechForm/google-maps-ios-utils.git`, branch `feat/support-apple-silicon`)
+  - Google-Maps-iOS-Utils (= 4.1.0)
+  - GoogleMaps (= 7.4.0)
   - GoogleUtilities
   - hermes-engine (from `../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec`)
   - libevent (~> 2.1.12)
@@ -720,6 +733,7 @@ DEPENDENCIES:
   - RNShare (from `../node_modules/react-native-share`)
   - RNSVG (from `../node_modules/react-native-svg`)
   - RNVectorIcons (from `../node_modules/react-native-vector-icons`)
+  - TOCropViewController (= 2.6.1)
   - Yoga (from `../node_modules/react-native/ReactCommon/yoga`)
 
 SPEC REPOS:
@@ -731,6 +745,8 @@ SPEC REPOS:
     - FirebaseInstallations
     - FirebaseMessaging
     - fmt
+    - Google-Maps-iOS-Utils
+    - GoogleAdsOnDeviceConversion
     - GoogleAppMeasurement
     - GoogleDataTransport
     - GoogleMaps
@@ -754,9 +770,6 @@ EXTERNAL SOURCES:
     :path: "../node_modules/react-native/React/FBReactNativeSpec"
   glog:
     :podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec"
-  Google-Maps-iOS-Utils:
-    :branch: feat/support-apple-silicon
-    :git: https://github.com/Simon-TechForm/google-maps-ios-utils.git
   hermes-engine:
     :podspec: "../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec"
     :tag: hermes-2023-08-07-RNv0.72.4-813b2def12bc9df02654b3e3653ae4a68d0572e0
@@ -875,64 +888,60 @@ EXTERNAL SOURCES:
   Yoga:
     :path: "../node_modules/react-native/ReactCommon/yoga"
 
-CHECKOUT OPTIONS:
-  Google-Maps-iOS-Utils:
-    :commit: 35d05d1eeb65682c1b271f4f3760d814fd946aa1
-    :git: https://github.com/Simon-TechForm/google-maps-ios-utils.git
-
 SPEC CHECKSUMS:
   BEMCheckBox: 5ba6e37ade3d3657b36caecc35c8b75c6c2b1a4e
   boost: 57d2868c099736d80fcd648bf211b4431e51a558
-  BVLinearGradient: 880f91a7854faff2df62518f0281afb1c60d49a3
+  BVLinearGradient: cb006ba232a1f3e4f341bb62c42d1098c284da70
   DoubleConversion: 5189b271737e1565bdce30deb4a08d647e3f5f54
   FBLazyVector: 5d4a3b7f411219a45a6d952f77d2c0a6c9989da5
   FBReactNativeSpec: 3fc2d478e1c4b08276f9dd9128f80ec6d5d85c1f
-  FirebaseAnalytics: 6c6bf99e8854475bf1fa342028841be8ecd236da
-  FirebaseCore: 62fd4d549f5e3f3bd52b7998721c5fa0557fb355
-  FirebaseCoreInternal: 9e46c82a14a3b3a25be4e1e151ce6d21536b89c0
-  FirebaseInstallations: 2a2c6859354cbec0a228a863d4daf6de7c74ced4
-  FirebaseMessaging: 06253e9669434df0a40718fc82a90c78090f4704
+  FirebaseAnalytics: 6433dfd311ba78084fc93bdfc145e8cb75740eae
+  FirebaseCore: efb3893e5b94f32b86e331e3bd6dadf18b66568e
+  FirebaseCoreInternal: 9afa45b1159304c963da48addb78275ef701c6b4
+  FirebaseInstallations: 317270fec08a5d418fdbc8429282238cab3ac843
+  FirebaseMessaging: 3b26e2cee503815e01c3701236b020aa9b576f09
   fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9
   glog: 04b94705f318337d7ead9e6d17c019bd9b1f6b1b
-  Google-Maps-iOS-Utils: d3fdfd57db799771418f06189e33981597553aa8
-  GoogleAppMeasurement: d3dabccdb336fc0ae44b633c8abaa26559893cd9
-  GoogleDataTransport: f0308f5905a745f94fb91fea9c6cbaf3831cb1bd
+  Google-Maps-iOS-Utils: 3343332b18dfd5be8f1f44edd7d481ace3da4d9a
+  GoogleAdsOnDeviceConversion: 2be6297a4f048459e0ae17fad9bfd2844e10cf64
+  GoogleAppMeasurement: 700dce7541804bec33db590a5c496b663fbe2539
+  GoogleDataTransport: aae35b7ea0c09004c3797d53c8c41f66f219d6a7
   GoogleMaps: 032f676450ba0779bd8ce16840690915f84e57ac
-  GoogleUtilities: 9aa0ad5a7bc171f8bae016300bfcfa3fb8425749
+  GoogleUtilities: 00c88b9a86066ef77f0da2fab05f65d7768ed8e1
   hermes-engine: 81191603c4eaa01f5e4ae5737a9efcf64756c7b2
   libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913
-  nanopb: b552cce312b6c8484180ef47159bc0f65a1f0431
-  PromisesObjC: 09985d6d70fbe7878040aa746d78236e6946d2ef
-  RCT-Folly: 424b8c9a7a0b9ab2886ffe9c3b041ef628fd4fb1
+  nanopb: fad817b59e0457d11a5dfbde799381cd727c1275
+  PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47
+  RCT-Folly: 8dc08ca5a393b48b1c523ab6220dfdcc0fe000ad
   RCTRequired: c0569ecc035894e4a68baecb30fe6a7ea6e399f9
   RCTTypeSafety: e90354072c21236e0bcf1699011e39acd25fea2f
   React: a1be3c6dc0a6e949ccd3e659781aa47bbae1868f
   React-callinvoker: 1020b33f6cb1a1824f9ca2a86609fbce2a73c6ed
-  React-Codegen: a0a26badf098d4a779acda922caf74f6ecabed28
-  React-Core: 52075b80f10c26f62219d7b5d13d7d8089f027b3
-  React-CoreModules: 21abab85d7ad9038ce2b1c33d39e3baaf7dc9244
-  React-cxxreact: 4ad1cc861e32fb533dad6ff7a4ea25680fa1c994
+  React-Codegen: 8f9a7e3dfc257094ec462e6ad1d4513fe5441600
+  React-Core: 92372dd74aa4b6867a5d2c8ebb7a709662e58407
+  React-CoreModules: b934bf2d99a27be649d5682b5057268b5df91928
+  React-cxxreact: 59f5b1e71556ec2090efafa15059c2474814d89a
   React-debug: 17366a3d5c5d2f5fc04f09101a4af38cb42b54ae
-  React-hermes: 37377d0a56aa0cf55c65248271866ce3268cde3f
-  React-jsi: 6de8b0ccc6b765b58e4eee9ee38049dbeaf5c221
-  React-jsiexecutor: c7f826e40fa9cab5d37cab6130b1af237332b594
+  React-hermes: 90135a94ae1a7421156a1706f18a0a37657e9ea2
+  React-jsi: fc410485e0dd09d222c37fcaa9eb7e2c85a49399
+  React-jsiexecutor: bee9fca67c1b8ab7d9cf1c8e19a50968dc15ba2e
   React-jsinspector: aaed4cf551c4a1c98092436518c2d267b13a673f
-  React-logger: da1ebe05ae06eb6db4b162202faeafac4b435e77
-  react-native-camera: 3eae183c1d111103963f3dd913b65d01aef8110f
-  react-native-cameraroll: 134805127580aed23403b8c2cb1548920dd77b3a
-  react-native-geolocation: 0f7fe8a4c2de477e278b0365cce27d089a8c5903
-  react-native-google-maps: 247a8c154c5ffa09586774465d12e4aa74736180
-  react-native-maps: 4ce2ed8f1d6c8a398e65b1736088a6c26e8daf11
-  react-native-pager-view: d211379f61895b6349bd7e571b44a26d005c2975
-  react-native-safe-area-context: 7aa8e6d9d0f3100a820efb1a98af68aa747f9284
-  react-native-view-shot: f5507655f122e6b104888a11130f267a427f0d57
-  react-native-webview: 8baa0f5c6d336d6ba488e942bcadea5bf51f050a
-  React-NativeModulesApple: edb5ace14f73f4969df6e7b1f3e41bef0012740f
+  React-logger: 005cf0fc175b43fd5a1abca9ad02fc50c5db45d3
+  react-native-camera: 079d80421f0572d6b4e836908114d614d0adb553
+  react-native-cameraroll: 5e5c48207febe593d634f9a1b4415f0904959f0f
+  react-native-geolocation: def10765a5144e7a76837093d43303d70bb6addf
+  react-native-google-maps: fb2ca159abd4599eaee42e65b35bd754d12464c7
+  react-native-maps: a16ec24e43f66373acaa282f38c8ef5dea4c00d2
+  react-native-pager-view: 56aab0804cd2801623e67ae288ed8b71a482f97e
+  react-native-safe-area-context: 9fdf214647353ab717139d164c9e1f163045eb1c
+  react-native-view-shot: ece7d83e8d7066b32efed47aad09acd8f99f1011
+  react-native-webview: ed7e38031577c5f05319880e4df152828427d459
+  React-NativeModulesApple: 3020a249a8b7c7d7070a1666925e86e9d3f2773e
   React-perflogger: 496a1a3dc6737f964107cb3ddae7f9e265ddda58
   React-RCTActionSheet: 02904b932b50e680f4e26e7a686b33ebf7ef3c00
   React-RCTAnimation: 88feaf0a85648fb8fd497ce749829774910276d6
-  React-RCTAppDelegate: 5792ac0f0feccb584765fdd7aa81ea320c4d9b0b
-  React-RCTBlob: 0dbc9e2a13d241b37d46b53e54630cbad1f0e141
+  React-RCTAppDelegate: 0cdc520f9eeb4335982736c29714cdfc9accc10a
+  React-RCTBlob: 3ca099b9fbe7238deff53b31cc836adf463c9fb3
   React-RCTImage: b111645ab901f8e59fc68fbe31f5731bdbeef087
   React-RCTLinking: 3d719727b4c098aad3588aa3559361ee0579f5de
   React-RCTNetwork: b44d3580be05d74556ba4efbf53570f17e38f734
@@ -941,28 +950,28 @@ SPEC CHECKSUMS:
   React-RCTVibration: 691c67f3beaf1d084ceed5eb5c1dddd9afa8591e
   React-rncore: 142268f6c92e296dc079aadda3fade778562f9e4
   React-runtimeexecutor: d465ba0c47ef3ed8281143f59605cacc2244d5c7
-  React-runtimescheduler: 4941cc1b3cf08b792fbf666342c9fc95f1969035
-  React-utils: b79f2411931f9d3ea5781404dcbb2fa8a837e13a
-  ReactCommon: 4b2bdcb50a3543e1c2b2849ad44533686610826d
-  ReactNativeART: 78edc68dd4a1e675338cd0cd113319cf3a65f2ab
-  RNCAsyncStorage: c913ede1fa163a71cea118ed4670bbaaa4b511bb
-  RNCCheckbox: 75255b03e604bbcc26411eb31c4cbe3e3865f538
-  RNCMaskedView: 949696f25ec596bfc697fc88e6f95cf0c79669b6
-  RNCPushNotificationIOS: 64218f3c776c03d7408284a819b2abfda1834bc8
-  RNDeviceInfo: 02ea8b23e2280fa18e00a06d7e62804d74028579
-  RNGestureHandler: c0d04458598fcb26052494ae23dda8f8f5162b13
-  RNI18n: e2f7e76389fcc6e84f2c8733ea89b92502351fd8
-  RNImageCropPicker: 486e2f7e2b0461ce24321f751410dce1b3b49e6d
-  RNPermissions: b851542e870ac519da59267a4f7ae35eef6bfee3
-  RNReanimated: 726395a2fa2f04cea340274ba57a4e659bc0d9c1
-  RNScreens: 85d3880b52d34db7b8eeebe2f1a0e807c05e69fa
-  RNShare: df09e4d08ce0b50e32e2b6b9ec0249d7fdc06960
-  RNSVG: ed492aaf3af9ca01bc945f7a149d76d62e73ec82
-  RNVectorIcons: 8b5bb0fa61d54cd2020af4f24a51841ce365c7e9
+  React-runtimescheduler: 30a5fd3151996a8f2ad13d0b7df65337c36c1e40
+  React-utils: 5af1d6c958748398eae8030a2fa08af220f4a2e6
+  ReactCommon: 00926ccf1a9b03cc7cfbfb2b838591a0a1b754f1
+  ReactNativeART: b0ebceda8689ce026fff56b2f820664029480a4e
+  RNCAsyncStorage: b934e5ab140257f25f5d67ded2464646731e4349
+  RNCCheckbox: 3d6503c301824dbb13a88a4eecaa8000afe2fb72
+  RNCMaskedView: 4b5b12efdee55966f1d68f32d4b3401c2acf05c2
+  RNCPushNotificationIOS: 6c4ca3388c7434e4a662b92e4dfeeee858e6f440
+  RNDeviceInfo: 8af23685571b7867d8dc15fb89e7fb5fa8607e1e
+  RNGestureHandler: 627182485becfd74f122c83f93cce2be20c2e8c8
+  RNI18n: 11ec5086508673ef71b5b567da3e8bcca8a926e1
+  RNImageCropPicker: 5c7ec5f529a8871ea5aea10c9d721034bdfd6a88
+  RNPermissions: f16c7a5d49ea3dc46997594e02e062eae41124b2
+  RNReanimated: c1c395337d1f757941b0a2ad322188474b477ad4
+  RNScreens: 4f2dbf88d1ba333a4455a29833e30510b21f14c5
+  RNShare: 952ef8e7d5d308302247779d024d4acf56120b72
+  RNSVG: 4611b66c2167ba03429e7428a3a490be6e439391
+  RNVectorIcons: fab5ba3ec74be0cdd3952ca28416214a921722a2
   SocketRocket: f32cd54efbe0f095c4d7594881e52619cfe80b17
   TOCropViewController: edfd4f25713d56905ad1e0b9f5be3fbe0f59c863
   Yoga: 3efc43e0d48686ce2e8c60f99d4e6bd349aff981
 
-PODFILE CHECKSUM: 6f255c41037d9f7a52c572655fa15f274e7d2fd5
+PODFILE CHECKSUM: 504bb2538ac16fdc748494920a832da7db42323a
 
-COCOAPODS: 1.12.1
+COCOAPODS: 1.16.2

+ 142 - 8
Strides-APP/ios/Strides.xcodeproj/project.pbxproj

@@ -12,7 +12,7 @@
 		13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; };
 		2572F5092BB543C100327E71 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 2572F5082BB543C100327E71 /* PrivacyInfo.xcprivacy */; };
 		25C7FBDA2AA706D400F61AA1 /* AppDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 25C7FBD92AA706D400F61AA1 /* AppDelegate.mm */; };
-		25F6C61B2BAC214500DEECE4 /* (null) in Resources */ = {isa = PBXBuildFile; };
+		25F6C61B2BAC214500DEECE4 /* BuildFile in Resources */ = {isa = PBXBuildFile; };
 		38066FC426DE16BF00271DFA /* main.jsbundle in Resources */ = {isa = PBXBuildFile; fileRef = 38066FC226DE16BF00271DFA /* main.jsbundle */; };
 		38066FC526DE16BF00271DFA /* assets in Resources */ = {isa = PBXBuildFile; fileRef = 38066FC326DE16BF00271DFA /* assets */; };
 		3806702826DF20DA00271DFA /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 38066FC926DF20DA00271DFA /* GoogleService-Info.plist */; };
@@ -36,6 +36,62 @@
 			remoteGlobalIDString = 3501832F51E21BCD681DC315B3424B43;
 			remoteInfo = BVLinearGradient;
 		};
+		253630392F558ECE00739B01 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 3862FE5D2668D3C90097D3A3 /* Pods.xcodeproj */;
+			proxyType = 2;
+			remoteGlobalIDString = 8BB937B1C0DFFCF92F41861C2BC54DDA;
+			remoteInfo = "FirebaseCore-FirebaseCore_Privacy";
+		};
+		2536303B2F558ECE00739B01 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 3862FE5D2668D3C90097D3A3 /* Pods.xcodeproj */;
+			proxyType = 2;
+			remoteGlobalIDString = 4DB03FD262B678178A44272143846563;
+			remoteInfo = "FirebaseCoreInternal-FirebaseCoreInternal_Privacy";
+		};
+		2536303D2F558ECE00739B01 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 3862FE5D2668D3C90097D3A3 /* Pods.xcodeproj */;
+			proxyType = 2;
+			remoteGlobalIDString = 47C581450CDB4A6111CB97EEE0711A8C;
+			remoteInfo = "FirebaseInstallations-FirebaseInstallations_Privacy";
+		};
+		2536303F2F558ECE00739B01 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 3862FE5D2668D3C90097D3A3 /* Pods.xcodeproj */;
+			proxyType = 2;
+			remoteGlobalIDString = B0B6501341FD6783C6874C54AB31A9CF;
+			remoteInfo = "FirebaseMessaging-FirebaseMessaging_Privacy";
+		};
+		253630412F558ECE00739B01 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 3862FE5D2668D3C90097D3A3 /* Pods.xcodeproj */;
+			proxyType = 2;
+			remoteGlobalIDString = F73AA961F4AEFF2B46B00AE435DF6BE3;
+			remoteInfo = "GoogleDataTransport-GoogleDataTransport_Privacy";
+		};
+		253630432F558ECE00739B01 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 3862FE5D2668D3C90097D3A3 /* Pods.xcodeproj */;
+			proxyType = 2;
+			remoteGlobalIDString = 44E291D18340EAC3F761346198515323;
+			remoteInfo = "GoogleUtilities-GoogleUtilities_Privacy";
+		};
+		253630452F558ECE00739B01 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 3862FE5D2668D3C90097D3A3 /* Pods.xcodeproj */;
+			proxyType = 2;
+			remoteGlobalIDString = 3227F3FC45681D7CEE5D1355A532398A;
+			remoteInfo = "nanopb-nanopb_Privacy";
+		};
+		253630472F558ECE00739B01 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 3862FE5D2668D3C90097D3A3 /* Pods.xcodeproj */;
+			proxyType = 2;
+			remoteGlobalIDString = 3F238BB22C5201CE689CAF2F766AED95;
+			remoteInfo = "PromisesObjC-FBLPromises_Privacy";
+		};
 		25450AEF2A554B630078250E /* PBXContainerItemProxy */ = {
 			isa = PBXContainerItemProxy;
 			containerPortal = 3862FE5D2668D3C90097D3A3 /* Pods.xcodeproj */;
@@ -640,19 +696,27 @@
 				251C21A12C5C98C700A57859 /* libBVLinearGradient.a */,
 				3862FE992668D3C90097D3A3 /* libDoubleConversion.a */,
 				3806701926DF20DA00271DFA /* libFirebaseCore.a */,
+				2536303A2F558ECE00739B01 /* FirebaseCore_Privacy.bundle */,
 				732F2CF7296FA69A00A90ECF /* libFirebaseCoreInternal.a */,
+				2536303C2F558ECE00739B01 /* FirebaseCoreInternal_Privacy.bundle */,
 				3806701D26DF20DA00271DFA /* libFirebaseInstallations.a */,
+				2536303E2F558ECE00739B01 /* FirebaseInstallations_Privacy.bundle */,
 				3806701F26DF20DA00271DFA /* libFirebaseMessaging.a */,
+				253630402F558ECE00739B01 /* FirebaseMessaging_Privacy.bundle */,
 				25C7FBC02AA706B500F61AA1 /* libfmt.a */,
 				3862FE9D2668D3C90097D3A3 /* libglog.a */,
 				38C6DA652668E46D00D889BC /* libGoogle-Maps-iOS-Utils.a */,
 				3806702126DF20DA00271DFA /* libGoogleDataTransport.a */,
+				253630422F558ECE00739B01 /* GoogleDataTransport_Privacy.bundle */,
 				3806702326DF20DA00271DFA /* libGoogleUtilities.a */,
+				253630442F558ECE00739B01 /* GoogleUtilities_Privacy.bundle */,
 				25C7FBC22AA706B500F61AA1 /* liblibevent.a */,
 				3806702526DF20DA00271DFA /* libnanopb.a */,
+				253630462F558ECE00739B01 /* nanopb_Privacy.bundle */,
 				3862FEA12668D3C90097D3A3 /* libPods-Strides.a */,
 				3862FEA32668D3C90097D3A3 /* libPods-Strides-StridesTests.a */,
 				3806702726DF20DA00271DFA /* libPromisesObjC.a */,
+				253630482F558ECE00739B01 /* FBLPromises_Privacy.bundle */,
 				3862FEA52668D3C90097D3A3 /* libRCT-Folly.a */,
 				3862FEA72668D3C90097D3A3 /* libRCTTypeSafety.a */,
 				25C7FBC42AA706B500F61AA1 /* libReact-Codegen.a */,
@@ -852,6 +916,62 @@
 			remoteRef = 251C21A02C5C98C700A57859 /* PBXContainerItemProxy */;
 			sourceTree = BUILT_PRODUCTS_DIR;
 		};
+		2536303A2F558ECE00739B01 /* FirebaseCore_Privacy.bundle */ = {
+			isa = PBXReferenceProxy;
+			fileType = wrapper.cfbundle;
+			path = FirebaseCore_Privacy.bundle;
+			remoteRef = 253630392F558ECE00739B01 /* PBXContainerItemProxy */;
+			sourceTree = BUILT_PRODUCTS_DIR;
+		};
+		2536303C2F558ECE00739B01 /* FirebaseCoreInternal_Privacy.bundle */ = {
+			isa = PBXReferenceProxy;
+			fileType = wrapper.cfbundle;
+			path = FirebaseCoreInternal_Privacy.bundle;
+			remoteRef = 2536303B2F558ECE00739B01 /* PBXContainerItemProxy */;
+			sourceTree = BUILT_PRODUCTS_DIR;
+		};
+		2536303E2F558ECE00739B01 /* FirebaseInstallations_Privacy.bundle */ = {
+			isa = PBXReferenceProxy;
+			fileType = wrapper.cfbundle;
+			path = FirebaseInstallations_Privacy.bundle;
+			remoteRef = 2536303D2F558ECE00739B01 /* PBXContainerItemProxy */;
+			sourceTree = BUILT_PRODUCTS_DIR;
+		};
+		253630402F558ECE00739B01 /* FirebaseMessaging_Privacy.bundle */ = {
+			isa = PBXReferenceProxy;
+			fileType = wrapper.cfbundle;
+			path = FirebaseMessaging_Privacy.bundle;
+			remoteRef = 2536303F2F558ECE00739B01 /* PBXContainerItemProxy */;
+			sourceTree = BUILT_PRODUCTS_DIR;
+		};
+		253630422F558ECE00739B01 /* GoogleDataTransport_Privacy.bundle */ = {
+			isa = PBXReferenceProxy;
+			fileType = wrapper.cfbundle;
+			path = GoogleDataTransport_Privacy.bundle;
+			remoteRef = 253630412F558ECE00739B01 /* PBXContainerItemProxy */;
+			sourceTree = BUILT_PRODUCTS_DIR;
+		};
+		253630442F558ECE00739B01 /* GoogleUtilities_Privacy.bundle */ = {
+			isa = PBXReferenceProxy;
+			fileType = wrapper.cfbundle;
+			path = GoogleUtilities_Privacy.bundle;
+			remoteRef = 253630432F558ECE00739B01 /* PBXContainerItemProxy */;
+			sourceTree = BUILT_PRODUCTS_DIR;
+		};
+		253630462F558ECE00739B01 /* nanopb_Privacy.bundle */ = {
+			isa = PBXReferenceProxy;
+			fileType = wrapper.cfbundle;
+			path = nanopb_Privacy.bundle;
+			remoteRef = 253630452F558ECE00739B01 /* PBXContainerItemProxy */;
+			sourceTree = BUILT_PRODUCTS_DIR;
+		};
+		253630482F558ECE00739B01 /* FBLPromises_Privacy.bundle */ = {
+			isa = PBXReferenceProxy;
+			fileType = wrapper.cfbundle;
+			path = FBLPromises_Privacy.bundle;
+			remoteRef = 253630472F558ECE00739B01 /* PBXContainerItemProxy */;
+			sourceTree = BUILT_PRODUCTS_DIR;
+		};
 		25450AF02A554B630078250E /* libRNI18n.a */ = {
 			isa = PBXReferenceProxy;
 			fileType = archive.ar;
@@ -1370,7 +1490,7 @@
 			isa = PBXResourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				25F6C61B2BAC214500DEECE4 /* (null) in Resources */,
+				25F6C61B2BAC214500DEECE4 /* BuildFile in Resources */,
 				2572F5092BB543C100327E71 /* PrivacyInfo.xcprivacy in Resources */,
 				38066FC426DE16BF00271DFA /* main.jsbundle in Resources */,
 				38066FC526DE16BF00271DFA /* assets in Resources */,
@@ -1633,20 +1753,34 @@
 				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
 				CLANG_ENABLE_MODULES = YES;
 				CODE_SIGN_ENTITLEMENTS = Strides/Strides.entitlements;
-				CURRENT_PROJECT_VERSION = 482;
+				CURRENT_PROJECT_VERSION = 485;
 				DEVELOPMENT_TEAM = 3L3U7K6Q28;
 				ENABLE_BITCODE = NO;
 				"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64;
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(inherited)",
+					"\"${PODS_ROOT}/FirebaseAnalytics/Frameworks\"",
+					"\"${PODS_ROOT}/GoogleAdsOnDeviceConversion/Frameworks\"",
+					"\"${PODS_ROOT}/GoogleAppMeasurement/Frameworks\"",
+					"\"${PODS_ROOT}/GoogleMaps/Maps/Frameworks\"",
+					"\"${PODS_ROOT}/hermes-engine/destroot/Library/Frameworks/universal\"",
+					"\"${PODS_XCFRAMEWORKS_BUILD_DIR}/FirebaseAnalytics/Default\"",
+					"\"${PODS_XCFRAMEWORKS_BUILD_DIR}/GoogleAdsOnDeviceConversion\"",
+					"\"${PODS_XCFRAMEWORKS_BUILD_DIR}/GoogleAppMeasurement/Core\"",
+					"\"${PODS_XCFRAMEWORKS_BUILD_DIR}/GoogleAppMeasurement/IdentitySupport\"",
+					"\"${PODS_XCFRAMEWORKS_BUILD_DIR}/GoogleMaps/Maps\"",
+					"\"${PODS_XCFRAMEWORKS_BUILD_DIR}/hermes-engine/Pre-built\"",
+				);
 				GCC_INPUT_FILETYPE = automatic;
 				INFOPLIST_FILE = Strides/Info.plist;
 				INFOPLIST_KEY_CFBundleDisplayName = ChargEco;
 				INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.lifestyle";
-				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 15.1;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
 				);
-				MARKETING_VERSION = 4.0.1;
+				MARKETING_VERSION = 4.1.0;
 				OTHER_CFLAGS = (
 					"$(inherited)",
 					"-DFOLLY_NO_CONFIG",
@@ -1686,7 +1820,7 @@
 				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
 				CLANG_ENABLE_MODULES = YES;
 				CODE_SIGN_ENTITLEMENTS = Strides/Strides.entitlements;
-				CURRENT_PROJECT_VERSION = 482;
+				CURRENT_PROJECT_VERSION = 485;
 				DEVELOPMENT_TEAM = 3L3U7K6Q28;
 				ENABLE_BITCODE = NO;
 				"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64;
@@ -1694,12 +1828,12 @@
 				INFOPLIST_FILE = Strides/Info.plist;
 				INFOPLIST_KEY_CFBundleDisplayName = ChargEco;
 				INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.lifestyle";
-				IPHONEOS_DEPLOYMENT_TARGET = 13.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 15.1;
 				LD_RUNPATH_SEARCH_PATHS = (
 					"$(inherited)",
 					"@executable_path/Frameworks",
 				);
-				MARKETING_VERSION = 4.0.1;
+				MARKETING_VERSION = 4.1.0;
 				OTHER_CFLAGS = (
 					"$(inherited)",
 					"-DFOLLY_NO_CONFIG",