saveFromApiResponse static method
Future<void>
saveFromApiResponse(
{ - required dynamic responseData,
- required String fileName,
})
Implementation
static Future<void> saveFromApiResponse({
required dynamic responseData,
required String fileName,
}) async {
try {
Uint8List bytes;
if (responseData is Uint8List) {
// Already raw bytes (Dio responseType: ResponseType.bytes)
bytes = responseData;
} else if (responseData is List<int>) {
bytes = Uint8List.fromList(responseData);
} else if (responseData is String) {
// Fallback: treat as base64 if it's a string
bytes = base64Decode(responseData);
} else {
throw Exception('Unsupported response data type: ${responseData.runtimeType}');
}
await FileUtils.saveBytes(bytes: bytes, fileName: fileName);
} catch (e) {
rethrow;
}
}