From 89bf596c435cd19bca3e7f62838c18e796a9657d Mon Sep 17 00:00:00 2001 From: Guy Tepper Date: Sat, 21 Oct 2023 11:34:58 -0300 Subject: [PATCH 1/8] move flushable products listener to main component --- app/app.tsx | 22 +++++++++++++++++- .../settings/settings-tip-jar-screen.tsx | 23 ++----------------- 2 files changed, 23 insertions(+), 22 deletions(-) diff --git a/app/app.tsx b/app/app.tsx index 9b8cbb51..d3733c06 100644 --- a/app/app.tsx +++ b/app/app.tsx @@ -35,7 +35,7 @@ import { RootStore, RootStoreProvider, setupRootStore } from "./models" import { ToggleStorybook } from "../storybook/toggle-storybook" import { setInitialLanguage, setUserLanguage } from "./i18n/i18n" import "react-native-console-time-polyfill" -import { withIAPContext } from "react-native-iap" +import RNIap, { withIAPContext } from "react-native-iap" import PushNotification from "react-native-push-notification" // Disable tracking in development environment @@ -139,6 +139,26 @@ function App() { }) }, []) + useEffect(() => { + // load products and flush available purchases for the tip jar + // see: https://github.com/dooboolab-community/react-native-iap/issues/126 + // and: https://react-native-iap.dooboolab.com/docs/guides/purchases + const flushAvailablePurchases = async () => { + try { + await RNIap.initConnection() + const availablePurchases = await RNIap.getAvailablePurchases() + + availablePurchases.forEach((purchase) => { + RNIap.finishTransaction({ purchase, isConsumable: true }) + }) + } catch (error) { + console.warn("Failed to connect to IAP and finish all available transactions") + } + } + + flushAvailablePurchases() + }, []) + // Before we show the app, we have to wait for our state to be ready. // In the meantime, don't render anything. This will be the background // color set in native by rootView's background color. You can replace diff --git a/app/screens/settings/settings-tip-jar-screen.tsx b/app/screens/settings/settings-tip-jar-screen.tsx index a9b0bef3..d9d1a1ca 100644 --- a/app/screens/settings/settings-tip-jar-screen.tsx +++ b/app/screens/settings/settings-tip-jar-screen.tsx @@ -1,7 +1,7 @@ import React, { useEffect, useState } from "react" import { observer } from "mobx-react-lite" import { View, ViewStyle, TextStyle, Platform, ActivityIndicator } from "react-native" -import { ProductPurchase, Purchase, RequestPurchase, useIAP } from "react-native-iap" +import { ProductPurchase, RequestPurchase, useIAP } from "react-native-iap" import { Screen, Text } from "../../components" import { color, isDarkMode, spacing } from "../../theme" import { TouchableOpacity } from "react-native-gesture-handler" @@ -83,8 +83,6 @@ const TIP_AMOUNT: TextStyle = { const TOTAL_TIPS: TextStyle = { textAlign: "center", marginTop: spacing[4] } -const PRODUCT_IDS = ["better_rail_tip_1", "better_rail_tip_2", "better_rail_tip_3", "better_rail_tip_4"] - const installSource = getInstallerPackageNameSync() export const TipJarScreen = observer(function TipJarScreen() { @@ -93,24 +91,7 @@ export const TipJarScreen = observer(function TipJarScreen() { const [sortedProducts, setSortedProducts] = useState([]) const { settings } = useStores() - const { connected, products, finishTransaction, requestPurchase, getProducts, getAvailablePurchases, availablePurchases } = - useIAP() - - useEffect(() => { - // see: https://github.com/dooboolab-community/react-native-iap/issues/126 - const flushAvailablePurchases = async () => { - await getAvailablePurchases() - availablePurchases.forEach(async (purchase) => { - await finishTransaction({ purchase, isConsumable: true }) - }) - } - - if (connected) { - getProducts({ skus: PRODUCT_IDS }) - - flushAvailablePurchases() - } - }, [connected, getProducts]) + const { products, finishTransaction, requestPurchase } = useIAP() useEffect(() => { if (products.length > 0) { From 91933270ab444254922bcf325f22c94b3abafe31 Mon Sep 17 00:00:00 2001 From: Guy Tepper Date: Sat, 21 Oct 2023 11:36:11 -0300 Subject: [PATCH 2/8] remove unused `useStation` from `App` --- app/app.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/app/app.tsx b/app/app.tsx index d3733c06..03b26b7f 100644 --- a/app/app.tsx +++ b/app/app.tsx @@ -65,7 +65,6 @@ function App() { const [rootStore, setRootStore] = useState(undefined) const [localeReady, setLocaleReady] = useState(false) const appState = useRef(AppState.currentState) - const stations = useStations() useDeepLinking(rootStore, navigationRef) From 95c90e5068d621dc1200b5837b3f828b7ecfcf35 Mon Sep 17 00:00:00 2001 From: Guy Tepper Date: Sat, 21 Oct 2023 11:42:08 -0300 Subject: [PATCH 3/8] Update app.tsx --- app/app.tsx | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/app/app.tsx b/app/app.tsx index 03b26b7f..a77c1c18 100644 --- a/app/app.tsx +++ b/app/app.tsx @@ -35,7 +35,7 @@ import { RootStore, RootStoreProvider, setupRootStore } from "./models" import { ToggleStorybook } from "../storybook/toggle-storybook" import { setInitialLanguage, setUserLanguage } from "./i18n/i18n" import "react-native-console-time-polyfill" -import RNIap, { withIAPContext } from "react-native-iap" +import { useIAP, initConnection, finishTransaction, getAvailablePurchases, withIAPContext } from "react-native-iap" import PushNotification from "react-native-push-notification" // Disable tracking in development environment @@ -65,6 +65,7 @@ function App() { const [rootStore, setRootStore] = useState(undefined) const [localeReady, setLocaleReady] = useState(false) const appState = useRef(AppState.currentState) + const { currentPurchase } = useIAP() useDeepLinking(rootStore, navigationRef) @@ -144,19 +145,19 @@ function App() { // and: https://react-native-iap.dooboolab.com/docs/guides/purchases const flushAvailablePurchases = async () => { try { - await RNIap.initConnection() - const availablePurchases = await RNIap.getAvailablePurchases() + await initConnection() + const availablePurchases = await getAvailablePurchases() availablePurchases.forEach((purchase) => { - RNIap.finishTransaction({ purchase, isConsumable: true }) + finishTransaction({ purchase, isConsumable: true }) }) } catch (error) { - console.warn("Failed to connect to IAP and finish all available transactions") + console.error("Failed to connect to IAP and finish all available transactions", error) } } flushAvailablePurchases() - }, []) + }, [currentPurchase]) // Before we show the app, we have to wait for our state to be ready. // In the meantime, don't render anything. This will be the background From dac6ff8f00a485daec7ec3e1ee96694820449160 Mon Sep 17 00:00:00 2001 From: Guy Tepper Date: Sat, 28 Oct 2023 21:52:12 -0300 Subject: [PATCH 4/8] increment ios + android build versions --- android/app/build.gradle | 2 +- ios/BetterRail.xcodeproj/project.pbxproj | 20 ++++++++++---------- ios/BetterRail/Info.plist | 2 +- ios/BetterRailWidget/Info.plist | 2 +- ios/StationIntent/Info.plist | 2 +- ios/WatchBetterRail Extension/Info.plist | 2 +- ios/WatchBetterRail/Info.plist | 2 +- 7 files changed, 16 insertions(+), 16 deletions(-) diff --git a/android/app/build.gradle b/android/app/build.gradle index a2e1e1af..8dc5960e 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -120,7 +120,7 @@ android { applicationId "com.betterrail" minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion - versionCode 75 + versionCode 76 versionName "2.2.2" missingDimensionStrategy "store", "play" } diff --git a/ios/BetterRail.xcodeproj/project.pbxproj b/ios/BetterRail.xcodeproj/project.pbxproj index 9365ce60..39fd4b93 100644 --- a/ios/BetterRail.xcodeproj/project.pbxproj +++ b/ios/BetterRail.xcodeproj/project.pbxproj @@ -1156,7 +1156,7 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = BetterRail/BetterRailDebug.entitlements; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; + CURRENT_PROJECT_VERSION = 2; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = UE6BVYPPFX; ENABLE_BITCODE = NO; @@ -1196,7 +1196,7 @@ CODE_SIGN_IDENTITY = "Apple Development"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; + CURRENT_PROJECT_VERSION = 2; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = UE6BVYPPFX; INFOPLIST_FILE = BetterRail/Info.plist; @@ -1359,7 +1359,7 @@ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; "CODE_SIGN_IDENTITY[sdk=watchos*]" = "iPhone Developer"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; + CURRENT_PROJECT_VERSION = 2; DEBUG_INFORMATION_FORMAT = dwarf; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=watchos*]" = UE6BVYPPFX; @@ -1401,7 +1401,7 @@ "CODE_SIGN_IDENTITY[sdk=watchos*]" = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; + CURRENT_PROJECT_VERSION = 2; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=watchos*]" = UE6BVYPPFX; @@ -1437,7 +1437,7 @@ CODE_SIGN_ENTITLEMENTS = "WatchBetterRail Extension/WatchBetterRail Extension.entitlements"; "CODE_SIGN_IDENTITY[sdk=watchos*]" = "iPhone Developer"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; + CURRENT_PROJECT_VERSION = 2; DEBUG_INFORMATION_FORMAT = dwarf; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=watchos*]" = UE6BVYPPFX; @@ -1478,7 +1478,7 @@ "CODE_SIGN_IDENTITY[sdk=watchos*]" = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; + CURRENT_PROJECT_VERSION = 2; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=watchos*]" = UE6BVYPPFX; @@ -1516,7 +1516,7 @@ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CODE_SIGN_ENTITLEMENTS = BetterRailWidgetExtensionDebug.entitlements; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; + CURRENT_PROJECT_VERSION = 2; DEBUG_INFORMATION_FORMAT = dwarf; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = UE6BVYPPFX; @@ -1557,7 +1557,7 @@ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; + CURRENT_PROJECT_VERSION = 2; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = UE6BVYPPFX; @@ -1590,7 +1590,7 @@ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CODE_SIGN_ENTITLEMENTS = StationIntent/StationIntentDebug.entitlements; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; + CURRENT_PROJECT_VERSION = 2; DEBUG_INFORMATION_FORMAT = dwarf; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = UE6BVYPPFX; @@ -1629,7 +1629,7 @@ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; + CURRENT_PROJECT_VERSION = 2; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = UE6BVYPPFX; diff --git a/ios/BetterRail/Info.plist b/ios/BetterRail/Info.plist index d92d919d..4c306e74 100644 --- a/ios/BetterRail/Info.plist +++ b/ios/BetterRail/Info.plist @@ -23,7 +23,7 @@ CFBundleSignature ???? CFBundleVersion - 1 + 2 ITSAppUsesNonExemptEncryption LSApplicationQueriesSchemes diff --git a/ios/BetterRailWidget/Info.plist b/ios/BetterRailWidget/Info.plist index 3c6e38da..f58f954d 100644 --- a/ios/BetterRailWidget/Info.plist +++ b/ios/BetterRailWidget/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString $(MARKETING_VERSION) CFBundleVersion - $(CURRENT_PROJECT_VERSION) + 2 NSExtension NSExtensionPointIdentifier diff --git a/ios/StationIntent/Info.plist b/ios/StationIntent/Info.plist index 0bc7d1fc..ae08b96c 100644 --- a/ios/StationIntent/Info.plist +++ b/ios/StationIntent/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString $(MARKETING_VERSION) CFBundleVersion - $(CURRENT_PROJECT_VERSION) + 2 NSExtension NSExtensionAttributes diff --git a/ios/WatchBetterRail Extension/Info.plist b/ios/WatchBetterRail Extension/Info.plist index 03ad0db8..f4f7b277 100644 --- a/ios/WatchBetterRail Extension/Info.plist +++ b/ios/WatchBetterRail Extension/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString $(MARKETING_VERSION) CFBundleVersion - $(CURRENT_PROJECT_VERSION) + 2 CLKComplicationPrincipalClass $(PRODUCT_MODULE_NAME).ComplicationController NSExtension diff --git a/ios/WatchBetterRail/Info.plist b/ios/WatchBetterRail/Info.plist index 9a07f13d..766b3725 100644 --- a/ios/WatchBetterRail/Info.plist +++ b/ios/WatchBetterRail/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString $(MARKETING_VERSION) CFBundleVersion - $(CURRENT_PROJECT_VERSION) + 2 UISupportedInterfaceOrientations UIInterfaceOrientationPortrait From b3e6fa317c03ba786465775cd6a226c546d1f04f Mon Sep 17 00:00:00 2001 From: Guy Tepper Date: Sat, 4 Nov 2023 12:18:17 -0300 Subject: [PATCH 5/8] fix products not showing up --- app/screens/settings/settings-tip-jar-screen.tsx | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/app/screens/settings/settings-tip-jar-screen.tsx b/app/screens/settings/settings-tip-jar-screen.tsx index d9d1a1ca..dd5eb1a8 100644 --- a/app/screens/settings/settings-tip-jar-screen.tsx +++ b/app/screens/settings/settings-tip-jar-screen.tsx @@ -85,13 +85,22 @@ const TOTAL_TIPS: TextStyle = { textAlign: "center", marginTop: spacing[4] } const installSource = getInstallerPackageNameSync() +const PRODUCT_IDS = ["better_rail_tip_1", "better_rail_tip_2", "better_rail_tip_3", "better_rail_tip_4"] + export const TipJarScreen = observer(function TipJarScreen() { const [isLoading, setIsLoading] = useState(false) const [thanksModalVisible, setModalVisible] = useState(false) const [sortedProducts, setSortedProducts] = useState([]) const { settings } = useStores() - const { products, finishTransaction, requestPurchase } = useIAP() + const { connected, products, finishTransaction, requestPurchase, getProducts, getAvailablePurchases, availablePurchases } = + useIAP() + + useEffect(() => { + if (connected) { + getProducts({ skus: PRODUCT_IDS }) + } + }, [connected, getProducts]) useEffect(() => { if (products.length > 0) { From fe391e2363d699ade42d48a119c3dffc32bd2dee Mon Sep 17 00:00:00 2001 From: Guy Tepper Date: Sat, 4 Nov 2023 12:18:40 -0300 Subject: [PATCH 6/8] fix apple id login prompt on app launch --- app/app.tsx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/app.tsx b/app/app.tsx index a77c1c18..a3fda2d2 100644 --- a/app/app.tsx +++ b/app/app.tsx @@ -51,7 +51,6 @@ import { enableScreens } from "react-native-screens" import { canRunLiveActivities, monitorLiveActivities } from "./utils/ios-helpers" import { useDeepLinking } from "./hooks/use-deep-linking" import { openActiveRide } from "./utils/helpers/ride-helpers" -import { useStations } from "./data/stations" enableScreens() export const queryClient = new QueryClient() @@ -156,7 +155,10 @@ function App() { } } - flushAvailablePurchases() + // to avoid prompting for login during development, only flush purchases in production + if (!__DEV__) { + flushAvailablePurchases() + } }, [currentPurchase]) // Before we show the app, we have to wait for our state to be ready. From e42970238451b4924744917137e4210b5083eda2 Mon Sep 17 00:00:00 2001 From: Guy Tepper Date: Sat, 4 Nov 2023 17:25:52 -0300 Subject: [PATCH 7/8] increment build version --- android/app/build.gradle | 2 +- ios/BetterRail.xcodeproj/project.pbxproj | 20 ++++++++++---------- ios/BetterRail/Info.plist | 2 +- ios/BetterRailWidget/Info.plist | 2 +- ios/StationIntent/Info.plist | 2 +- ios/WatchBetterRail Extension/Info.plist | 2 +- ios/WatchBetterRail/Info.plist | 2 +- 7 files changed, 16 insertions(+), 16 deletions(-) diff --git a/android/app/build.gradle b/android/app/build.gradle index 8dc5960e..79d70373 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -120,7 +120,7 @@ android { applicationId "com.betterrail" minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion - versionCode 76 + versionCode 77 versionName "2.2.2" missingDimensionStrategy "store", "play" } diff --git a/ios/BetterRail.xcodeproj/project.pbxproj b/ios/BetterRail.xcodeproj/project.pbxproj index 39fd4b93..4df30f46 100644 --- a/ios/BetterRail.xcodeproj/project.pbxproj +++ b/ios/BetterRail.xcodeproj/project.pbxproj @@ -1156,7 +1156,7 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = BetterRail/BetterRailDebug.entitlements; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 2; + CURRENT_PROJECT_VERSION = 3; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = UE6BVYPPFX; ENABLE_BITCODE = NO; @@ -1196,7 +1196,7 @@ CODE_SIGN_IDENTITY = "Apple Development"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 2; + CURRENT_PROJECT_VERSION = 3; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = UE6BVYPPFX; INFOPLIST_FILE = BetterRail/Info.plist; @@ -1359,7 +1359,7 @@ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; "CODE_SIGN_IDENTITY[sdk=watchos*]" = "iPhone Developer"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 2; + CURRENT_PROJECT_VERSION = 3; DEBUG_INFORMATION_FORMAT = dwarf; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=watchos*]" = UE6BVYPPFX; @@ -1401,7 +1401,7 @@ "CODE_SIGN_IDENTITY[sdk=watchos*]" = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 2; + CURRENT_PROJECT_VERSION = 3; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=watchos*]" = UE6BVYPPFX; @@ -1437,7 +1437,7 @@ CODE_SIGN_ENTITLEMENTS = "WatchBetterRail Extension/WatchBetterRail Extension.entitlements"; "CODE_SIGN_IDENTITY[sdk=watchos*]" = "iPhone Developer"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 2; + CURRENT_PROJECT_VERSION = 3; DEBUG_INFORMATION_FORMAT = dwarf; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=watchos*]" = UE6BVYPPFX; @@ -1478,7 +1478,7 @@ "CODE_SIGN_IDENTITY[sdk=watchos*]" = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 2; + CURRENT_PROJECT_VERSION = 3; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=watchos*]" = UE6BVYPPFX; @@ -1516,7 +1516,7 @@ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CODE_SIGN_ENTITLEMENTS = BetterRailWidgetExtensionDebug.entitlements; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 2; + CURRENT_PROJECT_VERSION = 3; DEBUG_INFORMATION_FORMAT = dwarf; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = UE6BVYPPFX; @@ -1557,7 +1557,7 @@ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 2; + CURRENT_PROJECT_VERSION = 3; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = UE6BVYPPFX; @@ -1590,7 +1590,7 @@ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CODE_SIGN_ENTITLEMENTS = StationIntent/StationIntentDebug.entitlements; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 2; + CURRENT_PROJECT_VERSION = 3; DEBUG_INFORMATION_FORMAT = dwarf; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = UE6BVYPPFX; @@ -1629,7 +1629,7 @@ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 2; + CURRENT_PROJECT_VERSION = 3; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = UE6BVYPPFX; diff --git a/ios/BetterRail/Info.plist b/ios/BetterRail/Info.plist index 4c306e74..2d8daff4 100644 --- a/ios/BetterRail/Info.plist +++ b/ios/BetterRail/Info.plist @@ -23,7 +23,7 @@ CFBundleSignature ???? CFBundleVersion - 2 + 3 ITSAppUsesNonExemptEncryption LSApplicationQueriesSchemes diff --git a/ios/BetterRailWidget/Info.plist b/ios/BetterRailWidget/Info.plist index f58f954d..2dc31726 100644 --- a/ios/BetterRailWidget/Info.plist +++ b/ios/BetterRailWidget/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString $(MARKETING_VERSION) CFBundleVersion - 2 + 3 NSExtension NSExtensionPointIdentifier diff --git a/ios/StationIntent/Info.plist b/ios/StationIntent/Info.plist index ae08b96c..8531d803 100644 --- a/ios/StationIntent/Info.plist +++ b/ios/StationIntent/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString $(MARKETING_VERSION) CFBundleVersion - 2 + 3 NSExtension NSExtensionAttributes diff --git a/ios/WatchBetterRail Extension/Info.plist b/ios/WatchBetterRail Extension/Info.plist index f4f7b277..e688a98d 100644 --- a/ios/WatchBetterRail Extension/Info.plist +++ b/ios/WatchBetterRail Extension/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString $(MARKETING_VERSION) CFBundleVersion - 2 + 3 CLKComplicationPrincipalClass $(PRODUCT_MODULE_NAME).ComplicationController NSExtension diff --git a/ios/WatchBetterRail/Info.plist b/ios/WatchBetterRail/Info.plist index 766b3725..d053b690 100644 --- a/ios/WatchBetterRail/Info.plist +++ b/ios/WatchBetterRail/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString $(MARKETING_VERSION) CFBundleVersion - 2 + 3 UISupportedInterfaceOrientations UIInterfaceOrientationPortrait From ede21f61afb898cc172a33c9314cd4ab547ba53e Mon Sep 17 00:00:00 2001 From: Matan Mashraki Date: Sun, 5 Nov 2023 00:23:25 +0200 Subject: [PATCH 8/8] Increment android version --- android/app/build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/android/app/build.gradle b/android/app/build.gradle index 79d70373..1f0a2086 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -120,7 +120,7 @@ android { applicationId "com.betterrail" minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion - versionCode 77 + versionCode 78 versionName "2.2.2" missingDimensionStrategy "store", "play" }