Android 4.4+ How do apps like MightyText and AirDroid send SMS? - android

Both of these applications allow you to send SMS on your desktop/through a web browser as if it's coming from your phone (it really is coming from your phone). My question is:
How do they automatically send SMS through the Default SMS App (Messenger) without any user interaction (in the background/discretely) on Android 4.4?

Any app that has SEND_SMS permission can send the message using SmsManager.
The default SMS app is responsible for writing the sent messages to the sms provider.
Apps like mightytext, mobitexter which allow to send sms from web sends the message using SmsManager and in 4.4+ the default SMS app takes care of writing the sent messages to the sms provider.
For more details you can read http://android-developers.blogspot.in/2013/10/getting-your-sms-apps-ready-for-kitkat.html
PS: I work on a similar app mobitexter.net

MightyText has permission to send sms messages. So the app is not using the default sms app, but sending the messages using the Android API.
Messages send by the app are added to the default messaging SQL database on the phone. Because of that it will look like the default app has send them.

Related

Querying for SMS sent via Project Fi

When an SMS is sent/received on a Project Fi Android phone using Hangouts/Messenger how is it stored?
When querying for messages using Android's sms or mms ContentProviders I'm only getting sms messages sent/received when the phone wasn't part of Project Fi.
Any way to query for those messages? Are those messages even stored on the same DB?
P.S.
I'm aware that only Hangouts/Messenger are supported for sending/receiving:
On third-party apps
If you're using any app other than Messenger or Hangouts to send and
receive messages, download the most recent version of Messenger and
make it your default messaging app for best results.
I want to be able only to query for those messages sent via one of those apps.

Is there any requirements to connect application with sms gateway to send or recive message online?

I am developing an Android application that will send a message at a pre-defined time. Do I require an SMS gateway? Or is there another way to send a message online?

Sending SMS in android with Custom Name

I am trying to do Mobile Number Verification just like WhatsApp in my Android App. I'm able to send SMS from my Android app.
But I want to achieve these 2 things:
The Sender name in the receiver's Inbox should be a Custom Name decided by my App, like SMS from WhatsApp has sender name somewhat like WTAPP-5550. Currently its showing my Mobile Number.
Making sure that the SMS sent from User's phone doesn't show up in User's Sent Box. Currently SMS appears both as SENT and RECIEVED SMS. Like in d case of WhatsApp , no SENT Message is present only Recieved SMS is.
Thanks and Regards,
Rahul Soni
See Mr Rahul From your question what I understood is you are sending the sms to the mobile number through your app. That is not a good way to verify the mobile number. What you have to do is you have to send sms through the server. Whats app people will connect to their server and from server they will send sms to the entered mobile number. Thats why it will not appear in the sent box. And to set custom name to the sender number you have to use third party sms services.

Update SMS as read in phone, upon reading an SMS in my app

Hi I am developing an android SMS app where I am fetching the SMS stored in the phone and displaying it on a list view. How can I update a SMS as read in the phone, upon reading an SMS in my app.
I refered the following link,
Android: how to mark sms as read in onReceive
This did not work. What can i use instead of this.
Please suggest. Thanks!
How can I update a SMS as read in the phone, upon reading an SMS in my app.
You can't, reliably. There are hundreds, perhaps thousands, of SMS clients on the Play Store. None of them have to expose some sort of API to allow third parties to somehow mark SMS messages as "read".

How to block application using messaging feature like sms in android

Hi I want to write an application that can prevent other application from using the sms feature of android mobile. That means other than sms feature of android mobile, no application installed on phone can send sms message. How can this be implemented.
Thanks
Fortunately, this is not possible, except perhaps by custom firmware. Any app that holds the SEND_SMS permission is perfectly welcome to use SmsManager to send an SMS.

Categories

Resources