improve error handling (#1451)
Omar Hatem committed
May 14, 2024 at 04:27 UTC
c12b4f5ff611810edf8e3668c0c26b25049ecada
4 files changed
+37
-32
lib/main.dart
+25
-20
@@ -47,6 +47,7 @@ final rootKey = GlobalKey<RootState>();
47
final RouteObserver<PageRoute<dynamic>> routeObserver = RouteObserver<PageRoute<dynamic>>();
48
49
Future<void> main() async {
50
+ bool isAppRunning = false;
51
await runZonedGuarded(() async {
52
WidgetsFlutterBinding.ensureInitialized();
53
@@ -67,31 +68,35 @@ Future<void> main() async {
68
await initializeAppConfigs();
69
70
runApp(App());
71
+
72
+ isAppRunning = true;
73
}, (error, stackTrace) async {
71
- runApp(
72
- MaterialApp(
73
- debugShowCheckedModeBanner: false,
74
- home: Scaffold(
75
- body: SingleChildScrollView(
76
- child: Container(
77
- margin: EdgeInsets.only(top: 50, left: 20, right: 20, bottom: 20),
78
- child: Column(
79
- children: [
80
- Text(
81
- 'Error:\n${error.toString()}',
82
- style: TextStyle(fontSize: 22),
83
- ),
84
- Text(
85
- 'Stack trace:\n${stackTrace.toString()}',
86
- style: TextStyle(fontSize: 16),
87
- ),
88
- ],
74
+ if (!isAppRunning) {
75
+ runApp(
76
+ MaterialApp(
77
+ debugShowCheckedModeBanner: false,
78
+ home: Scaffold(
79
+ body: SingleChildScrollView(
80
+ child: Container(
81
+ margin: EdgeInsets.only(top: 50, left: 20, right: 20, bottom: 20),
82
+ child: Column(
83
+ children: [
84
+ Text(
85
+ 'Error:\n${error.toString()}',
86
+ style: TextStyle(fontSize: 22),
87
+ ),
88
+ Text(
89
+ 'Stack trace:\n${stackTrace.toString()}',
90
+ style: TextStyle(fontSize: 16),
91
+ ),
92
+ ],
93
+ ),
94
),
95
),
96
),
97
),
93
- ),
94
- );
98
+ );
99
+ }
100
101
ExceptionHandler.onError(FlutterErrorDetails(exception: error, stack: stackTrace));
102
});
scripts/android/app_env.sh
+4
-4
@@ -15,15 +15,15 @@ TYPES=($MONERO_COM $CAKEWALLET $HAVEN)
15
APP_ANDROID_TYPE=$1
16
17
MONERO_COM_NAME="Monero.com"
18
-MONERO_COM_VERSION="1.13.1"
19
-MONERO_COM_BUILD_NUMBER=87
18
+MONERO_COM_VERSION="1.13.2"
19
+MONERO_COM_BUILD_NUMBER=88
20
MONERO_COM_BUNDLE_ID="com.monero.app"
21
MONERO_COM_PACKAGE="com.monero.app"
22
MONERO_COM_SCHEME="monero.com"
23
24
CAKEWALLET_NAME="Cake Wallet"
25
-CAKEWALLET_VERSION="4.16.1"
26
-CAKEWALLET_BUILD_NUMBER=211
25
+CAKEWALLET_VERSION="4.16.2"
26
+CAKEWALLET_BUILD_NUMBER=212
27
CAKEWALLET_BUNDLE_ID="com.cakewallet.cake_wallet"
28
CAKEWALLET_PACKAGE="com.cakewallet.cake_wallet"
29
CAKEWALLET_SCHEME="cakewallet"
scripts/ios/app_env.sh
+4
-4
@@ -13,13 +13,13 @@ TYPES=($MONERO_COM $CAKEWALLET $HAVEN)
13
APP_IOS_TYPE=$1
14
15
MONERO_COM_NAME="Monero.com"
16
-MONERO_COM_VERSION="1.13.1"
17
-MONERO_COM_BUILD_NUMBER=85
16
+MONERO_COM_VERSION="1.13.2"
17
+MONERO_COM_BUILD_NUMBER=86
18
MONERO_COM_BUNDLE_ID="com.cakewallet.monero"
19
20
CAKEWALLET_NAME="Cake Wallet"
21
-CAKEWALLET_VERSION="4.16.1"
22
-CAKEWALLET_BUILD_NUMBER=239
21
+CAKEWALLET_VERSION="4.16.2"
22
+CAKEWALLET_BUILD_NUMBER=240
23
CAKEWALLET_BUNDLE_ID="com.fotolockr.cakewallet"
24
25
HAVEN_NAME="Haven"
scripts/macos/app_env.sh
+4
-4
@@ -16,13 +16,13 @@ if [ -n "$1" ]; then
16
fi
17
18
MONERO_COM_NAME="Monero.com"
19
-MONERO_COM_VERSION="1.3.1"
20
-MONERO_COM_BUILD_NUMBER=18
19
+MONERO_COM_VERSION="1.3.2"
20
+MONERO_COM_BUILD_NUMBER=19
21
MONERO_COM_BUNDLE_ID="com.cakewallet.monero"
22
23
CAKEWALLET_NAME="Cake Wallet"
24
-CAKEWALLET_VERSION="1.9.1"
25
-CAKEWALLET_BUILD_NUMBER=72
24
+CAKEWALLET_VERSION="1.9.2"
25
+CAKEWALLET_BUILD_NUMBER=73
26
CAKEWALLET_BUNDLE_ID="com.fotolockr.cakewallet"
27
28
if ! [[ " ${TYPES[*]} " =~ " ${APP_MACOS_TYPE} " ]]; then