2009-08-11 16 views
16

Desidero inviare posta da un'app per iPhone senza mostrare MFMailComposeViewController. Voglio anche che questa mail sia inviata dall'account di posta predefinito dell'utente. È possibile farlo?Invia posta senza MFMailComposeViewController

+0

Vuoi dire che vuoi inviare un'email senza richiedere una conferma da parte dell'utente? – notnoop

+4

Non puoi farlo legalmente. Usa MFMailComposeViewController. –

+0

No, ciò che intendevo era che l'utente potesse utilizzare un modulo di posta personalizzato anziché il MFMailComposeViewController incorporato; Volevo questo perché ho aggiunto funzionalità che non sono supportate sotto MFMailComposeViewController. Non è che volessi spamare le persone. –

risposta

15

Questo non è supportato dall'SDK di iPhone, probabilmente perché Apple non vuole che tu lo faccia.

Perché no? La mia ipotesi: perché è facile abusare. Se conoscessimo l'indirizzo e-mail dell'utente, potremmo inviarlo tramite posta elettronica, potremmo inviare e-mail false, ecc. Immagina di scoprire un'app per iPhone che ti ha inviato un'email a tua insaputa - non bella, anche se l'app aveva buone intenzioni.

Quindi, qualsiasi cosa tu faccia per aggirare questo, rischia di farti rifiutare dall'app store.

Detto questo, è possibile scrivere il proprio codice di interazione smtp per chattare con il server di posta in uscita dell'utente. Ad esempio, se l'utente ha un account Gmail, potresti chiedere loro la loro email e password, dovresti sapere come parlare con i server di Gmail e inviare email attraverso di loro.

Andare su quella rotta significa chiedere all'utente il proprio nome utente, password e chiedere o capire le informazioni del proprio server di posta. Un'altra scelta è quella di inviare direttamente dal telefono (il proprio server smpt, non solo un client), che è un po 'più codificante. E se scrivi il tuo server, la posta che invii è più probabile che venga bloccata poiché il tuo IP di origine potrebbe non corrispondere al dominio sull'e-mail del mittente.

Esistono anche alcune librerie che potrebbero aiutare. Precedente domanda relativa:

4

Non ci sono motivi legittimi per voler inviare una e-mail. (Come ad esempio la comunicazione con un server utilizzando il protocollo SMTP al posto di HTTP)

Questo post del blog dovrebbe farti andare: http://vafer.org/blog/20080604120118

+0

Sì, grazie. La gente sembra pensare che io voglia solo spammare la gente. Cosa succede se voglio un modo integrato per inviare feedback? Non tutte le e-mail senza MFMailComposeViewController sono dannose. –

+0

sì, ci sono motivi legittimi per cui le persone vogliono farlo. ad esempio il dispositivo potrebbe inviare una e-mail se il dispositivo non è collegato, qualcuno gioca con un ipad visualizzato in un negozio, prende l'accordo. – Zsolt

Problemi correlati