2010-07-03 4 views
1

Je crée une application qui envoie et SMS en tapant sur un bouton. Pour implémenter cette fonctionnalité j'ai installé l'iPhone SDK 4. Comme il supporte l'application SMS. Mais quand je tape sur mon bouton pour envoyer des SMS, le contrôleur de vue MessageUI est affiché avec mon corps SMS personnalisé. Je ne veux pas afficher cet écran, j'ai juste besoin d'envoyer le SMS en arrière-plan sans afficher l'écran SMS à l'utilisateur.Envoi de SMS en arrière-plan à partir de l'iPhone 4

Quelqu'un peut-il m'aider à résoudre ce problème? S'il vous plaît aider nécessaire.

Merci et salutations, Shibin

+2

Pourquoi voulez-vous faire cela? Je ne peux pas penser à une raison qui n'est pas contraire à l'éthique ou même carrément malveillant. –

+0

Je serais vraiment surpris s'il y a un moyen de contourner cela. Pensez: vous posez la question "comment puis-je envoyer secrètement un SMS sans que le propriétaire de l'iPhone sache que je le fais?" Pouvez-vous voir maintenant pourquoi Apple ne permettra pas cela? – JeremyP

+0

@Shbin si vous avez obtenu votre réponse à partir des réponses postées ci-dessous puis acceptez cette réponse, qui nous motivent tous. – iLearner

Répondre

6

Je suis assez sûr qu'il n'y a aucun moyen de le faire. Apple veut l'utilisateur de confirmer un SMS envoyer pendant au moins deux raisons:

  • SMS coûte de l'argent de l'utilisateur d'envoyer
  • Si votre application peut envoyer sans confirmation, vous pouvez spammer les contacts du carnet d'adresses de l'utilisateur ou pire, donnez-leur un lien vers un site d'hameçonnage auquel ils font confiance car le texte provient d'une source fiable

Pourquoi vous souciez-vous si l'utilisateur confirme le SMS ou non? Dès qu'ils tapent "Envoyer", le contrôleur de vue MessageUI est fermé et l'utilisateur est de retour dans l'écran de votre application.

La seule alternative que je peux penser si est d'envoyer un NSHTTPURLRequest à un service Web qui fournit une passerelle SMS. Que vous pourriez certainement faire en arrière-plan, bien que vous probable (le développeur, pas l'utilisateur) encourrait le coût de l'envoi des messages, et l'expéditeur ne semble pas être l'utilisateur.

3

Selon le official Class Reference fourni par Apple, le message de composition toujours venir afin que l'utilisateur peut confirmer le message.

+0

Merci Raphael, Y at-il un autre moyen de cacher la vue? contrôleur forme le code? – smakstr

0

Non, vous ne pouvez pas faire cela. Il y a une raison pour que le contrôleur de MessageUI montre - c'est pour confirmer à l'utilisateur que le SMS est effectivement envoyé avec sa connaissance et sa compréhension.

1

Sans le corps du message, vous ne pouvez pas envoyer un message à l'utilisateur. Vous voulez envoyer un message en arrière-plan .Simply vous référez le sujet comme service Web, référence api .Il vous aide à envoyer un message en arrière-plan. J'espère que cela vous sera utile ..

Questions connexes