Android4.4 can not handle sms intent with “”

To start the SMS app with number populated use action ACTION_SENDTO:

Intent intent = new Intent(Intent.ACTION_SENDTO);
intent.setData(Uri.parse("smsto:" + Uri.encode(phoneNumber)));

This will work on Android 4.4. It should also work on earlier versions of Android however as the APIs were never public the behavior might vary. If you didn’t have issues with your prior method I would probably just stick to that pre-4.4 and use ACTION_SENDTO for 4.4+.

Leave a Comment