@override Future<Map<String, dynamic>?> login() async { final result = await methodChannel.invokeMethod('login'); return (result as Map<Object?, Object?>).cast<String, dynamic>(); }