I want to write method to send SMS on number and with text from edit text fields. After message is sent I want to receive some sound or something to alert me that SMS is received. How can I do that? Thank you in advance, Wolf.
Asked
Active
Viewed 1,168 times
1 Answers
4
This site seems to have a good write up of both: http://mobiforge.com/developing/story/sms-messaging-android
The important parts are this:
//---sends an SMS message to another device---
private void sendSMS(String phoneNumber, String message)
{
PendingIntent pi = PendingIntent.getActivity(this, 0,
new Intent(this, SMS.class), 0);
SmsManager sms = SmsManager.getDefault();
sms.sendTextMessage(phoneNumber, null, message, pi, null);
}
And this answer has a simple broadcast receiver to get the text messages coming in: Android - SMS Broadcast receiver Should look something like:
public class SMSBroadcastReceiver extends BroadcastReceiver {
private static final String SMS_RECEIVED = "android.provider.Telephony.SMS_RECEIVED";
private static final String TAG = "SMSBroadcastReceiver";
@Override
public void onReceive(Context context, Intent intent) {
Log.i(TAG, "Intent recieved: " + intent.getAction());
if (intent.getAction() == SMS_RECEIVED) {
Bundle bundle = intent.getExtras();
if (bundle != null) {
Object[] pdus = (Object[])bundle.get("pdus");
final SmsMessage[] messages = new SmsMessage[pdus.length];
for (int i = 0; i < pdus.length; i++) {
messages[i] = SmsMessage.createFromPdu((byte[])pdus[i]);
}
if (messages.length > -1) {
Log.i(TAG, "Message recieved: " + messages[0].getMessageBody());
}
}
}
}
}

Community
- 1
- 1

Salil Pandit
- 1,498
- 10
- 13