MFMessageComposerViewController >> canSendSubject Geht nicht

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

  • MFMessageComposerViewController >> canSendSubject Geht nicht

    Hi,

    habe in meinen Code folgendes eingearbeitet:
    (der Code arbeitete normal, bis ich gemerkt habe, dass die Subjektzeile fehlt, wenn man sie in den Einstellungen abschaltet ...)


    C-Quellcode

    1. let messageVC = MFMessageComposeViewController()
    2. messageVC.messageComposeDelegate = self
    3. // jetze neu, was ärgerlicherweise nicht geht ...
    4. if MFMessageComposeViewController.canSendSubject == true {
    5. messageVC.subject = "Betreffzeile"
    6. messageVC.body = "Inhalt" }
    7. if MFMessageComposeViewController.canSendSubject == false {
    8. messageVC.body = "Betreffzeile" + "\n" + "Inhalt" }
    Alles anzeigen




    Schon der 2. Teil sollte doch für sich allein laufen, wenn man das auf einem System testet, wo in den Einstellungen unter "Nachrichten" >> "Betreff-Feld anzeigen" abgestellt wurde.
    Hat irgendwer eine Idee, warum das so nicht geht?!?

    hab jetzt noch versucht:

    C-Quellcode

    1. messageVC.body = "Betreffzeile" + "\n" + "Inhalt"
    2. if MFMessageComposeViewController.canSendSubject {
    3. messageVC.body = "Inhalt" }
    4. messageVC.subject = "Betreffzeile"

    geht aber auch nicht ?!?

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von J. Doerfel ()

  • Mac & i Test Abo
  • Hab's jetzt mal optisch aufgemöbelt ...

    MCDan schrieb:

    Liefert canSendSubject den unterschiedliche Werte, je nachdem ob in den Einstellungen unter "Nachrichten" -> "Betreff-Feld anzeigen" aktiviert oder deaktiviert ist?
    Nun, *hüstel* - hab den Wert nicht direct abgefragt, aber es verhält sich wohl so, als würde der Wert nie "false".
    Ich hatte gehofft, jemand kennt das Problem - werde nochmal dran arbeiten, aber das wird noch 1 Tag dauern, ich hab einfach zu oft "ja" gesagt.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von J. Doerfel ()

  • Hab das "Problem" ½ gelöst - ich Schreibe den Inhalt der Betreff-Zeile anders - aber sinngemäß nochmal. Also als eine Art Überschrift in den Text hinein. Für mich sieht es einfach unmöglich aus, wenn man eine E-Mail mit dem Betreff "kein Betreff" erhält. Aber genau solche Mails verschickt das System, wenn die Funktion "Betreff-Feld anzeigen" in den Einstellungen abgeschalten ist. Und es gibt als Programmierer wohl kaum einen Weg das zu berichtigen.
  • J. Doerfel schrieb:

    Für mich sieht es einfach unmöglich aus, wenn man eine E-Mail mit dem Betreff "kein Betreff" erhält. Aber genau solche Mails verschickt das System, wenn die Funktion "Betreff-Feld anzeigen" in den Einstellungen abgeschalten ist.

    Mit dem MFMessageComposerViewController lassen sich SMS/MMS oder iMessage Nachrichten aber keine E-Mails verschicken. ?(

    Zum Verschicken von E-Mails gibt es den MFMailComposeViewController.
  • MCDan schrieb:

    Mit dem MFMessageComposerViewController lassen sich SMS/MMS oder iMessage Nachrichten aber keine E-Mails verschicken. ?(

    Zum Verschicken von E-Mails gibt es den MFMailComposeViewController.
    Ja nd nein - wenn ich die eMail im Contact-Picker mit abfrage und bei Fehlen einer Tel.-Nr. einsetze (also erst "contact.phoneNumbers" und wenn nicht vorhanden "contact.emailAddresses") kann ich von meinem iPad E-Mails verschicken. (alles über MFMessageComposerViewController) -> Und das war ja auch "der Witz" an der Sache, man schreibt eine Nachricht an jemanden aus seinem Adress-Buch, und die Nachricht kommt an ...
    Aber so schön wie das klingt, der Dörfel steckt im Detail ...

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von J. Doerfel ()

  • Also ...
    habe die App so estartet -

    C-Quellcode

    1. var var_001 = " "
    2. if !MFMailComposeViewController.canSendMail() {
    3. var_001 = "Mailversand nicht möglich."
    4. return
    5. }

    Nach einigen Recherchen: es ergibt nicht immer "true" - und wenn es "false" ergibt, kann man dann auch wirklich darauf verlassen, dass man keine E-Mails versenden kann. Leider gibt es Konfigurationsmöglichkeiten, bei denen canSendMail "true" zurück gibt, obwohl letztlich duch keine Mail versendet werden kann.
    Scheint auch schon länger bekannt zu sein ...
  • Interessanterweise ging das Senden an eine E-Mail nach all dem Rumprobieren bei mir plötzlich auch nicht mehr ...

    Die Lösung war unter "Einstellungen" > "Mobiles Netz" > "Mobile Daten" zuschalten.

    Das hatte ich deaktiviert um meinen Traffic zu schonen - und ich hatte erwartet, alles geht, wenn ich zu Hause im W-LAN angemeldet bin. - Ein ärgerlicher Irrtum ...