Ответ 1
Это возможно. Просто добавьте следующие дополнительные для своих целей:
sendIntent.putExtra("exit_on_sent", true);
Когда я запускаю приложение SMS, используя следующие методы: все работает до тех пор, пока сообщение не будет отправлено. Когда я отправляю сообщение - он никогда не перейдет к исходной активности, если я не нажму кнопку "Назад". Как начать работу с SMS, а затем, как только сообщение будет отправлено, родительская активность снова появится?
Вот как я вызываю приложение SMS с результатом.
String message = getMessageString();
Intent sendIntent = new Intent(Intent.ACTION_SENDTO);
sendIntent.setData(Uri.parse("sms:" + number));
sendIntent.putExtra("sms_body", message);
startActivityForResult(sendIntent, INVITE_COMPLETED);
Это возможно. Просто добавьте следующие дополнительные для своих целей:
sendIntent.putExtra("exit_on_sent", true);
Как только действие, которое вы начали, будет завершено, вызывается метод onActivityResult() в вашем первом действии. Вот почему вы должны перезаписать onActivityResult() в своем первом действии и обработать там завершенные действия.
Вы ошибались, возможно, вы, возможно, не заметили, что вернулись в вызывающую деятельность. Вы должны указать код запроса при вызове субактивности. INVITE_COMPLETED немного напоминает, что он может представлять собой код результата. Коды результатов, такие как RESULT_OK и RESULT_CANCELED, являются предопределенными финалами класса Activity. Если вы используете
startActivityForResult(intent, MY_REQUEST_CODE);
вы можете затем переопределить onActivityResult() и уловить этот код запроса (который сам определяется в начальном действии). Это выглядит так:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
if (requestCode == MY_REQUEST_CODE) {
if (resultCode == RESULT_OK) {
// do something useful
}
}
}