wip: add try-catch
This commit is contained in:
parent
40e2e75a09
commit
4bdce5e2ba
|
@ -1,4 +1,5 @@
|
|||
import 'dart:async';
|
||||
import 'dart:developer';
|
||||
import 'package:app_links/app_links.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:hub/flutter_flow/flutter_flow_theme.dart';
|
||||
|
@ -33,39 +34,49 @@ class DeepLinkService {
|
|||
}
|
||||
|
||||
Future<void> _handleDeepLink(Uri uri) async {
|
||||
print('Handling deep link: $uri');
|
||||
if (StorageHelper().isRecovered) return;
|
||||
try {
|
||||
print('Handling deep link: $uri');
|
||||
if (StorageHelper().isRecovered) return;
|
||||
|
||||
StorageHelper().isRecovered = true;
|
||||
final email = uri.queryParameters['email'] ?? '';
|
||||
final token = uri.queryParameters['token'] ?? '';
|
||||
print('email: $email, token: $token');
|
||||
StorageHelper().isRecovered = true;
|
||||
final email = uri.queryParameters['email'] ?? '';
|
||||
final token = uri.queryParameters['token'] ?? '';
|
||||
print('email: $email, token: $token');
|
||||
|
||||
if (email.isNotEmpty && token.isNotEmpty) {
|
||||
await _showForgotPasswordScreen(email, token);
|
||||
if (email.isNotEmpty && token.isNotEmpty) {
|
||||
await _showForgotPasswordScreen(email, token);
|
||||
}
|
||||
} catch (e, s) {
|
||||
print('Error handling deep link: $e');
|
||||
log('Error handling', error: e, stackTrace: s);
|
||||
}
|
||||
}
|
||||
|
||||
Future<void> _showForgotPasswordScreen(String email, String token) async {
|
||||
WidgetsBinding.instance.addPostFrameCallback((_) async {
|
||||
final theme = FlutterFlowTheme.of(StorageHelper().context!);
|
||||
final screen = ForgotPasswordScreen(email: email, token: token);
|
||||
await showModalBottomSheet(
|
||||
context: StorageHelper().context!,
|
||||
builder: (context) => Padding(
|
||||
padding: MediaQuery.viewInsetsOf(context),
|
||||
child: screen,
|
||||
),
|
||||
isScrollControlled: true,
|
||||
backgroundColor: theme.primaryBackground,
|
||||
showDragHandle: true,
|
||||
useSafeArea: true,
|
||||
enableDrag: true,
|
||||
).whenComplete(() {
|
||||
StorageHelper().isRecovered = false;
|
||||
print('showModalBottomSheet completed');
|
||||
try {
|
||||
WidgetsBinding.instance.addPostFrameCallback((_) async {
|
||||
final theme = FlutterFlowTheme.of(StorageHelper().context!);
|
||||
final screen = ForgotPasswordScreen(email: email, token: token);
|
||||
await showModalBottomSheet(
|
||||
context: StorageHelper().context!,
|
||||
builder: (context) => Padding(
|
||||
padding: MediaQuery.viewInsetsOf(context),
|
||||
child: screen,
|
||||
),
|
||||
isScrollControlled: true,
|
||||
backgroundColor: theme.primaryBackground,
|
||||
showDragHandle: true,
|
||||
useSafeArea: true,
|
||||
enableDrag: true,
|
||||
).whenComplete(() {
|
||||
StorageHelper().isRecovered = false;
|
||||
print('showModalBottomSheet completed');
|
||||
});
|
||||
});
|
||||
});
|
||||
} catch (e, s) {
|
||||
print('Error showing forgot password screen: $e');
|
||||
log('Error handling', error: e, stackTrace: s);
|
||||
}
|
||||
}
|
||||
|
||||
void dispose() {
|
||||
|
|
Loading…
Reference in New Issue