Utilitzar SmsManager per enviar un SMS des de Android

Si voleu enviar un SMS des de la vostra aplicació d’Android podeu utilitzar la classe SmsManager, aquest objecte el tenim a la llibreria android.telephony.gsm.SmsManager

SMS Android

El primer que tenim que fer es crear un objecte del tipus SmsManager dins de la nostra aplicació. Aquest objecte li assignarem la instancia actual del  servei SmsManager

SmsManager gSMS;

gSMS = SmsManager.getDefault();

Ara només caldrà cridar el mètode sendTextMessage per poder enviar un SMS. La sintaxis del sendTextMessage és :

sendTextMessage(String telefon, String SMSC, String text, PendingIntent sentIntent, PendingIntent deliveryIntent)

Realment de tots aquests paràmetres necessitem només el telèfon i el text. La resta de paràmetres són opcionals.

gSMS.sendTextMessage(“+34606999999”,null,”Hola !!”, null, null);

El paràmetre SMSC us permet definir el numero de telèfon del SMSC, o sigui, el numero de telèfon de la “central” d’enviaments de SMS. Si el valor el null agafarà el valor que té configurar el nostre dispositiu mòbil.

El paràmetre de sentIntent i deliveryIntent ens permet gestionar el resultat del enviament dels SMS, per exemple si voleu saber si el SMS s’ha pogut enviar correctament. En tot cas, podeu assignar-hi el valor null.

El exemple finals podria quedar de la següent forma :

SmsManager gSMS;

gSMS = SmsManager.getDefault();

gSMS.sendTextMessage(“+34606999999”, null, “Hola !!!!” , null, null);

Ja per finalitzar podeu utilitzar el mètode makeText del objecte Toast per poder fer sortir un missatge

Toast.makeText(getApplicationContext(), “SMS enviat”, Toast.LENGTH_LONG).show();