Because it possible your message string length is more then one message length so use smsManager. divideMessage (String text) for sending message if string exceed SMS size limit as:
SmsManager sms = SmsManager.getDefault();
if(str.length()>160){
ArrayList<String> smses = smsManager.divideMessage(str);
smsManager.sendMultipartTextMessage("5554", null,
smses, null, null);
}
else{
sms.sendTextMessage("5554", null, smses, null, null);
}
and make sure you have added following permission in AndroidManifest.xml
:
<uses-permission android:name="android.permission.SEND_SMS" />