Android all done.

This commit is contained in:
Ivan Murashov
2018-03-12 21:41:41 +03:00
parent 3bc43724c6
commit 11640c0a16
15 changed files with 111 additions and 253 deletions

View File

@@ -8,6 +8,7 @@ import 'package:checker/consts.dart';
import 'package:checker/db.dart';
import 'package:checker/network.dart';
import 'package:checker/resources.dart';
import 'package:checker/screens/faq.dart';
import 'package:checker/screens/finish_registration.dart';
import 'package:checker/screens/purchase.dart';
import 'package:checker/screens/registration.dart';
@@ -17,6 +18,7 @@ import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:http/http.dart';
// FIXME: Сделать запуск всех экранов из одной точки через метод showNextScreen()
class SplashScreen extends BaseScreen {
SplashScreen(SqliteHelper helper, String app) : super(helper, app);
@@ -40,7 +42,7 @@ class _SplashScreenState extends BaseState<SplashScreen> {
@override
Widget build(BuildContext ctx) {
return a ? new Container(
return !a ? new Container(
decoration: new BoxDecoration(
image: new DecorationImage(
image: new ExactAssetImage(Resources.getSplash(null)),
@@ -76,10 +78,15 @@ class _SplashScreenState extends BaseState<SplashScreen> {
var route = new MaterialPageRoute<String>(
builder: (BuildContext context) => screen, fullscreenDialog: true);
Navigator.of(context).push(route).then((token) {
if (token != null) {
if (token == '') {
showNextScreen(new RegistrationScreen(helper, app));
} else if (token != null) {
_initAndStartScanner(context, app, token, helper);
} else {
showNextScreen(new RegistrationScreen(helper, app));
print('Произошла непредусмотренная ошибка в логике приложения');
helper.getToken().then((token) {
_initAndStartScanner(context, app, token, helper);
});
}
});
});
@@ -209,13 +216,23 @@ class _SplashScreenState extends BaseState<SplashScreen> {
}
} else if (call.method == 'faq') {
faq(helper, app, context, true);
} else if (call.method == 'settings') {
new Future.delayed(const Duration(milliseconds: 200), () {
var route = new MaterialPageRoute<Null>(
builder: (BuildContext context) => new FAQScreen(helper, app), fullscreenDialog: true);
Navigator.of(context).push(route).then((_) {
_initAndStartScanner(context, app, token, helper);
});
});
} else if (call.method == 'settings') {
new Future.delayed(const Duration(milliseconds: 200), () {
var route = new MaterialPageRoute<String>(
builder: (BuildContext context) => new SettingsScreen(helper, app, true), fullscreenDialog: true);
Navigator.of(context).push(route).then((_) {
_initAndStartScanner(context, app, token, helper);
Navigator.of(context).push(route).then((result) {
if (result != null) {
showNextScreen(new RegistrationScreen(helper, app));
} else {
_initAndStartScanner(context, app, token, helper);
}
});
});
} else {