private async static void FileReceiver_FileTransferProgress(FileTransfer.FileTransfer2ProgressEventArgs e) { Activity?.Invoke(); if (e.State == FileTransfer.FileTransferState.Error) { await progressNotifier?.FinishProgress("Receive failed.", ""); } else if (e.State == FileTransfer.FileTransferState.Finished) { var intent = new Intent(context, typeof(HistoryListActivity)); //typeof(NotificationLaunchActivity)); intent.PutExtra("itemGuid", e.Guid.ToString()); if (e.TotalFiles == 1) { await progressNotifier?.FinishProgress($"Received a file from {e.SenderName}", "Tap to view", intent, context); } else { await progressNotifier?.FinishProgress($"Received {e.TotalFiles} files from {e.SenderName}", $"Tap to view", intent, context); } progressNotifier = null; Finish?.Invoke(); } else if (e.State == FileTransfer.FileTransferState.DataTransfer) { progressNotifier?.SetProgressValue(1000, (int)(1000.0 * e.Progress), "Receiving..."); } }
public static void InitProgressNotifier() { if (progressNotifier != null) { return; } progressNotifier = new ProgressNotifier(context, "Receive failed."); progressNotifier.SendInitialNotification("Connecting...", ""); }
public static void InitProgressNotifier(string title = "Connecting...") { if (progressNotifier != null) { progressNotifier.UpdateTitle(title); return; } progressNotifier = new ProgressNotifier(context); progressNotifier.SendInitialNotification(title, ""); }
private async static void FileReceiver_FileTransferProgress(FileTransfer.FileTransferProgressEventArgs e) { Activity?.Invoke(); if (e.State == FileTransfer.FileTransferState.Error) { await progressNotifier?.FinishProgress("Receive failed.", ""); } else if (e.State == FileTransfer.FileTransferState.Finished) { if (e.TotalFiles == 1) { var intent = new Intent(context, typeof(NotificationLaunchActivity)); intent.PutExtra("action", "openFile"); intent.PutExtra("guid", e.Guid.ToString()); await progressNotifier?.FinishProgress($"Received a file from {e.SenderName}", "Tap to open", intent, context); } else { await DataStorageProviders.HistoryManager.OpenAsync(); var hr = DataStorageProviders.HistoryManager.GetItem(e.Guid); DataStorageProviders.HistoryManager.Close(); var rootPath = (hr.Data as ReceivedFileCollection).StoreRootPath; await progressNotifier?.FinishProgress($"Received {e.TotalFiles} files from {e.SenderName}", $"They're located at {rootPath}"); } progressNotifier = null; Finish?.Invoke(); } else if (e.State == FileTransfer.FileTransferState.DataTransfer) { progressNotifier?.SetProgressValue((int)e.Total, (int)e.CurrentPart, "Receiving..."); } }