feat(app): add vworld geocoding and native ads placeholders
This commit is contained in:
@@ -1,9 +1,11 @@
|
||||
import 'dart:math' as math;
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:permission_handler/permission_handler.dart';
|
||||
import '../../../core/constants/app_colors.dart';
|
||||
import '../../../core/constants/app_typography.dart';
|
||||
import '../../../core/constants/app_constants.dart';
|
||||
import '../../../core/services/permission_service.dart';
|
||||
|
||||
class SplashScreen extends StatefulWidget {
|
||||
const SplashScreen({super.key});
|
||||
@@ -178,13 +180,26 @@ class _SplashScreenState extends State<SplashScreen>
|
||||
}
|
||||
|
||||
void _navigateToHome() {
|
||||
Future.delayed(AppConstants.splashAnimationDuration, () {
|
||||
Future.wait([
|
||||
_ensurePermissions(),
|
||||
Future.delayed(AppConstants.splashAnimationDuration),
|
||||
]).then((_) {
|
||||
if (mounted) {
|
||||
context.go('/home');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
Future<void> _ensurePermissions() async {
|
||||
try {
|
||||
await Permission.notification.request();
|
||||
await Permission.location.request();
|
||||
await PermissionService.checkAndRequestBluetoothPermission();
|
||||
} catch (_) {
|
||||
// 권한 요청 중 예외가 발생해도 앱 흐름을 막지 않는다.
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
for (final controller in _foodControllers) {
|
||||
|
||||
Reference in New Issue
Block a user