diff --git a/ios/Flutter/app.flx b/ios/Flutter/app.flx
index 88f4fa0..3f94061 100644
Binary files a/ios/Flutter/app.flx and b/ios/Flutter/app.flx differ
diff --git a/ios/Runner.xcodeproj/xcuserdata/kifio.xcuserdatad/xcschemes/xcschememanagement.plist b/ios/Runner.xcodeproj/xcuserdata/kifio.xcuserdatad/xcschemes/xcschememanagement.plist
index 779c523..9649f80 100644
--- a/ios/Runner.xcodeproj/xcuserdata/kifio.xcuserdatad/xcschemes/xcschememanagement.plist
+++ b/ios/Runner.xcodeproj/xcuserdata/kifio.xcuserdatad/xcschemes/xcschememanagement.plist
@@ -27,6 +27,11 @@
primary
+ FB8CCC12204C8249002BBFDA
+
+ primary
+
+
diff --git a/ios/Runner.xcworkspace/xcuserdata/kifio.xcuserdatad/UserInterfaceState.xcuserstate b/ios/Runner.xcworkspace/xcuserdata/kifio.xcuserdatad/UserInterfaceState.xcuserstate
index 47a0be0..cf47919 100644
Binary files a/ios/Runner.xcworkspace/xcuserdata/kifio.xcuserdatad/UserInterfaceState.xcuserstate and b/ios/Runner.xcworkspace/xcuserdata/kifio.xcuserdatad/UserInterfaceState.xcuserstate differ
diff --git a/ios/Runner/AppDelegate.m b/ios/Runner/AppDelegate.m
index 406b536..69618bb 100644
--- a/ios/Runner/AppDelegate.m
+++ b/ios/Runner/AppDelegate.m
@@ -78,19 +78,14 @@
NSDictionary *buildSettings = settings[bundleIdentifier];
- NSLog(@"%@", bundleIdentifier);
-
if (!buildSettings) {
NSLog(@"Settings for this bunndle id not defined (%@)", bundleIdentifier);
abort();
}
-
[platformChannel setMethodCallHandler:^(FlutterMethodCall* call, FlutterResult result) {
NSLog(@"%@", call.method);
- NSLog(@"%@", buildSettings[@"supportPhone"]);
-
if ([@"getLocale" isEqualToString:call.method]) {
result(buildSettings[@"locale"]);
} else if ([@"getFlavor" isEqualToString:call.method]) {
diff --git a/ios/Runner/ScannerViewController.swift b/ios/Runner/ScannerViewController.swift
index 49f95d0..f1aba55 100644
--- a/ios/Runner/ScannerViewController.swift
+++ b/ios/Runner/ScannerViewController.swift
@@ -61,15 +61,22 @@ import Flutter
func getInputHint() -> String {
switch self.buttonState {
- case .card: return strings["enter_manual"]!
- case .phone: return strings["enter_phone"]!
+ case .card: return strings["enter_manual"]!
+ case .phone: return strings["enter_phone"]!
}
}
func getErrorText() -> String {
switch self.buttonState {
- case .card: return strings["user_card_not_found"]!
- case .phone: return strings["user_phone_not_found"]!
+ case .card: return strings["user_card_not_found"]!
+ case .phone: return strings["user_phone_not_found"]!
+ }
+ }
+
+ func setButtonState() {
+ switch self.buttonState {
+ case .card: self.buttonState = .phone
+ case .phone: self.buttonState = .card
}
}
@@ -97,7 +104,7 @@ import Flutter
settingButton.setImage(self.buttonState.icon, for: .normal)
textField.placeholder = self.getInputHint()
-
+ textField.text = "79087654321"
}
override func viewWillAppear(_ animated: Bool) {
@@ -121,36 +128,29 @@ import Flutter
}
func buttonTouch(){
-
- switch self.buttonState {
- case .card: self.buttonState = .phone
- case .phone: self.buttonState = .card
- }
+ setButtonState()
settingButton.setImage(self.buttonState.icon, for: .normal)
textField.placeholder = self.getInputHint()
}
func textFieldShouldReturn(_ textField: UITextField) -> Bool {
-
+ print("User from manual input: \(textField.text)")
sendResult(textField.text!)
-
return true
}
func sendResult(_ str: String) {
- print("result: \(str)")
platformChannel?.invokeMethod("findUser", arguments: [str, buttonState.searchType], result: { (result: Any?) in
if result is FlutterError {
+ print("Result is nil (ios code)");
self.showErrorAlert(str)
} else {
-
+ print("Result is not nil (ios code)");
self.dismiss(animated: true) {
self.platformChannel?.invokeMethod("purchase", arguments: [result, str])
}
}
- print("result: \(result.debugDescription )")
})
-
}
func showErrorAlert(_ str: String) {
@@ -297,6 +297,7 @@ import Flutter
location = "\(location) (\(transformedPoint.x), \(transformedPoint.y))"
points.append(windowPointValue)
}
+ print("User from scanner: \(result.text)")
sendResult(result.text)
print(result.text)
self.capture.stop()
diff --git a/lib/base/base_state.dart b/lib/base/base_state.dart
index d25534f..78e7829 100644
--- a/lib/base/base_state.dart
+++ b/lib/base/base_state.dart
@@ -98,7 +98,7 @@ abstract class BaseState extends State {
void onOptionsItemClick(int index) {
switch (index) {
case 0: {
- pushRoute(context, new SettingsScreen(helper, app, false));
+ pushRoute(context, new SettingsScreen(helper, app, false));
break;
}
case 1: {
diff --git a/lib/screens/finish_registration.dart b/lib/screens/finish_registration.dart
index f44736c..a0e8832 100644
--- a/lib/screens/finish_registration.dart
+++ b/lib/screens/finish_registration.dart
@@ -34,7 +34,13 @@ class RegistrationScreenState extends BaseState {
});
});
}
- return getMainWidget();
+ return new WillPopScope(onWillPop: () => onWillPop(), child: getMainWidget());
+ }
+
+ onWillPop() {
+ if (Theme.of(context).platform != TargetPlatform.iOS) {
+ platform.invokeMethod('finish');
+ }
}
@override String getTitle() {
@@ -62,7 +68,9 @@ class RegistrationScreenState extends BaseState {
handleTap() {
print('tokenActive: $_tokenActive');
if (_tokenActive) {
- Navigator.of(context).pop(true);
+ helper.getToken().then((token) {
+ Navigator.of(context).pop(token);
+ });
} else {
platform.invokeMethod('isOnline').then((isOnline) {
if (isOnline ) {
diff --git a/lib/screens/purchase.dart b/lib/screens/purchase.dart
index f109b99..93abe56 100644
--- a/lib/screens/purchase.dart
+++ b/lib/screens/purchase.dart
@@ -46,11 +46,7 @@ class PurchaseScreenState extends BaseState {
@override
void initState() {
-
- setState(() {
- requestAsyncData(user);
- });
-
+ requestAsyncData(user);
super.initState();
}
@@ -66,7 +62,6 @@ class PurchaseScreenState extends BaseState {
String loyalty = '';
String bonus = '';
List