I am new to iPhone application development. In the application that I am developing for iPhone there is a module which sends the sms without knowing to the user to my sms server and gets the response and displays the result. Is there any way to send and receive sms message in app?
Thanks in advance.
You should use data instead of SMS.
SMS are not a way to send information between a client and a server, but Internet is. And by using data, you also get a much more reliable transfer protocol (SMS aren't).
You shouldn't send SMS without the agreement of your users, because it can become really costly. Imagine you have a user on vacation in another country, and think that your app is using wifi, while it is using SMS. This user will be really mad when he will get is cellphone bill.
So even if you can do it, I think you shouldn't. And if you really need to do this, be sure that it is really clear to the user that your app is going to send SMS from his phone (with the charge of a normal SMS).
This is not possible with the iPhone SDK as it stands. It's probably not possible with any mobile platform without the user knowing about it as it's an obvious security hole.
I am also working on GPS-based application and I can have the device stop sending SMS back to the user every time the user send an SMS command. I think as long as the SMS is sent, it should be fine.
If the user wants to see the status of the device, then I might have to establish communication between my server and the device via TCP/UDP and have the iPhone app "parse" the information and display the status. Perhaps the best way is to have the server respond to the iPhone app saying "The device received your SMS command" and display it on the app so that the user knows his/her SMS were sent.
But yes, if we could get the location via SMS, then I could send those coordinates to the Google Maps app in the iPhone itself and it would display it for you.
I am the author of an App on Android which does this, called ImHerePlus. Check it out and see if it helps.
Related
programmatically send SMS on the iPhone with out show MFMessageComposeViewController? It's possible? b/c I want to konw when's my phone send sms. I don't want my phone auto sending SMS.
If it's possible, how to know? How to catch that event?
In theory (and assuming the phone is not jailbroken), you cannot send an SMS without user intervention. If sending SMS messages via the API, the user will see the message-compose view controller.
That said, I suppose an app could "bypass" this by sending an HTML request to a third-party SMS gateway (in other words, the iphone is not actually sending the text message, but an external server is).
It's possible, but not using the SMS capability provided by the phone. An app author wanting to send SMS without the usual UI would have to purchase capacity from some third party provider (search for 'SMS provider' to find many such providers). Messages sent that way would cost the app developer money, which is as powerful a disincentive as you can find. They also wouldn't be identified with you.
We are going to build iPhone app6 that sends SMS in background.
Can we send SMS without user probpting?
Short answer NO.
It is due to privacy concern, last time when I search for stuff similar to your task, I was not even able to pre-fill the number to send the text. i.e., like pre-filling to email id when opening native mail app.
But you may explore private API to do this task.
When you use Viber for the first time, it sends you an activaion code by SMS. I am working on the same action. After doing some research, (like "iPhone In-App SMS MFMessageComposeViewController Auto-Send" ), I have come to a conclusion but I'm not very sure it is correct. So I think some experts know the answer.
In iOS 4, we can use MFMessageComposeViewController to send SMS. However, the user will still see the SMS page and he/she needs to click 'send' button. In Viber, the user doesn't have to—he/she just gets a SMS without seeing the message page after he/she enters his/her own phone number. And all articles I read tell me iOS doesn't allow us to send SMS without user intervention.
I guess Viber has set up its own intermediate server that sends SMS. Is that correct?
Yeah, there are a number of web services that’ll send SMSs for you—Google ‘em. That’s most likely what they’re using; it’s definitely not the phone’s built-in SMS functionality.
I am creating an application that sends and SMS while taping on a button. To implement this functionality I installed the iPhone SDK 4. Since it supports in app SMS. But when I tap on my button to send SMS the MessageUI view controller is displayed along with my custom SMS body. I dont want to display this screen, I just need to send the SMS in the background with out displaying the SMS screen to the User.
Can any one help me in solving this.? Please help needed.
Thanks and Regards,
Shibin
I'm pretty sure there's no way to do this. Apple wants the user to confirm an SMS send for at least a couple of reasons:
SMS costs the user money to send
If your app could send without confirmation, you could spam contacts from the user's address book, or worse, give them a link to a phishing site that they trust because the text came from a trusted source
Why do you care if the user confirms the SMS or not? As soon as they tap "Send", the MessageUI view controller is dismissed and the user is back in your app's screen.
The only alternative I can think if is to send an NSHTTPURLRequest to a web service that provides an SMS gateway. That you could certainly do in the background, though likely you (the developer, not the user) would incur the cost of sending the messages, and the sender would not appear to be the user.
According to the official Class Reference provided by Apple, the composing message will always come up so that the user can confirm the message.
No, you cannot do that. There is a reason for that MessageUI controller showing - it's to confirm with the user that indeed the SMS is sent with her knowledge and understanding.
Without message body you can't send a message to the user. You want to send a message in background .Simply you refer the topic like web service, api reference .Its help you to send a message in background. hope this is helpful for you..
I don't want my app to probe the nether parts of the iPhone... just use the modem to send a simple SMS message. Is this a deal-breaker with Apple? Why?
I'm considering a workaround where outgoing SMS are routed to a URL I set up to bounce the message on to the intended recipient. Do you think this is a feasible route to consider?
How to programmatically send SMS on the iPhone?
basically, you can open the sms app but you'll have to route through an (internet-based) sms gateway if you don't want to leave your app to send it.
SMS may be limited by the phone operator. This is a no-go if the user doesn't know a SMS is being sent.
Besides, interacting with something low-level like a device seems to be something Apple wouldn't like.
I don't know enough about phone protocols to be of any other help, though.