getUserDetails method
Retrieves detailed information about the currently logged-in user.
Returns:
RegisteredDriver?: User details object, ornullif not available
Usage:
try {
final userInfo = await communicator.getUserDetails();
if (userInfo != null) {
print('User: ${userInfo.name}');
print('Driver ID: ${userInfo.driverId}');
}
} catch (e) {
print('Failed to get user details: $e');
}
Throws:
Future.error("Unable to get user details"): When retrieval fails
Prerequisites:
- User must be logged in
- Valid session must exist
Implementation
Future<RegisteredDriver?> getUserDetails() async {
try {
return await kruzr_comm.getUserDetails();
} on PlatformException catch (e) {
if (kDebugMode) {
print(e);
print("PlatformException in getUserDetails");
}
return Future.error({"code": e.code, "message": e.message, "details": e.details});
} on Exception catch (e) {
if (kDebugMode) {
print(e);
print("Exception in getUserDetails");
}
return Future.error(PlatformException(code: "PLUGIN_ERROR", message: e.toString()));
}
}