В своем приложении для Android я использую следующий код, чтобы запустить приложение обмена сообщениями и ввести текст по умолчанию для текстового сообщения:
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("sms:"+USERS_PHONE_NUMBER));
intent.putExtra("sms_body", "DUMMY TEXT");
startActivity(intent);
Это работает в большинстве случаев. Но, к сожалению, на некоторых устройствах я получаю следующее сообщение об ошибке:
android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=sms:+XXXXXXXXXX (has extras) }
at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1510)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1384)
at android.app.Activity.startActivityForResult(Activity.java:3131)
at android.app.Activity.startActivity(Activity.java:3237)
Очевидно, что созданное мной намерение не может быть обработано.
- Есть ли какая-либо ошибка в коде моего SMS-сообщения?
- Как предотвратить сбой приложения, если не удается обработать намерение?
Должен ли я использовать PackageManager.queryIntentActivities () или есть другой способ решения этой проблемы?
Заранее спасибо!