private void TransferFile(object parameter) { Task.Run(() => { this.IsBusy = true; try { var fileName = this.GetFileName(); this.SaveDataToCsv(fileName); var files = new List <string>(); files.Add(fileName); if (!String.IsNullOrEmpty(this.LastImageFileName)) { files.Add(this.LastImageFileName); } SendFileByEmailMessage.Send(files.ToArray()); this.State = StartPageStates.Rescan; } catch (Exception exception) { ShowToastMessage.Send(exception.Message); } finally { this.IsBusy = false; } }); }
private void SendFileByEmail(SendFileByEmailMessage message) { var uries = new List <IParcelable>(); foreach (var fileName in message.FileNames) { File file = new File(fileName); var path = Uri.FromFile(file); uries.Add(path); } Intent emailIntent = new Intent(Intent.ActionSendMultiple); emailIntent.SetType("vnd.android.cursor.dir/email"); emailIntent.PutParcelableArrayListExtra(Intent.ExtraStream, uries); emailIntent.PutExtra(Intent.ExtraSubject, "OAK Scan Result"); this.StartActivity(Intent.CreateChooser(emailIntent, "Send email...")); }
private void UnsubscribeMessages() { ShowToastMessage.Unsubscribe(this); CloseAppMessage.Unsubscribe(this); SendFileByEmailMessage.Unsubscribe(this); }
private void SubscribeMessages() { ShowToastMessage.Subscribe(this, this.ShowToast); CloseAppMessage.Subscribe(this, this.CloseApp); SendFileByEmailMessage.Subscribe(this, this.SendFileByEmail); }