Comment envoyer un e-mail via iOS simulator?

je veux savoir s'il est possible d'envoyer des e-mails via iPhone simulator. J'ai vu le tutoriel pour envoyer un e-mail via iphone comme ci-dessous:

http://www.edumobile.org/iphone/iphone-programming-tutorials/compose-mail-application-in-iphone/

Maintenant, pour tester, il est nécessaire d'avoir une véritable appareil? Quelle est la façon si je veux envoyer un e-mail grâce à l'iPhone simulateur?

28
demandé sur Caleb 2011-03-18 10:22:05

4 réponses

Vous devez compter sur l'iOS que l' MFMailComposeResult qui est de la remise en mailComposeController:didFinishWithResult:error: est correct. Le simulateur simule ce résultat; Aucun courrier réel n'est envoyé bien qu'il dise MFMailComposeResultSent.

Le tutoriel mentionné manque un point important: la première chose à faire avant d'utiliser MFMailComposeViewController est à vérifier [MFMailComposeViewController canSendMail]. Qui sera de retour NO si l'utilisateur n'a pas de messagerie configuré sur leur appareil. Si vous devez supporter une version iOS Avant 3.0, la bonne façon est de vérifier si la classe MFMailComposeViewController existe:

Class mailClass = (NSClassFromString(@"MFMailComposeViewController"));
if (mailClass != nil)
{
    if ([mailClass canSendMail])
    {
        [self displayComposerSheet];
    }
    else
    {
        [self launchMailAppOnDevice];
    }
}
else
{
    [self launchMailAppOnDevice];
}

le problème canSendMail ne peut être testé que sur un appareil réel. Il s'écrasera si vous ne Vérifiez pas canSendMail et que l'utilisateur n'a pas de Compte mail configuré.

31
répondu Felix 2011-03-18 07:52:37

Oui, il est nécessaire si vous souhaitez envoyer l'e-mail.

dans la plupart des cas, il n'y a pas besoin de vous inquiéter car le courrier va être envoyé par l'application apple, donc vous n'aurez besoin que de vérifier que votre application répond et lance le compositeur du courrier. La seule chose que je peux penser comme problématique est si vous voulez vous assurer que les pièces jointes et les images sont envoyées correctement. Dans ce cas, vous pouvez envoyer un bêta à quelqu'un avec iphone et demandez-lui de vérifier pour vous.

important avoir un appareil est critique pour le développement, votre simulateur ne se comporte pas exactement comme l'appareil. il est faussaire et, d'après mon expérience, j'ai toujours eu des problèmes avec l'appareil qui n'était pas dans le simulateur.

4
répondu shannoga 2011-03-18 08:22:56

selon le discussion sur le forum apple, pour tester la fonctionnalité dont nous avons vraiment besoin d'un appareil, simulator ne supporte pas cette fonctionnalité.

Une partie de la discussion:

sptrakesh Chicago Re: iOS SIMULATOR

MAIL APP Mar 26, 2012 7: 09 AM (in response to davemac75)

L'application mail n'est pas disponible sur le simulateur. Vous aurez besoin de pour tester votre application sur un périphérique de test partie.

4
répondu NeverHopeless 2014-03-31 13:50:30

vous pouvez utiliser le framework MessageUI sur le simulateur pour composer et "envoyer" des messages, mais je ne crois pas qu'il y ait un moyen d'envoyer réellement le message. Une fois que l'Utilisateur a cliqué sur le bouton Envoyer dans la vue composition du message, cependant, votre code n'a aucun rôle dans l'envoi du message. Le simulateur fait donc assez pour que vous puissiez développer et tester votre application.

quant à savoir s'il est nécessaire d'avoir un vrai appareil, je dirais qu'à un moment donné vous devez tester sur un ou plusieurs appareils non indépendamment de ce que. Le simulateur est un excellent outil, mais après un certain point, il n'est pas un substitut pour exécuter votre application sur la chose réelle.

1
répondu Caleb 2011-03-18 07:38:02