Alguém sabe criar classe simples de SMS!

Olá pessoal! Preciso de uma ajuda de quem já criou um aplicativo que manda SMS Programado(Aquela mensagem que é enviada pelo próprio programa sem intervenção de aplicativos do android). Preciso saber o porquê meu aplicativo não funciona?

Atenção:

Já coloquei permissões adequadas.
Não é exibido nenhum tipo de erro.
Não é exibido nenhum Toast.

[code]package br.com.expressobits.fastiw.sincronia;

import br.com.expressobits.fastiw.R;
import android.app.Activity;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.telephony.PhoneNumberUtils;
import android.telephony.gsm.SmsManager;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import android.net.Uri;
import android.content.ContentValues;

public class Sincronia extends Activity implements View.OnClickListener{

Button enviar;
EditText edtNumero;
EditText edtText;
SmsManager smsManager;
PendingIntent sendPI;
PendingIntent deliveredPI;

BroadcastReceiver smsSentReceiver, smsDeliveredReceiver;

private String SENT = "SMS_SENT";
private String DELIVERED = "SMS_DELIVERED";

@Override
protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.sincronia);
    initComponentes();
    enviar.setOnClickListener(this);

}

@Override
protected void onResume() {
    super.onResume();
    smsSentReceiver=new BroadcastReceiver() {

        @Override
        public void onReceive(Context arg0, Intent arg1) {
            // TODO Auto-generated method stub
            switch (getResultCode()) {
            case Activity.RESULT_OK:
                Toast.makeText(getBaseContext(), "SMS has been sent", Toast.LENGTH_LONG).show();
                break;
            case SmsManager.RESULT_ERROR_GENERIC_FAILURE:
                Toast.makeText(getBaseContext(), "Generic Failure", Toast.LENGTH_LONG).show();
                break;
            case SmsManager.RESULT_ERROR_NO_SERVICE:
                Toast.makeText(getBaseContext(), "No Service", Toast.LENGTH_LONG).show();
                break;
            case SmsManager.RESULT_ERROR_NULL_PDU:
                Toast.makeText(getBaseContext(), "Null PDU", Toast.LENGTH_LONG).show();
                break;
            case SmsManager.RESULT_ERROR_RADIO_OFF:
                Toast.makeText(getBaseContext(), "Radio Off", Toast.LENGTH_LONG).show();
                break;
            default:
                break;
            }

        }
    };

    smsDeliveredReceiver=new BroadcastReceiver() {

        @Override
        public void onReceive(Context arg0, Intent arg1) {
            // TODO Auto-generated method stub
            switch(getResultCode()) {
            case Activity.RESULT_OK:
                Toast.makeText(getBaseContext(), "SMS Delivered", Toast.LENGTH_LONG).show();
                break;
            case Activity.RESULT_CANCELED:
                Toast.makeText(getBaseContext(), "SMS not delivered", Toast.LENGTH_LONG).show();
                break;
            }
        }
    };

    registerReceiver(smsSentReceiver, new IntentFilter(SENT));
    registerReceiver(smsDeliveredReceiver, new IntentFilter(DELIVERED));

}

public void onPause() {
    super.onPause();
    unregisterReceiver(smsSentReceiver);
    unregisterReceiver(smsDeliveredReceiver);
}


/**
 * Inicializa os componentes da janela
 */
public void initComponentes(){
    enviar = (Button) findViewById(R.id.btSinc);
    edtNumero = (EditText) findViewById(R.id.sincedtnumero);
    edtText = (EditText) findViewById(R.id.sincedttext);
}

public boolean envio(String numero,String mensagem){
    try{
        //Inicializa
        SmsManager smsManager = SmsManager.getDefault();
        sendPI = PendingIntent.getActivity(this, 0, new Intent(SENT), 0);
        deliveredPI = PendingIntent.getBroadcast(this, 0, new Intent(DELIVERED), 0);

        if(PhoneNumberUtils.isWellFormedSmsAddress(numero)){
            smsManager.sendTextMessage(numero,null,mensagem,sendPI,deliveredPI);
            return true;
        }else{
            Toast.makeText(this,"Falha no SMS - tente novamente!",Toast.LENGTH_LONG).show();
            return false;
        }

    }catch(Exception e){
        Toast.makeText(this,"FALHA",Toast.LENGTH_LONG).show();
        return false;
    }
}
public void salvaMensagem(String numero,String mensagem){
    ContentValues values = new ContentValues(); 
    values.put("address",numero); 
    values.put("body",mensagem);
    getContentResolver().insert(Uri.parse("content://sms/sent"), values);
}
@Override
public void onClick(View v) {
    if(envio(edtNumero.getEditableText().toString(),edtText.getEditableText().toString())){
        salvaMensagem(edtNumero.getEditableText().toString(),edtText.getEditableText().toString());
    }

}

}[/code]

O que aparece no LogCat?

Não aparece nada no Log Cat! Como se não houvesse nenhuma execução no momento do click!

cara, debuga essa parte:

if(PhoneNumberUtils.isWellFormedSmsAddress(numero)){
smsManager.sendTextMessage(numero,null,mensagem,sendPI,deliveredPI);
return true;
}else{
Toast.makeText(this,“Falha no SMS - tente novamente!”,Toast.LENGTH_LONG).show();
return false;
}

ve se ele entra no sendTextMessage mesmo, e se retorna true…

no meu app, eu nao passo os parametros sendPI e deliveredPI, eu passo null nesses dois… e eu tb nao faço a verificação que vc fez no if aí… mas enfim… debuga aí e ve qq rola

Olá!
Preciso de uma ajuda urgente sobre app de SMS!
Não sei o porquê que meu app não funciona!

Aonde pediu para ver se entra no if ele entra!
só não envia a mensagem!

Seu aplicativo envia a mensagem ?
Seu aparelho é dois chips?

Passaria seu e-mail? para me ajudar pois este app custou caro e este módulo é importante para tudo!

Quais foram as permissões que você liberou?

Cara, desculpa o post seguido…

mas lendo a documentação aqui do android, percebi uma coisa que meu código tá diferente do seu…

Lá nos imports vc está usando a android.telephony.gsm.SmsManager, que está obsoleta desde a API 4…

leia:
http://developer.android.com/reference/android/telephony/gsm/SmsManager.html

a que eu uso no meu app aqui, é a android.telephony.SmsManager sem o gsm aí no meio…

leia:
http://developer.android.com/reference/android/telephony/SmsManager.html

faz o teste aí, vai que dá…

Olá ! Vlw mesmo pela ajuda ! resolveu meu problema!

Mas agora as mensagens só funcionam no emulador e no celular nada!!!

coloca crédito, rs