generateShareableURL method
Generates a shareable URL for a specific trip.
Creates a public URL that can be shared with others to view trip details without requiring the Kruzr app or authentication.
Parameters:
appTripId: Unique identifier for the trip to share
Returns:
ShareableTripUrlResponseModel?: URL response containing shareable link, ornullif failed
Usage:
try {
final shareableUrl = await communicator.generateShareableURL('trip-123');
if (shareableUrl != null) {
print('Share this trip: ${shareableUrl.url}');
// Copy to clipboard or share via social media
}
} catch (e) {
print('Failed to generate shareable URL: $e');
}
Throws:
Future.error("Unable to generate trip link"): When URL generation fails
Use Cases:
- Social media sharing
- Family and friends trip sharing
- Public trip showcasing
Implementation
Future<ShareableTripUrlResponseModel?> generateShareableURL(
String appTripId,
) async {
try {
ShareableTripUrlResponseModel? shareableTripUrlResponseModel =
await kruzr_comm.generateShareableURL(appTripId);
return shareableTripUrlResponseModel;
} on Exception catch (e, stackTrace) {
if (kDebugMode) {
print("Error in generateShareableURL");
print(stackTrace);
print(e);
}
return Future.error("Unable to generate trip link");
}
}