Download media messages
Overview
The SDK provides download and cancel functionality for media files. For sending media messages, see the "Send a media message" section in Send a message.
Download a media message
Call mediaMessage.downloadMedia() on the media message instance.
Method
Dart
Future<int> downloadMedia({DownloadMediaMessageHandler? handler})
Code example
Dart
await (message as MediaMessage).downloadMedia(
handler: DownloadMediaMessageHandler(
onProgress: (message, progress) {
print('Download progress: $progress%');
},
onCanceled: (message) {
print('Download canceled');
},
onComplete: (code, message) {
if (code == 0) {
print('Downloaded to: ${message?.localPath}');
}
},
),
);
Cancel a media download
Call mediaMessage.cancelDownloadingMedia() on the media message instance.
Method
Dart
Future<int> cancelDownloadingMedia(OperationHandler<MediaMessage> handler)
Although this method uses OperationHandler<MediaMessage>, the current Flutter wrapper returns NCError(code: 0) on success instead of null. Check success with error?.isSuccess == true.
Code example
Dart
await (message as MediaMessage).cancelDownloadingMedia((canceledMessage, error) {
if (error?.isSuccess == true) {
print('Download canceled');
}
});