Datei in Vorhandene Emailprogramm verschieben

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Datei in Vorhandene Emailprogramm verschieben

    Guten Morgen,
    meine heutige Frage behandelt das Thema eMail.
    Und zwar möchte ich in meiner App eine Datei (Bild/PDF) anklicken und per mail verschicken. Jedoch möchte ich kein eigenes Mailprogramm schreiben, sondern das vorhandene von Apple öffnen,
    da dort eh schon soweit alles eingerichtet ist.
    Gibt es eine Möglichkeit dieses Programm zu öffnen und die Datei gleich in den Anhang zu packen, so das man nur noch Empfänger und einen kleinen Text schreiben muss?
    Wenn ja wie?
    Bis jetzt finde ich immer nur Anleitungen wie man eine Mailapp schreibt.

    Danke schonmal im voraus

    Gruß

    Pete
    Intelligente Sätze zu verfassen ist gar nicht so einfach. Schon ein einziger Buchstabendreher kann den ganzen Text urinieren... :whistling:
  • Noch eine Frage hinterher.
    Habe es jetzt soweit fertig.
    Der Dateianhang ist auch dabei.
    Wenn ich jedoch versende, geht das eMailfenster nichtmehr zu.
    Das ist doof. Debuggen geht doch leider auch nicht mehr, da es "außerhalb" der app ist.
    Im Mailprogramm selbst, steht die mail im Ausgang drinne, das ist zumindest ein gutes Zeichen :).

    Wenn jetzt da noch jemand rat weiß, ich freue mich drauf :)

    LG

    Pete

    PS: Code

    Quellcode

    1. MFMailComposeViewController *mail = [[MFMailComposeViewController alloc] init];
    2. mail.mailComposeDelegate = self;
    3. UIImage *myImage = [UIImage imageNamed:@"750_002.png"]; //Für Testzwecke fest vergeben
    4. NSData *imageData = UIImagePNGRepresentation(myImage);
    5. [mail addAttachmentData:imageData mimeType:@"image/png" fileName:@"Bild"];
    6. [self presentViewController:mail animated:YES completion:nil];
    Intelligente Sätze zu verfassen ist gar nicht so einfach. Schon ein einziger Buchstabendreher kann den ganzen Text urinieren... :whistling:
  • Damit die View wieder verschwindet musst du folgende Methode nutzen:

    Quellcode

    1. -(void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult: (MFMailComposeResult)result error:(NSError*)error
    2. {
    3. [self dismissViewControllerAnimated:YES completion:nil];
    4. }


    Und MFMailComposeViewControllerDelegate hinzufügen.

    Gruß
  • Also das funktioniert garnicht.
    Da schließt sich nur mein Aktuelles Bild und mein Mailprogramm geht garnicht auf.

    Nochmal kurz erklärt.
    Ich klicke auf ein Bild und das Mailprogramm öffnet sich.
    Klicke ich dort auf senden (gerade getestet), wird die Mail auch versendet, das Mailprogramm geht jedoch nicht zu und ich komme nicht mehr zurück in meine App.
    Intelligente Sätze zu verfassen ist gar nicht so einfach. Schon ein einziger Buchstabendreher kann den ganzen Text urinieren... :whistling:
  • @John: Also das funktioniert garnicht.
    Da schließt sich nur mein Aktuelles Bild und mein Mailprogramm geht garnicht auf.

    Nochmal kurz erklärt.
    Ich klicke auf ein Bild und das Mailprogramm öffnet sich.
    Klicke ich dort auf senden (gerade getestet), wird die Mail auch versendet, das Mailprogramm geht jedoch nicht zu und ich komme nicht mehr zurück in meine App.

    PS: Sry doppelpost.
    Intelligente Sätze zu verfassen ist gar nicht so einfach. Schon ein einziger Buchstabendreher kann den ganzen Text urinieren... :whistling:
  • Ja hab nicht richtig gelesen sorry. So sollte es funktionieren. Erst das delegate hinzufügen Und dann die Methode benutzen : - (void) mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error { [self dismissViewControllerAnimated:YES completion:nil]; }
  • So ein Mist, da ist doch tatsächlich vor dem Mittag das Wlan abgeschmiert.

    Also nochmal meinen ganzen text:

    Ich steh irgendwie auf dem Schlauch, irgendwo hab ich einen Denkfehler oder mache gar etwas falsch.

    So mache ich es momentan:

    Quellcode

    1. [self presentViewController:mail animated:YES completion:nil];
    2. MFMailComposeResult re;
    3. NSError *er;
    4. [self mailComposeController:mail didFinishWithResult:(re) error:er];
    5. }
    6. -(void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult: (MFMailComposeResult)result error:(NSError*)error
    7. {
    8. if (result == MFMailComposeResultSaved || result == MFMailComposeResultCancelled || result == MFMailComposeResultFailed || result == MFMailComposeResultSent){
    9. [self dismissViewControllerAnimated:YES completion:nil];}
    10. }
    Alles anzeigen


    Momentan geht es zwar auf. Beim Senden/Abbrechen/wie auch immer schmiert es jedoch ab. Wo ist der Fehler?

    Edit: Läuft!

    Danke an alle noch mal, ihr seid toll!!
    Intelligente Sätze zu verfassen ist gar nicht so einfach. Schon ein einziger Buchstabendreher kann den ganzen Text urinieren... :whistling:

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Dapete ()