diff --git a/__tests__/LoadedApp.snapshot.tsx b/__tests__/LoadedApp.snapshot.tsx
index d15ec865c..b9a2c929a 100644
--- a/__tests__/LoadedApp.snapshot.tsx
+++ b/__tests__/LoadedApp.snapshot.tsx
@@ -123,6 +123,7 @@ describe('Component LoadedApp - test', () => {
const mode = 'basic';
const background = {
batches: 0,
+ message: '',
date: 0,
};
const readOnly = false;
diff --git a/__tests__/LoadingApp.snapshot.tsx b/__tests__/LoadingApp.snapshot.tsx
index 5515fd500..55c628222 100644
--- a/__tests__/LoadingApp.snapshot.tsx
+++ b/__tests__/LoadingApp.snapshot.tsx
@@ -123,6 +123,7 @@ describe('Component LoadingApp - test', () => {
const mode = 'basic';
const background = {
batches: 0,
+ message: '',
date: 0,
};
const firstLaunchingMessage = false;
diff --git a/__tests__/__snapshots__/About.snapshot.tsx.snap b/__tests__/__snapshots__/About.snapshot.tsx.snap
index 2316e18d5..60f6740ee 100644
--- a/__tests__/__snapshots__/About.snapshot.tsx.snap
+++ b/__tests__/__snapshots__/About.snapshot.tsx.snap
@@ -169,13 +169,6 @@ exports[`Component About - test About - snapshot 1`] = `
>
text translated
-
label
-
`;
@@ -49,13 +42,6 @@ exports[`Component DetailLine - test DetailLine value - snapshot 1`] = `
>
label
-
translated text
-
translated text
-
translated text
-
translated text
-
translated text
-
translated text
-
translated text
-
translated text
-
translated text
-
translated text
-
Sync ID
-
translated text
-
translated text
-
translated text
-
translated text
-
(false);
const [privacy, setPrivacy] = useState(false);
const [mode, setMode] = useState<'basic' | 'advanced'>('basic');
- const [background, setBackground] = useState({ batches: 0, date: 0 });
+ const [background, setBackground] = useState({ batches: 0, message: '', date: 0 });
const [loading, setLoading] = useState(true);
const file = useMemo(
() => ({
diff --git a/app/LoadingApp/LoadingApp.tsx b/app/LoadingApp/LoadingApp.tsx
index 6d5795d8a..e5a6d8801 100644
--- a/app/LoadingApp/LoadingApp.tsx
+++ b/app/LoadingApp/LoadingApp.tsx
@@ -71,7 +71,7 @@ export default function LoadingApp(props: LoadingAppProps) {
const [sendAll, setSendAll] = useState(false);
const [privacy, setPrivacy] = useState(false);
const [mode, setMode] = useState<'basic' | 'advanced'>('advanced'); // by default advanced
- const [background, setBackground] = useState({ batches: 0, date: 0 });
+ const [background, setBackground] = useState({ batches: 0, message: '', date: 0 });
const [firstLaunchingMessage, setFirstLaunchingMessage] = useState(false);
const [loading, setLoading] = useState(true);
const file = useMemo(
diff --git a/app/translations/en.json b/app/translations/en.json
index e3184ee86..1ee7c99ef 100644
--- a/app/translations/en.json
+++ b/app/translations/en.json
@@ -1,6 +1,6 @@
{
"zingo": "Zingo!",
- "version": "zingo-1.3.3 (131)",
+ "version": "zingo-1.3.4 (137)",
"loading": "loading...",
"connectingserver": "Connecting to the server...",
"wait": "Please wait...",
diff --git a/app/translations/es.json b/app/translations/es.json
index baadd18ad..1b238ee15 100644
--- a/app/translations/es.json
+++ b/app/translations/es.json
@@ -1,6 +1,6 @@
{
"zingo": "Zingo!",
- "version": "zingo-1.3.3 (131)",
+ "version": "zingo-1.3.4 (137)",
"loading": "cargando...",
"connectingserver": "Conectando con el servidor...",
"wait": "Por favor espere...",
diff --git a/components/Background/BackgroundFileImpl.ts b/components/Background/BackgroundFileImpl.ts
index f76095090..4dcf38b1e 100644
--- a/components/Background/BackgroundFileImpl.ts
+++ b/components/Background/BackgroundFileImpl.ts
@@ -10,7 +10,7 @@ export default class BackgroundFileImpl {
// Write the server background
static async reset() {
const fileName = await this.getFileName();
- const newBackground: BackgroundType = { batches: 0, date: 0 };
+ const newBackground: BackgroundType = { batches: 0, message: '', date: 0 };
RNFS.writeFile(fileName, JSON.stringify(newBackground), 'utf8')
.then(() => {
@@ -28,10 +28,12 @@ export default class BackgroundFileImpl {
const fileName = await this.getFileName();
try {
- return JSON.parse((await RNFS.readFile(fileName, 'utf8')).toString()) as BackgroundType;
+ const r = JSON.parse((await RNFS.readFile(fileName, 'utf8')).toString()) as BackgroundType;
+ console.log('background json', r);
+ return r;
} catch (err) {
// File probably doesn't exist, so return nothing
- //console.log(err);
+ console.log('background json Error', err);
return { batches: 0, date: 0 } as BackgroundType;
}
}
diff --git a/components/Components/DetailLine.tsx b/components/Components/DetailLine.tsx
index 7f039a1c7..1c15d178e 100644
--- a/components/Components/DetailLine.tsx
+++ b/components/Components/DetailLine.tsx
@@ -23,7 +23,6 @@ const DetailLine: React.FunctionComponent = ({ label, value, ch
return (
{label}
-
{!!value && (
{
diff --git a/components/SyncReport/SyncReport.tsx b/components/SyncReport/SyncReport.tsx
index 99b3e3ec8..c2fa3ebf5 100644
--- a/components/SyncReport/SyncReport.tsx
+++ b/components/SyncReport/SyncReport.tsx
@@ -219,12 +219,12 @@ const SyncReport: React.FunctionComponent = ({ closeModal }) =>
/>
)}
- {background.date > 0 && showBackgroundLegend && (
+ {Number(background.date) > 0 && showBackgroundLegend && (
= ({ closeModal }) =>
moment(Number(Number(background.date).toFixed(0)) * 1000).format('YYYY MMM D h:mm a')
}
/>
+ {!!background.message && {background.message}}
)}
{maxBlocks && netInfo.isConnected ? (
diff --git a/ios/Podfile b/ios/Podfile
index 6f41c1c84..29b036510 100644
--- a/ios/Podfile
+++ b/ios/Podfile
@@ -26,7 +26,7 @@ target 'ZingoMobile' do
#
# Note that if you have use_frameworks! enabled, Flipper will not work and
# you should disable the next line.
- use_flipper!()
+ # use_flipper!()
post_install do |installer|
react_native_post_install(installer)
diff --git a/ios/Podfile.lock b/ios/Podfile.lock
index 9f92eca78..254ab11ba 100644
--- a/ios/Podfile.lock
+++ b/ios/Podfile.lock
@@ -1,7 +1,6 @@
PODS:
- BEMCheckBox (1.4.1)
- boost (1.76.0)
- - CocoaAsyncSocket (7.6.5)
- DoubleConversion (1.1.6)
- FBLazyVector (0.70.7)
- FBReactNativeSpec (0.70.7):
@@ -11,72 +10,10 @@ PODS:
- React-Core (= 0.70.7)
- React-jsi (= 0.70.7)
- ReactCommon/turbomodule/core (= 0.70.7)
- - Flipper (0.125.0):
- - Flipper-Folly (~> 2.6)
- - Flipper-RSocket (~> 1.4)
- - Flipper-Boost-iOSX (1.76.0.1.11)
- - Flipper-DoubleConversion (3.2.0.1)
- - Flipper-Fmt (7.1.7)
- - Flipper-Folly (2.6.10):
- - Flipper-Boost-iOSX
- - Flipper-DoubleConversion
- - Flipper-Fmt (= 7.1.7)
- - Flipper-Glog
- - libevent (~> 2.1.12)
- - OpenSSL-Universal (= 1.1.1100)
- - Flipper-Glog (0.5.0.5)
- - Flipper-PeerTalk (0.0.4)
- - Flipper-RSocket (1.4.3):
- - Flipper-Folly (~> 2.6)
- - FlipperKit (0.125.0):
- - FlipperKit/Core (= 0.125.0)
- - FlipperKit/Core (0.125.0):
- - Flipper (~> 0.125.0)
- - FlipperKit/CppBridge
- - FlipperKit/FBCxxFollyDynamicConvert
- - FlipperKit/FBDefines
- - FlipperKit/FKPortForwarding
- - SocketRocket (~> 0.6.0)
- - FlipperKit/CppBridge (0.125.0):
- - Flipper (~> 0.125.0)
- - FlipperKit/FBCxxFollyDynamicConvert (0.125.0):
- - Flipper-Folly (~> 2.6)
- - FlipperKit/FBDefines (0.125.0)
- - FlipperKit/FKPortForwarding (0.125.0):
- - CocoaAsyncSocket (~> 7.6)
- - Flipper-PeerTalk (~> 0.0.4)
- - FlipperKit/FlipperKitHighlightOverlay (0.125.0)
- - FlipperKit/FlipperKitLayoutHelpers (0.125.0):
- - FlipperKit/Core
- - FlipperKit/FlipperKitHighlightOverlay
- - FlipperKit/FlipperKitLayoutTextSearchable
- - FlipperKit/FlipperKitLayoutIOSDescriptors (0.125.0):
- - FlipperKit/Core
- - FlipperKit/FlipperKitHighlightOverlay
- - FlipperKit/FlipperKitLayoutHelpers
- - YogaKit (~> 1.18)
- - FlipperKit/FlipperKitLayoutPlugin (0.125.0):
- - FlipperKit/Core
- - FlipperKit/FlipperKitHighlightOverlay
- - FlipperKit/FlipperKitLayoutHelpers
- - FlipperKit/FlipperKitLayoutIOSDescriptors
- - FlipperKit/FlipperKitLayoutTextSearchable
- - YogaKit (~> 1.18)
- - FlipperKit/FlipperKitLayoutTextSearchable (0.125.0)
- - FlipperKit/FlipperKitNetworkPlugin (0.125.0):
- - FlipperKit/Core
- - FlipperKit/FlipperKitReactPlugin (0.125.0):
- - FlipperKit/Core
- - FlipperKit/FlipperKitUserDefaultsPlugin (0.125.0):
- - FlipperKit/Core
- - FlipperKit/SKIOSNetworkPlugin (0.125.0):
- - FlipperKit/Core
- - FlipperKit/FlipperKitNetworkPlugin
- fmt (6.2.1)
- glog (0.3.5)
- hermes-engine (0.70.7)
- libevent (2.1.12)
- - OpenSSL-Universal (1.1.1100)
- Permission-Camera (3.6.1):
- RNPermissions
- RCT-Folly (2021.07.22.00):
@@ -438,41 +375,16 @@ PODS:
- React-Core
- RNSVG (13.14.0):
- React-Core
- - SocketRocket (0.6.0)
- Yoga (1.14.0)
- - YogaKit (1.18.1):
- - Yoga (~> 1.14)
DEPENDENCIES:
- boost (from `../node_modules/react-native/third-party-podspecs/boost.podspec`)
- DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`)
- FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector`)
- FBReactNativeSpec (from `../node_modules/react-native/React/FBReactNativeSpec`)
- - Flipper (= 0.125.0)
- - Flipper-Boost-iOSX (= 1.76.0.1.11)
- - Flipper-DoubleConversion (= 3.2.0.1)
- - Flipper-Fmt (= 7.1.7)
- - Flipper-Folly (= 2.6.10)
- - Flipper-Glog (= 0.5.0.5)
- - Flipper-PeerTalk (= 0.0.4)
- - Flipper-RSocket (= 1.4.3)
- - FlipperKit (= 0.125.0)
- - FlipperKit/Core (= 0.125.0)
- - FlipperKit/CppBridge (= 0.125.0)
- - FlipperKit/FBCxxFollyDynamicConvert (= 0.125.0)
- - FlipperKit/FBDefines (= 0.125.0)
- - FlipperKit/FKPortForwarding (= 0.125.0)
- - FlipperKit/FlipperKitHighlightOverlay (= 0.125.0)
- - FlipperKit/FlipperKitLayoutPlugin (= 0.125.0)
- - FlipperKit/FlipperKitLayoutTextSearchable (= 0.125.0)
- - FlipperKit/FlipperKitNetworkPlugin (= 0.125.0)
- - FlipperKit/FlipperKitReactPlugin (= 0.125.0)
- - FlipperKit/FlipperKitUserDefaultsPlugin (= 0.125.0)
- - FlipperKit/SKIOSNetworkPlugin (= 0.125.0)
- glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`)
- hermes-engine (from `../node_modules/react-native/sdks/hermes/hermes-engine.podspec`)
- libevent (~> 2.1.12)
- - OpenSSL-Universal (= 1.1.1100)
- Permission-Camera (from `../node_modules/react-native-permissions/ios/Camera`)
- RCT-Folly (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`)
- RCTRequired (from `../node_modules/react-native/Libraries/RCTRequired`)
@@ -524,21 +436,8 @@ DEPENDENCIES:
SPEC REPOS:
trunk:
- BEMCheckBox
- - CocoaAsyncSocket
- - Flipper
- - Flipper-Boost-iOSX
- - Flipper-DoubleConversion
- - Flipper-Fmt
- - Flipper-Folly
- - Flipper-Glog
- - Flipper-PeerTalk
- - Flipper-RSocket
- - FlipperKit
- fmt
- libevent
- - OpenSSL-Universal
- - SocketRocket
- - YogaKit
EXTERNAL SOURCES:
boost:
@@ -649,24 +548,13 @@ EXTERNAL SOURCES:
SPEC CHECKSUMS:
BEMCheckBox: 5ba6e37ade3d3657b36caecc35c8b75c6c2b1a4e
boost: a7c83b31436843459a1961bfd74b96033dc77234
- CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99
DoubleConversion: 5189b271737e1565bdce30deb4a08d647e3f5f54
FBLazyVector: a6454570f573a0f6f1d397e5a95c13e8e45d1700
FBReactNativeSpec: 09e8dfba44487e5dc4882a9f5318cde67549549c
- Flipper: 26fc4b7382499f1281eb8cb921e5c3ad6de91fe0
- Flipper-Boost-iOSX: fd1e2b8cbef7e662a122412d7ac5f5bea715403c
- Flipper-DoubleConversion: 2dc99b02f658daf147069aad9dbd29d8feb06d30
- Flipper-Fmt: 60cbdd92fc254826e61d669a5d87ef7015396a9b
- Flipper-Folly: 584845625005ff068a6ebf41f857f468decd26b3
- Flipper-Glog: 70c50ce58ddaf67dc35180db05f191692570f446
- Flipper-PeerTalk: 116d8f857dc6ef55c7a5a75ea3ceaafe878aadc9
- Flipper-RSocket: d9d9ade67cbecf6ac10730304bf5607266dd2541
- FlipperKit: cbdee19bdd4e7f05472a66ce290f1b729ba3cb86
fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9
glog: 04b94705f318337d7ead9e6d17c019bd9b1f6b1b
hermes-engine: 566e656aa95456a3f3f739fd76ea9a9656f2633f
libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913
- OpenSSL-Universal: ebc357f1e6bc71fa463ccb2fe676756aff50e88c
Permission-Camera: bf6791b17c7f614b6826019fcfdcc286d3a107f6
RCT-Folly: 0080d0a6ebf2577475bda044aa59e2ca1f909cda
RCTRequired: 837880d26ec119e105317dc28a456f3016bf16d1
@@ -712,10 +600,8 @@ SPEC CHECKSUMS:
RNScreens: fa9b582d85ae5d62c91c66003b5278458fed7aaa
RNSnackbar: 3727b42bf6c4314a53c18185b5203e915a4ab020
RNSVG: d00c8f91c3cbf6d476451313a18f04d220d4f396
- SocketRocket: fccef3f9c5cedea1353a9ef6ada904fde10d6608
Yoga: 92d086bb705a41cc588599b51db726ba7b1d341c
- YogaKit: f782866e155069a2cca2517aafea43200b01fd5a
-PODFILE CHECKSUM: 0cd697314ca1d348e98421488c8a98740452be65
+PODFILE CHECKSUM: fae9e1859005693a8f37b3ae6aa24667b97431f9
COCOAPODS: 1.11.3
diff --git a/ios/ZingoMobile.xcodeproj/project.pbxproj b/ios/ZingoMobile.xcodeproj/project.pbxproj
index dd3eb9c99..4b53f90ed 100644
--- a/ios/ZingoMobile.xcodeproj/project.pbxproj
+++ b/ios/ZingoMobile.xcodeproj/project.pbxproj
@@ -16,9 +16,9 @@
1F7D32272B73DF3800D2879C /* Reachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F7D32262B73DF3800D2879C /* Reachability.m */; };
1F7D32282B73DF3800D2879C /* Reachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F7D32262B73DF3800D2879C /* Reachability.m */; };
1FE8E9AC296B85FC004A256B /* BackgroundTasks.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1FE8E9AB296B85FC004A256B /* BackgroundTasks.framework */; };
- 5F9FEE8650525C4AF43859AB /* libPods-ZingoMobile.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1794449599A63970811D5CF0 /* libPods-ZingoMobile.a */; };
+ 5098D543039A9E03AA480261 /* libPods-ZingoMobile-ZingoMobileTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = CEC2C8D3B44A4AA53A1CFA27 /* libPods-ZingoMobile-ZingoMobileTests.a */; };
+ 68AF977CCE2A670C04DC170D /* libPods-ZingoMobile.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 282454125D5B2CC66CB9E5AD /* libPods-ZingoMobile.a */; };
81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; };
- BEE8CE82BFAC39CF1118356C /* libPods-ZingoMobile-ZingoMobileTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 57C30AB6DAB41A2ED2699835 /* libPods-ZingoMobile-ZingoMobileTests.a */; };
DB4DE518264B103E0084F17D /* RPCModule.m in Sources */ = {isa = PBXBuildFile; fileRef = DB4DE517264B103E0084F17D /* RPCModule.m */; };
/* End PBXBuildFile section */
@@ -33,18 +33,15 @@
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
- 00C6628EA1AABD9135EC0B2D /* Pods-ZingoMobile.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ZingoMobile.release.xcconfig"; path = "Target Support Files/Pods-ZingoMobile/Pods-ZingoMobile.release.xcconfig"; sourceTree = ""; };
00E356EE1AD99517003FC87E /* ZingoMobileTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ZingoMobileTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
00E356F21AD99517003FC87E /* ZingoMobileTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ZingoMobileTests.m; sourceTree = ""; };
- 139FC776D22970EDA9C040D6 /* Pods-ZingoMobile.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ZingoMobile.debug.xcconfig"; path = "Target Support Files/Pods-ZingoMobile/Pods-ZingoMobile.debug.xcconfig"; sourceTree = ""; };
13B07F961A680F5B00A75B9A /* Zingo!.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Zingo!.app"; sourceTree = BUILT_PRODUCTS_DIR; };
13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = ZingoMobile/AppDelegate.h; sourceTree = ""; };
13B07FB01A68108700A75B9A /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AppDelegate.m; path = ZingoMobile/AppDelegate.m; sourceTree = ""; };
13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = ZingoMobile/Images.xcassets; sourceTree = ""; };
13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = ZingoMobile/Info.plist; sourceTree = ""; };
13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = ZingoMobile/main.m; sourceTree = ""; };
- 1794449599A63970811D5CF0 /* libPods-ZingoMobile.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ZingoMobile.a"; sourceTree = BUILT_PRODUCTS_DIR; };
1F26E03C28C0E45B009737D7 /* librustios.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librustios.a; path = "../rust/target/aarch64-apple-ios-sim/release/librustios.a"; sourceTree = ""; };
1F70326429905E6A001D70A2 /* ZingoMobile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; name = ZingoMobile.entitlements; path = ZingoMobile/ZingoMobile.entitlements; sourceTree = ""; };
1F7638CA28BD7C3E0017F9B6 /* librustios.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librustios.a; path = ../rust/target/universal/release/librustios.a; sourceTree = ""; };
@@ -52,10 +49,13 @@
1F7D32252B73DF1600D2879C /* Reachability.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Reachability.h; path = ZingoMobile/Reachability.h; sourceTree = ""; };
1F7D32262B73DF3800D2879C /* Reachability.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = Reachability.m; path = ZingoMobile/Reachability.m; sourceTree = ""; };
1FE8E9AB296B85FC004A256B /* BackgroundTasks.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = BackgroundTasks.framework; path = System/Library/Frameworks/BackgroundTasks.framework; sourceTree = SDKROOT; };
- 57C30AB6DAB41A2ED2699835 /* libPods-ZingoMobile-ZingoMobileTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ZingoMobile-ZingoMobileTests.a"; sourceTree = BUILT_PRODUCTS_DIR; };
- 65B24C2E2D48C83D6B5DDF6E /* Pods-ZingoMobile-ZingoMobileTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ZingoMobile-ZingoMobileTests.debug.xcconfig"; path = "Target Support Files/Pods-ZingoMobile-ZingoMobileTests/Pods-ZingoMobile-ZingoMobileTests.debug.xcconfig"; sourceTree = ""; };
+ 20781046593E676734B4C1A1 /* Pods-ZingoMobile.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ZingoMobile.release.xcconfig"; path = "Target Support Files/Pods-ZingoMobile/Pods-ZingoMobile.release.xcconfig"; sourceTree = ""; };
+ 282454125D5B2CC66CB9E5AD /* libPods-ZingoMobile.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ZingoMobile.a"; sourceTree = BUILT_PRODUCTS_DIR; };
81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = ZingoMobile/LaunchScreen.storyboard; sourceTree = ""; };
- 85DB7315AECC5EFD25F9B82E /* Pods-ZingoMobile-ZingoMobileTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ZingoMobile-ZingoMobileTests.release.xcconfig"; path = "Target Support Files/Pods-ZingoMobile-ZingoMobileTests/Pods-ZingoMobile-ZingoMobileTests.release.xcconfig"; sourceTree = ""; };
+ A49157817C7C9ECAF27CAF75 /* Pods-ZingoMobile-ZingoMobileTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ZingoMobile-ZingoMobileTests.release.xcconfig"; path = "Target Support Files/Pods-ZingoMobile-ZingoMobileTests/Pods-ZingoMobile-ZingoMobileTests.release.xcconfig"; sourceTree = ""; };
+ A751EDF0EE2C9974B63084B6 /* Pods-ZingoMobile.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ZingoMobile.debug.xcconfig"; path = "Target Support Files/Pods-ZingoMobile/Pods-ZingoMobile.debug.xcconfig"; sourceTree = ""; };
+ C37E0D02688498F5FE2B6161 /* Pods-ZingoMobile-ZingoMobileTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ZingoMobile-ZingoMobileTests.debug.xcconfig"; path = "Target Support Files/Pods-ZingoMobile-ZingoMobileTests/Pods-ZingoMobile-ZingoMobileTests.debug.xcconfig"; sourceTree = ""; };
+ CEC2C8D3B44A4AA53A1CFA27 /* libPods-ZingoMobile-ZingoMobileTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ZingoMobile-ZingoMobileTests.a"; sourceTree = BUILT_PRODUCTS_DIR; };
DB4DE513264B0EBA0084F17D /* librustios.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = librustios.a; sourceTree = ""; };
DB4DE515264B0FE30084F17D /* rust.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rust.h; sourceTree = ""; };
DB4DE516264B103E0084F17D /* RPCModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RPCModule.h; sourceTree = ""; };
@@ -68,7 +68,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
- BEE8CE82BFAC39CF1118356C /* libPods-ZingoMobile-ZingoMobileTests.a in Frameworks */,
+ 5098D543039A9E03AA480261 /* libPods-ZingoMobile-ZingoMobileTests.a in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -77,9 +77,9 @@
buildActionMask = 2147483647;
files = (
1FE8E9AC296B85FC004A256B /* BackgroundTasks.framework in Frameworks */,
- 5F9FEE8650525C4AF43859AB /* libPods-ZingoMobile.a in Frameworks */,
1F7D321D2B71D44800D2879C /* SystemConfiguration.framework in Frameworks */,
1F1CE02628C13DBD00A954D7 /* librustios.a in Frameworks */,
+ 68AF977CCE2A670C04DC170D /* libPods-ZingoMobile.a in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -130,8 +130,8 @@
1F7638CA28BD7C3E0017F9B6 /* librustios.a */,
1F26E03C28C0E45B009737D7 /* librustios.a */,
ED297162215061F000B7C4FE /* JavaScriptCore.framework */,
- 1794449599A63970811D5CF0 /* libPods-ZingoMobile.a */,
- 57C30AB6DAB41A2ED2699835 /* libPods-ZingoMobile-ZingoMobileTests.a */,
+ 282454125D5B2CC66CB9E5AD /* libPods-ZingoMobile.a */,
+ CEC2C8D3B44A4AA53A1CFA27 /* libPods-ZingoMobile-ZingoMobileTests.a */,
);
name = Frameworks;
sourceTree = "";
@@ -171,10 +171,10 @@
8BB7EBE9935B479E64CBB9A8 /* Pods */ = {
isa = PBXGroup;
children = (
- 139FC776D22970EDA9C040D6 /* Pods-ZingoMobile.debug.xcconfig */,
- 00C6628EA1AABD9135EC0B2D /* Pods-ZingoMobile.release.xcconfig */,
- 65B24C2E2D48C83D6B5DDF6E /* Pods-ZingoMobile-ZingoMobileTests.debug.xcconfig */,
- 85DB7315AECC5EFD25F9B82E /* Pods-ZingoMobile-ZingoMobileTests.release.xcconfig */,
+ A751EDF0EE2C9974B63084B6 /* Pods-ZingoMobile.debug.xcconfig */,
+ 20781046593E676734B4C1A1 /* Pods-ZingoMobile.release.xcconfig */,
+ C37E0D02688498F5FE2B6161 /* Pods-ZingoMobile-ZingoMobileTests.debug.xcconfig */,
+ A49157817C7C9ECAF27CAF75 /* Pods-ZingoMobile-ZingoMobileTests.release.xcconfig */,
);
path = Pods;
sourceTree = "";
@@ -186,12 +186,12 @@
isa = PBXNativeTarget;
buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "ZingoMobileTests" */;
buildPhases = (
- 79CA5B081E192A5501CD6F98 /* [CP] Check Pods Manifest.lock */,
+ 6A7FBB4C3809E62C99E5BAA8 /* [CP] Check Pods Manifest.lock */,
00E356EA1AD99517003FC87E /* Sources */,
00E356EB1AD99517003FC87E /* Frameworks */,
00E356EC1AD99517003FC87E /* Resources */,
- 0D3D17FAF0DEFCD154030675 /* [CP] Copy Pods Resources */,
- BC5D44F4D72D5D25E55DC1C3 /* [CP] Embed Pods Frameworks */,
+ 522EC7629EDD66D33E9883EA /* [CP] Embed Pods Frameworks */,
+ 303E5C0C4544E99B32D0B38B /* [CP] Copy Pods Resources */,
);
buildRules = (
);
@@ -207,14 +207,14 @@
isa = PBXNativeTarget;
buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "ZingoMobile" */;
buildPhases = (
- 2C17B0B3DDB4B24705C85EF5 /* [CP] Check Pods Manifest.lock */,
+ 62EE9B249780A8080909AEAF /* [CP] Check Pods Manifest.lock */,
FD10A7F022414F080027D42C /* Start Packager */,
13B07F871A680F5B00A75B9A /* Sources */,
13B07F8C1A680F5B00A75B9A /* Frameworks */,
13B07F8E1A680F5B00A75B9A /* Resources */,
00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */,
- AD8490F36A95467C39CED80F /* [CP] Copy Pods Resources */,
- 7BCB320348E1B623ECB83A62 /* [CP] Embed Pods Frameworks */,
+ EEB66B623DFD65B19EDBBF21 /* [CP] Embed Pods Frameworks */,
+ 044B2C3F5307366B253F4105 /* [CP] Copy Pods Resources */,
);
buildRules = (
);
@@ -295,116 +295,116 @@
shellPath = /bin/sh;
shellScript = "set -e\n\nexport NODE_BINARY=~/.nvm/versions/node/v20.9.0/bin/node\n../node_modules/react-native/scripts/react-native-xcode.sh\n";
};
- 0D3D17FAF0DEFCD154030675 /* [CP] Copy Pods Resources */ = {
+ 044B2C3F5307366B253F4105 /* [CP] Copy Pods Resources */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
- "${PODS_ROOT}/Target Support Files/Pods-ZingoMobile-ZingoMobileTests/Pods-ZingoMobile-ZingoMobileTests-resources-${CONFIGURATION}-input-files.xcfilelist",
+ "${PODS_ROOT}/Target Support Files/Pods-ZingoMobile/Pods-ZingoMobile-resources-${CONFIGURATION}-input-files.xcfilelist",
);
name = "[CP] Copy Pods Resources";
outputFileListPaths = (
- "${PODS_ROOT}/Target Support Files/Pods-ZingoMobile-ZingoMobileTests/Pods-ZingoMobile-ZingoMobileTests-resources-${CONFIGURATION}-output-files.xcfilelist",
+ "${PODS_ROOT}/Target Support Files/Pods-ZingoMobile/Pods-ZingoMobile-resources-${CONFIGURATION}-output-files.xcfilelist",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ZingoMobile-ZingoMobileTests/Pods-ZingoMobile-ZingoMobileTests-resources.sh\"\n";
+ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ZingoMobile/Pods-ZingoMobile-resources.sh\"\n";
showEnvVarsInLog = 0;
};
- 2C17B0B3DDB4B24705C85EF5 /* [CP] Check Pods Manifest.lock */ = {
+ 303E5C0C4544E99B32D0B38B /* [CP] Copy Pods Resources */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
+ "${PODS_ROOT}/Target Support Files/Pods-ZingoMobile-ZingoMobileTests/Pods-ZingoMobile-ZingoMobileTests-resources-${CONFIGURATION}-input-files.xcfilelist",
);
- inputPaths = (
- "${PODS_PODFILE_DIR_PATH}/Podfile.lock",
- "${PODS_ROOT}/Manifest.lock",
- );
- name = "[CP] Check Pods Manifest.lock";
+ name = "[CP] Copy Pods Resources";
outputFileListPaths = (
- );
- outputPaths = (
- "$(DERIVED_FILE_DIR)/Pods-ZingoMobile-checkManifestLockResult.txt",
+ "${PODS_ROOT}/Target Support Files/Pods-ZingoMobile-ZingoMobileTests/Pods-ZingoMobile-ZingoMobileTests-resources-${CONFIGURATION}-output-files.xcfilelist",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
+ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ZingoMobile-ZingoMobileTests/Pods-ZingoMobile-ZingoMobileTests-resources.sh\"\n";
showEnvVarsInLog = 0;
};
- 79CA5B081E192A5501CD6F98 /* [CP] Check Pods Manifest.lock */ = {
+ 522EC7629EDD66D33E9883EA /* [CP] Embed Pods Frameworks */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
+ "${PODS_ROOT}/Target Support Files/Pods-ZingoMobile-ZingoMobileTests/Pods-ZingoMobile-ZingoMobileTests-frameworks-${CONFIGURATION}-input-files.xcfilelist",
);
- inputPaths = (
- "${PODS_PODFILE_DIR_PATH}/Podfile.lock",
- "${PODS_ROOT}/Manifest.lock",
- );
- name = "[CP] Check Pods Manifest.lock";
+ name = "[CP] Embed Pods Frameworks";
outputFileListPaths = (
- );
- outputPaths = (
- "$(DERIVED_FILE_DIR)/Pods-ZingoMobile-ZingoMobileTests-checkManifestLockResult.txt",
+ "${PODS_ROOT}/Target Support Files/Pods-ZingoMobile-ZingoMobileTests/Pods-ZingoMobile-ZingoMobileTests-frameworks-${CONFIGURATION}-output-files.xcfilelist",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
+ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ZingoMobile-ZingoMobileTests/Pods-ZingoMobile-ZingoMobileTests-frameworks.sh\"\n";
showEnvVarsInLog = 0;
};
- 7BCB320348E1B623ECB83A62 /* [CP] Embed Pods Frameworks */ = {
+ 62EE9B249780A8080909AEAF /* [CP] Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
- "${PODS_ROOT}/Target Support Files/Pods-ZingoMobile/Pods-ZingoMobile-frameworks-${CONFIGURATION}-input-files.xcfilelist",
);
- name = "[CP] Embed Pods Frameworks";
+ inputPaths = (
+ "${PODS_PODFILE_DIR_PATH}/Podfile.lock",
+ "${PODS_ROOT}/Manifest.lock",
+ );
+ name = "[CP] Check Pods Manifest.lock";
outputFileListPaths = (
- "${PODS_ROOT}/Target Support Files/Pods-ZingoMobile/Pods-ZingoMobile-frameworks-${CONFIGURATION}-output-files.xcfilelist",
+ );
+ outputPaths = (
+ "$(DERIVED_FILE_DIR)/Pods-ZingoMobile-checkManifestLockResult.txt",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ZingoMobile/Pods-ZingoMobile-frameworks.sh\"\n";
+ shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
showEnvVarsInLog = 0;
};
- AD8490F36A95467C39CED80F /* [CP] Copy Pods Resources */ = {
+ 6A7FBB4C3809E62C99E5BAA8 /* [CP] Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
- "${PODS_ROOT}/Target Support Files/Pods-ZingoMobile/Pods-ZingoMobile-resources-${CONFIGURATION}-input-files.xcfilelist",
);
- name = "[CP] Copy Pods Resources";
+ inputPaths = (
+ "${PODS_PODFILE_DIR_PATH}/Podfile.lock",
+ "${PODS_ROOT}/Manifest.lock",
+ );
+ name = "[CP] Check Pods Manifest.lock";
outputFileListPaths = (
- "${PODS_ROOT}/Target Support Files/Pods-ZingoMobile/Pods-ZingoMobile-resources-${CONFIGURATION}-output-files.xcfilelist",
+ );
+ outputPaths = (
+ "$(DERIVED_FILE_DIR)/Pods-ZingoMobile-ZingoMobileTests-checkManifestLockResult.txt",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ZingoMobile/Pods-ZingoMobile-resources.sh\"\n";
+ shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
showEnvVarsInLog = 0;
};
- BC5D44F4D72D5D25E55DC1C3 /* [CP] Embed Pods Frameworks */ = {
+ EEB66B623DFD65B19EDBBF21 /* [CP] Embed Pods Frameworks */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
- "${PODS_ROOT}/Target Support Files/Pods-ZingoMobile-ZingoMobileTests/Pods-ZingoMobile-ZingoMobileTests-frameworks-${CONFIGURATION}-input-files.xcfilelist",
+ "${PODS_ROOT}/Target Support Files/Pods-ZingoMobile/Pods-ZingoMobile-frameworks-${CONFIGURATION}-input-files.xcfilelist",
);
name = "[CP] Embed Pods Frameworks";
outputFileListPaths = (
- "${PODS_ROOT}/Target Support Files/Pods-ZingoMobile-ZingoMobileTests/Pods-ZingoMobile-ZingoMobileTests-frameworks-${CONFIGURATION}-output-files.xcfilelist",
+ "${PODS_ROOT}/Target Support Files/Pods-ZingoMobile/Pods-ZingoMobile-frameworks-${CONFIGURATION}-output-files.xcfilelist",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ZingoMobile-ZingoMobileTests/Pods-ZingoMobile-ZingoMobileTests-frameworks.sh\"\n";
+ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ZingoMobile/Pods-ZingoMobile-frameworks.sh\"\n";
showEnvVarsInLog = 0;
};
FD10A7F022414F080027D42C /* Start Packager */ = {
@@ -462,7 +462,7 @@
/* Begin XCBuildConfiguration section */
00E356F61AD99517003FC87E /* Debug */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = 65B24C2E2D48C83D6B5DDF6E /* Pods-ZingoMobile-ZingoMobileTests.debug.xcconfig */;
+ baseConfigurationReference = C37E0D02688498F5FE2B6161 /* Pods-ZingoMobile-ZingoMobileTests.debug.xcconfig */;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
BUNDLE_LOADER = "$(TEST_HOST)";
@@ -472,7 +472,7 @@
"$(inherited)",
);
INFOPLIST_FILE = ZingoMobileTests/Info.plist;
- IPHONEOS_DEPLOYMENT_TARGET = 12.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 15.5;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
@@ -496,14 +496,14 @@
};
00E356F71AD99517003FC87E /* Release */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = 85DB7315AECC5EFD25F9B82E /* Pods-ZingoMobile-ZingoMobileTests.release.xcconfig */;
+ baseConfigurationReference = A49157817C7C9ECAF27CAF75 /* Pods-ZingoMobile-ZingoMobileTests.release.xcconfig */;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
BUNDLE_LOADER = "$(TEST_HOST)";
COPY_PHASE_STRIP = NO;
DEVELOPMENT_TEAM = 788KRST4S8;
INFOPLIST_FILE = ZingoMobileTests/Info.plist;
- IPHONEOS_DEPLOYMENT_TARGET = 12.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 15.5;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
@@ -527,13 +527,13 @@
};
13B07F941A680F5B00A75B9A /* Debug */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = 139FC776D22970EDA9C040D6 /* Pods-ZingoMobile.debug.xcconfig */;
+ baseConfigurationReference = A751EDF0EE2C9974B63084B6 /* Pods-ZingoMobile.debug.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = YES;
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = ZingoMobile/ZingoMobile.entitlements;
- CURRENT_PROJECT_VERSION = 131;
+ CURRENT_PROJECT_VERSION = 137;
DEVELOPMENT_TEAM = 788KRST4S8;
ENABLE_BITCODE = NO;
EXCLUDED_ARCHS = "";
@@ -550,7 +550,7 @@
"$(PROJECT_DIR)",
"$(inherited)",
);
- MARKETING_VERSION = 1.3.3;
+ MARKETING_VERSION = 1.3.4;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
@@ -567,13 +567,13 @@
};
13B07F951A680F5B00A75B9A /* Release */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = 00C6628EA1AABD9135EC0B2D /* Pods-ZingoMobile.release.xcconfig */;
+ baseConfigurationReference = 20781046593E676734B4C1A1 /* Pods-ZingoMobile.release.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = YES;
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = ZingoMobile/ZingoMobile.entitlements;
- CURRENT_PROJECT_VERSION = 131;
+ CURRENT_PROJECT_VERSION = 137;
DEVELOPMENT_TEAM = 788KRST4S8;
ENABLE_BITCODE = NO;
EXCLUDED_ARCHS = "";
@@ -590,7 +590,7 @@
"$(PROJECT_DIR)",
"$(inherited)",
);
- MARKETING_VERSION = 1.3.3;
+ MARKETING_VERSION = 1.3.4;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
diff --git a/ios/ZingoMobile/AppDelegate.m b/ios/ZingoMobile/AppDelegate.m
index 3b0591408..e6f72f75c 100644
--- a/ios/ZingoMobile/AppDelegate.m
+++ b/ios/ZingoMobile/AppDelegate.m
@@ -34,6 +34,7 @@ @implementation AppDelegate
static NSString* syncTask = @"Zingo_Processing_Task_ID";
static NSString* syncSchedulerTask = @"Zingo_Processing_Scheduler_Task_ID";
static BOOL isConnectedToWifi = false;
+static BOOL isCharging = false;
static BGProcessingTask *bgTask = nil;
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
@@ -137,6 +138,11 @@ -(void)stopSyncingProcess:(NSString *)noValue {
NSString* respStr = [NSString stringWithUTF8String:resp];
rust_free(resp);
NSLog(@"BGTask stopSyncingProcess - status response %@", respStr);
+
+ if ([respStr hasPrefix:@"Error"]) {
+ NSLog(@"BGTask stopSyncingProcess - no lightwalled likely");
+ return;
+ }
NSData *data = [respStr dataUsingEncoding:NSUTF8StringEncoding];
id jsonResp = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil];
@@ -175,8 +181,19 @@ -(void)syncingProcessBackgroundTask:(NSString *)noValue {
BOOL exists = [self wallet__exists];
if (exists) {
- // stop syncing first, just in case.
- [self stopSyncingProcess:nil];
+ // check the Server, because the task can run without the App.
+ char *bal = execute("balance", "");
+ NSString* balStr = [NSString stringWithUTF8String:bal];
+ NSLog(@"BGTask syncingProcessBackgroundTask - testing if server is active %@", balStr);
+ rust_free(bal);
+ if ([balStr hasPrefix:@"Error"]) {
+ // this means this task is running with the App closed
+ [self loadWalletFile:nil];
+ } else {
+ // this means the App is open,
+ // stop syncing first, just in case.
+ [self stopSyncingProcess:nil];
+ }
// we need to sync without interruption, I run this just in case
char *resp = execute("interrupt_sync_after_batch", "false");
@@ -202,12 +219,55 @@ -(void)syncingProcessBackgroundTask:(NSString *)noValue {
}
+ NSLog(@"BGTask syncingProcessBackgroundTask - syncing task STOPPED");
+
+ // not sure if in this point the expirationhandler will be fired...
+ // I'm gessing NO.
+
+ // save the wallet
+ RPCModule *rpcmodule = [RPCModule new];
+ [rpcmodule saveWalletInternal];
+ NSLog(@"BGTask syncingProcessBackgroundTask - Save Wallet");
+
+ // save info in background json
+ NSTimeInterval timeStamp = [[NSDate date] timeIntervalSince1970];
+ // NSTimeInterval is defined as double
+ NSNumber *timeStampObj = [NSNumber numberWithDouble: timeStamp];
+ NSString *timeStampStr = [timeStampObj stringValue];
+ NSString *jsonBackgroud = [NSString stringWithFormat: @"%@%@%@%@%@%@%@", @"{\"batches\": \"", @"0", @"\", \"message\": \"", @"Finished OK.", @"\", \"date\": \"", timeStampStr, @"\"}"];
+ [rpcmodule saveBackgroundFile:jsonBackgroud];
+ NSLog(@"BGTask syncingProcessBackgroundTask - Save background JSON");
+
+ [bgTask setTaskCompletedWithSuccess:YES];
+ bgTask = nil;
}
- NSLog(@"BGTask syncingProcessBackgroundTask - syncing task STOPPED");
- [bgTask setTaskCompletedWithSuccess:YES];
- bgTask = nil;
+}
+-(void)loadWalletFile:(NSString *)noValue {
+
+ @autoreleasepool {
+
+ NSArray *paths = NSSearchPathForDirectoriesInDomains
+ (NSDocumentDirectory, NSUserDomainMask, YES);
+ NSString *documentsDirectory = [paths objectAtIndex:0];
+
+ NSString *fileName = [NSString stringWithFormat:@"%@/settings.json",
+ documentsDirectory];
+ NSString *content = [[NSString alloc] initWithContentsOfFile:fileName
+ usedEncoding:nil
+ error:nil];
+ NSData *contentData = [content dataUsingEncoding:NSUTF8StringEncoding];
+ NSDictionary *jsonObject = [NSJSONSerialization JSONObjectWithData:contentData options:kNilOptions error:nil];
+
+ NSString *server = jsonObject[@"server"][@"uri"];
+ NSString *chainhint = jsonObject[@"server"][@"chain_name"];
+
+ NSLog(@"Opening the wallet file - No App active - server: %@ chain: %@", server, chainhint);
+ RPCModule *rpcmodule = [RPCModule new];
+ [rpcmodule loadExistingWallet:server chainhint:chainhint];
+ }
+
}
-(BOOL)wallet__exists {
@@ -235,11 +295,22 @@ - (void)handleBackgroundTask {
NetworkStatus networkStatus = [reachability currentReachabilityStatus];
if (networkStatus == ReachableViaWiFi) {
+ // the device have Wifi.
isConnectedToWifi = true;
} else {
isConnectedToWifi = false;
}
- NSLog(@"BGTask isConnectedToWifi %@", isConnectedToWifi ? @"true" : @"false");
+
+ UIDeviceBatteryState currentState = [[UIDevice currentDevice] batteryState];
+
+ if (currentState == UIDeviceBatteryStateCharging) {
+ // The battery is either charging, or connected to a charger.
+ isCharging = true;
+ } else {
+ isCharging = false;
+ }
+
+ NSLog(@"BGTask isConnectedToWifi %@ isCharging %@", isConnectedToWifi ? @"true" : @"false", isCharging ? @"true" : @"false");
[self registerTasks];
}
@@ -275,24 +346,37 @@ - (void)registerTasks {
- (void)startBackgroundTask:(NSString *)noValue {
NSLog(@"BGTask startBackgroundTask called");
+ RPCModule *rpcmodule = [RPCModule new];
// Schedule tasks for the next time
[self scheduleBackgroundTask];
[self scheduleSchedulerBackgroundTask];
if (!isConnectedToWifi) {
+ // save info in background json
+ NSTimeInterval timeStamp = [[NSDate date] timeIntervalSince1970];
+ // NSTimeInterval is defined as double
+ NSNumber *timeStampObj = [NSNumber numberWithDouble: timeStamp];
+ NSString *timeStampStr = [timeStampObj stringValue];
+ NSString *jsonBackgroud = [NSString stringWithFormat: @"%@%@%@%@%@%@%@", @"{\"batches\": \"", @"0", @"\", \"message\": \"", @"No wifi KO.", @"\", \"date\": \"", timeStampStr, @"\"}"];
+ [rpcmodule saveBackgroundFile:jsonBackgroud];
+
NSLog(@"BGTask startBackgroundTask: not connected to the wifi");
[bgTask setTaskCompletedWithSuccess:NO];
bgTask = nil;
return;
}
- // I can check the time remaining here & make a choice
- // when this `time remaing` is cracy big, something wrong is happening.
- // in my testing this time is always something like 300 seconds. (the famous 5 min).
- NSLog(@"BEFORE RUN TASKS - Time Remaining: %f", [[UIApplication sharedApplication] backgroundTimeRemaining]);
- if ([[UIApplication sharedApplication] backgroundTimeRemaining] > 1000000000) {
- NSLog(@"BGTask startBackgroundTask: time remainig TOO cracy high %f", [[UIApplication sharedApplication] backgroundTimeRemaining]);
+ if (!isCharging) {
+ // save info in background json
+ NSTimeInterval timeStamp = [[NSDate date] timeIntervalSince1970];
+ // NSTimeInterval is defined as double
+ NSNumber *timeStampObj = [NSNumber numberWithDouble: timeStamp];
+ NSString *timeStampStr = [timeStampObj stringValue];
+ NSString *jsonBackgroud = [NSString stringWithFormat: @"%@%@%@%@%@%@%@", @"{\"batches\": \"", @"0", @"\", \"message\": \"", @"No plug-in KO.", @"\", \"date\": \"", timeStampStr, @"\"}"];
+ [rpcmodule saveBackgroundFile:jsonBackgroud];
+
+ NSLog(@"BGTask startBackgroundTask: not plug in to power");
[bgTask setTaskCompletedWithSuccess:NO];
bgTask = nil;
return;
@@ -308,7 +392,7 @@ - (void)startBackgroundTask:(NSString *)noValue {
bgTask.expirationHandler = ^{
NSLog(@"BGTask startBackgroundTask - expirationHandler called");
// interrupting the sync process, I can't wait to see if the process is over
- // because I have no time enough to run all of this task here.
+ // because I have no time enough to run all I need in this task.
char *resp2 = execute("interrupt_sync_after_batch", "true");
NSString* respStr2 = [NSString stringWithUTF8String:resp2];
NSLog(@"BGTask startBackgroundTask - expirationHandler interrupt syncing %@", respStr2);
@@ -323,7 +407,7 @@ - (void)startBackgroundTask:(NSString *)noValue {
// NSTimeInterval is defined as double
NSNumber *timeStampObj = [NSNumber numberWithDouble: timeStamp];
NSString *timeStampStr = [timeStampObj stringValue];
- NSString *jsonBackgroud = [NSString stringWithFormat: @"%@%@%@%@%@", @"{\"batches\": \"", @"0", @"\", \"date\": \"", timeStampStr, @"\"}"];
+ NSString *jsonBackgroud = [NSString stringWithFormat: @"%@%@%@%@%@%@%@", @"{\"batches\": \"", @"0", @"\", \"message\": \"", @"Expiration fired. Finished OK.", @"\", \"date\": \"", timeStampStr, @"\"}"];
[rpcmodule saveBackgroundFile:jsonBackgroud];
NSLog(@"BGTask startBackgroundTask - expirationHandler Save background JSON");
@@ -353,6 +437,8 @@ - (void)scheduleBackgroundTask {
//NSDate *now = [NSDate date];
//NSDate *twoMinutesLater = [now dateByAddingTimeInterval:120]; // 2 minutes = 120 seconds
+
+ NSLog(@"BGTask scheduleBackgroundTask date calculated: %@", earlyMorning);
request.earliestBeginDate = earlyMorning;
//request.earliestBeginDate = twoMinutesLater;