Kann ich E-Mails programmgesteuert in der iPhone App senden?

8

Ich muss in der Lage sein, eine vorformulierte E-Mail- oder SMS-Nachricht programmgesteuert aus einer iPhone-App zu senden. Kann das gemacht werden? Ich habe Apples MFMailComposeViewController-Klasse angeschaut, aber diese "bietet eine Standardschnittstelle, die das Editieren und Senden einer E-Mail-Nachricht verwaltet" und die MFMessageComposeViewController-Klasse hat auch ihre eigene "Standard-Systemschnittstelle zum Verfassen von SMS-Nachrichten". Diese ermöglichen es Ihnen, dem Benutzer eine Schnittstelle zu präsentieren, wo sie alle Daten ausfüllen müssen und dann explizit eine Sendetaste drücken müssen.

Ich kann diese Standardfunktion nicht verwenden.

Ich muss in der Lage sein, eine Nachricht zu senden, ohne dem Benutzer irgendeine Schnittstelle zu präsentieren. Ich weiß, dass das böse klingt, aber eigentlich ist es für eine kommerzielle Anwendung, die mit einer Benutzergruppe in einer Zentrale kommunizieren muss, wenn Benutzer vor Ort bestimmte Aktionen im Feld ausgeführt haben.

Hat jemand eine Lösung gefunden?

    
jcpennypincher 07.11.2010, 20:24
quelle

8 Antworten

11
___ answer4120092 ___

Richten Sie einen Webdienst ein, für den Sie eine HTTP-Anfrage senden können. Wenn Sie nur an eine Adresse schreiben, kann das sehr gut funktionieren, obwohl Sie den Benutzer vielleicht bitten möchten, seine Rücksendeadresse einzugeben.

Anderenfalls ist nur der Standarddialog verfügbar (dies hängt davon ab, welches Konto sie auf dem Gerät eingerichtet haben).

    
___ antwort5001271 ___

Nach vielen Nachforschungen habe ich festgestellt, dass das automatische Senden von E-Mails ohne Benutzereingriff aus einer iPhone-Anwendung mit keinem der Apple-Frameworks implementiert werden kann.

    
___ qstntxt ___

Ich muss in der Lage sein, eine vorformulierte E-Mail- oder SMS-Nachricht programmgesteuert aus einer iPhone-App zu senden. Kann das gemacht werden? Ich habe Apples MFMailComposeViewController-Klasse angeschaut, aber diese "bietet eine Standardschnittstelle, die das Editieren und Senden einer E-Mail-Nachricht verwaltet" und die MFMessageComposeViewController-Klasse hat auch ihre eigene "Standard-Systemschnittstelle zum Verfassen von SMS-Nachrichten". Diese ermöglichen es Ihnen, dem Benutzer eine Schnittstelle zu präsentieren, wo sie alle Daten ausfüllen müssen und dann explizit eine Sendetaste drücken müssen.

Ich kann diese Standardfunktion nicht verwenden.

Ich muss in der Lage sein, eine Nachricht zu senden, ohne dem Benutzer irgendeine Schnittstelle zu präsentieren. Ich weiß, dass das böse klingt, aber eigentlich ist es für eine kommerzielle Anwendung, die mit einer Benutzergruppe in einer Zentrale kommunizieren muss, wenn Benutzer vor Ort bestimmte Aktionen im Feld ausgeführt haben.

Hat jemand eine Lösung gefunden?

    
___ answer4331567 ___

Nur möglich Über das Webinterface können Sie das Interface nicht ausblenden, dies ist gemäß Apple Guidlines zu Developer und gemäß Dokumentation

    
___ answer4119795 ___

Hier sind ein paar SMTP-APIs, die unter OS X funktionieren. Sie könnten auch unter iOS funktionieren.

  • Pantomime
  • MailCore
  • EdMessage
___ answer4119650 ___

Ich habe keine Erfahrung mit iOS, aber ich habe genügend Erfahrung mit E-Mail-Protokollen, um zu sagen, dass ich sehr überrascht wäre, wenn eine Client-Anwendung E-Mails senden könnte, ohne auf einen Server zuzugreifen. Sehr wahrscheinlich wird die E-Mail mit dem SMTP-Protokoll gesendet und muss daher über einen SMTP-Server gesendet werden. Die Auswahl, wie Sie sich mit diesem Server verbinden, ist die einzige Option, die Sie haben. Sie könnten eine Verbindung zu einem serverseitigen Skript (z. B. php) herstellen, um die E-Mail zu generieren und zu senden, oder Sie können einen Socket erstellen und direkt eine Verbindung zu Port 25 auf dem SMTP-Server herstellen und die E-Mail von Ihrer Clientanwendung generieren.

Überprüfen Sie:

___ answer48383393 ___

Nach einer Lösung für solch ein Problem suchend, fand ich etwas interessantes hier: Wie man eMail von der iphone Anwendung sendet, ohne MFMailComposeViewController anzuzeigen?

Ich hoffe, das wird nützlich sein!

    
___ answer7096797 ___

Sie können immer ein telnet mit niedriger Stufe verwenden, indem Sie das SMTP-Protokoll an einen bekannten Mail-Server senden, um eine Nachricht zu senden. Ich weiß nicht, ob Apple die App ablehnen wird, aber SMTP ist verdammt einfach.

    
___ tag123email ___ E-Mail ist eine Methode zum Austauschen digitaler Nachrichten von einem Absender an einen oder mehrere Empfänger. Wenn Sie nachfragen, warum die von Ihnen gesendeten E-Mails als Spam markiert sind, ist das Thema für StackOverflow nicht relevant. ___ tag123objectivec ___ Dieses Tag sollte nur bei Fragen verwendet werden, die sich auf Objective-C-Features beziehen oder von Code in der Sprache abhängen. Die Tags [Kakao] und [Kakao-Touch] sollten verwendet werden, um nach Frameworks oder Klassen von Apple zu fragen. Verwenden Sie die zugehörigen Tags [ios], [macos], [apple-watch] und [tvos] für Probleme, die für diese Plattformen spezifisch sind. ___ qstnhdr ___ Kann ich E-Mails programmgesteuert in der iPhone App senden? ___ tag123iphone ___ Verwenden Sie diesen Tag NICHT, es sei denn, Sie wenden sich speziell an Apple's iPhone und / oder iPod touch. Verwenden Sie für nicht hardwareabhängige Fragen das Tag [ios]. Weitere zu betrachtende Tags sind [xcode] (aber nur, wenn es sich um die IDE selbst handelt), [swift], [objective-c] oder [cacao-touch] (aber nicht [cocoa]). Bitte verzichten Sie auf Fragen zum iTunes App Store oder zu iTunes Connect. Wenn Sie C # verwenden, markieren Sie mit [mono]. ___ tag123sms ___ Short Message Service (SMS) ist die standardisierte Textkommunikationsdienstkomponente von Telefon-, Web- oder Mobilkommunikationssystemen, die den Austausch von kurzen Textnachrichten zwischen Festnetz- oder Mobiltelefongeräten ermöglicht. ___ answer4119735 ___

Dies ist standardmäßig nicht möglich. Wenn Sie den Standarddialog nicht verwenden können, müssen Sie SMTP verwenden.

SMS ist das gleiche, verwenden Sie den Dialog der Verwendung eines webbasierten SMS-Dienstes (die meisten davon kosten etwas Geld).

    
___ tag123sendmessage ___ Sendet die angegebene Nachricht an ein oder mehrere Fenster. Die SendMessage-Funktion ruft die Fensterprozedur für das angegebene Fenster auf und kehrt nicht zurück, bis die Fensterprozedur die Nachricht verarbeitet hat. ___
jcpennypincher 15.02.2011, 08:23
quelle
5

Richten Sie einen Webdienst ein, für den Sie eine HTTP-Anfrage senden können. Wenn Sie nur an eine Adresse schreiben, kann das sehr gut funktionieren, obwohl Sie den Benutzer vielleicht bitten möchten, seine Rücksendeadresse einzugeben.

Anderenfalls ist nur der Standarddialog verfügbar (dies hängt davon ab, welches Konto sie auf dem Gerät eingerichtet haben).

    
pchap10k 07.11.2010 22:41
quelle
3

Hier sind ein paar SMTP-APIs, die unter OS X funktionieren. Sie könnten auch unter iOS funktionieren.

  • Pantomime
  • MailCore
  • EdMessage
Dylan Lukes 07.11.2010 21:28
quelle
1

Nur möglich Über das Webinterface können Sie das Interface nicht ausblenden, dies ist gemäß Apple Guidlines zu Developer und gemäß Dokumentation

    
IPhoneCrazy 02.12.2010 04:04
quelle
1

Nach einer Lösung für solch ein Problem suchend, fand ich etwas interessantes hier: Wie man eMail von der iphone Anwendung sendet, ohne MFMailComposeViewController anzuzeigen?

Ich hoffe, das wird nützlich sein!

    
Panayot 22.01.2018 14:05
quelle
0

Dies ist standardmäßig nicht möglich. Wenn Sie den Standarddialog nicht verwenden können, müssen Sie SMTP verwenden.

SMS ist das gleiche, verwenden Sie den Dialog der Verwendung eines webbasierten SMS-Dienstes (die meisten davon kosten etwas Geld).

    
Janco 07.11.2010 21:14
quelle
0

Ich habe keine Erfahrung mit iOS, aber ich habe genügend Erfahrung mit E-Mail-Protokollen, um zu sagen, dass ich sehr überrascht wäre, wenn eine Client-Anwendung E-Mails senden könnte, ohne auf einen Server zuzugreifen. Sehr wahrscheinlich wird die E-Mail mit dem SMTP-Protokoll gesendet und muss daher über einen SMTP-Server gesendet werden. Die Auswahl, wie Sie sich mit diesem Server verbinden, ist die einzige Option, die Sie haben. Sie könnten eine Verbindung zu einem serverseitigen Skript (z. B. php) herstellen, um die E-Mail zu generieren und zu senden, oder Sie können einen Socket erstellen und direkt eine Verbindung zu Port 25 auf dem SMTP-Server herstellen und die E-Mail von Ihrer Clientanwendung generieren.

Überprüfen Sie:

Aaron 07.11.2010 20:54
quelle
0

Sie können immer ein telnet mit niedriger Stufe verwenden, indem Sie das SMTP-Protokoll an einen bekannten Mail-Server senden, um eine Nachricht zu senden. Ich weiß nicht, ob Apple die App ablehnen wird, aber SMTP ist verdammt einfach.

    
user756212 17.08.2011 17:13
quelle