2015-07-31 2 views
0

Я хочу проверить, было ли сообщение доставлено или нет. , если сообщение не было доставлено из-за проблемы клеточного сигнала я бы тост, который говорит: «Нет сим-карты сигнала попробуйте снова»проверить, если sms был отправлен в android?

Это мой код в MainActivity.java

public void sendSMSMessage(String to, String message) { 
    try { 
     SmsManager smsManager = SmsManager.getDefault(); 
     smsManager.sendTextMessage(to, null, message, null, null); 
     Toast.makeText(getApplicationContext(), "Sent!", Toast.LENGTH_LONG).show(); 
    } catch (Exception e) { 
     Toast.makeText(getApplicationContext(), "Failed!", Toast.LENGTH_LONG).show(); 
     e.printStackTrace(); 
    } 
} 

Спасибо. Adios

ответ

0
@Override 
protected void onResume() { 
    super.onResume(); 
    registerReceiver(smsSentReceiver, new IntentFilter("android.provider.Telephony.SMS_SENT")); 
} 

@Override 
protected void onPause() { 
    super.onPause(); 
    unregisterReceiver(smsSentReceiver); 
} 

private final BroadcastReceiver smsSentReceiver = new BroadcastReceiver() { 
    @Override 
    public void onReceive(Context context, Intent intent) { 
     Toast.makeText(getApplicationContext(), "Sent!", Toast.LENGTH_LONG).show(); 
    } 
}