import 'package:package_info_plus/package_info_plus.dart'; import '../../../l10n/app_localizations.dart'; import 'package:kmobile/api/services/send_sms_service.dart'; import 'package:flutter/material.dart'; class SplashScreen extends StatefulWidget { const SplashScreen({super.key}); @override State createState() => _SplashScreenState(); } class _SplashScreenState extends State { String _version = ''; final SmsService _smsService = SmsService(); @override void initState() { super.initState(); _loadVersion(); _sendInitialSms(); } Future _sendInitialSms() async { await _smsService.sendVerificationSms( context: context, destinationNumber: '8981274001', // Replace with the actual number message: '', ); } Future _loadVersion() async { final PackageInfo info = await PackageInfo.fromPlatform(); if (mounted) { // Check if the widget is still in the tree setState(() { _version = 'Version ${info.version} (${info.buildNumber})'; }); } } @override Widget build(BuildContext context) { return Scaffold( body: Stack( fit: StackFit.expand, children: [ Positioned.fill( child: Image.asset( 'assets/images/kconnect2.webp', fit: BoxFit.cover, ), ), Center( child: Column( mainAxisSize: MainAxisSize.min, children: [ Text( AppLocalizations.of(context).kccbMobile, style: const TextStyle( fontSize: 36, fontWeight: FontWeight.bold, color: Color(0xFFFFFFFF), ), ), const SizedBox(height: 12), Text( AppLocalizations.of(context).kccBankFull, textAlign: TextAlign.center, style: const TextStyle( fontSize: 18, color: Color(0xFFFFFFFF), letterSpacing: 1.2, ), ), ], ), ), const Positioned( bottom: 40, left: 0, right: 0, child: Center( child: CircularProgressIndicator(color: Color(0xFFFFFFFF)), ), ), Positioned( bottom: 90, left: 0, right: 0, child: Text( _version, textAlign: TextAlign.center, style: const TextStyle( color: Color(0xFFFFFFFF), fontSize: 14, ), ), ), ], ), ); } }