0

У меня есть два приложения. В первом активном действии приложения он вызывает startActivityForResult() для запуска основного действия второго приложения. Я знаю, что могу отправить результат через Intent из основного действия второго приложения.Результат возврата от различной активности, кроме активности приема

Но для какого-то случая, если основное действие второго приложения запускает другое действие и завершает основное действие, то как я могу отправить результат в основное действие первого приложения из другого действия другого приложения?

ответ

0

Предположим, что у вас есть три действия - A в первом приложении и B и C во втором приложении.

Я вижу два возможных сценария:

  1. СЦЕПЛЕНИЯ результата - A начинается для результата B начинается для результата C. Результат от C доставляется в B, B поставляет его в результате A.
  2. Использование Intent s непосредственно - не начинайте B для получения результата, но используйте явно Intent s, чтобы вернуть результат A. Это означает, что вы должны установить A 's режим запуска до singleTop и использовать соответствующие флаги, чтобы убедиться, что вы не закончите с несколькими экземплярами активности. Вы также можете стрелять Intent s не непосредственно в A, а в BroadcastReceiver, который будет обрабатывать их соответственно.
+0

Моя проблема в B Я не могу запустить C для получения результата. Мне нужно закончить B и начать C. И от C мне нужно отправить результат A. Также я не могу сделать A как единый экземпляр. Я ищу, если есть какой-либо способ, я могу отправить результат непосредственно из C в A без BroadcastReceiver. – Gulshan

+1

Я бы сказал, нет. Единственный способ общения между компонентами - «Intent's». Они обрабатываются либо активностью, либо «BroadcastReceiver». –

+0

Пожалуйста, дайте нам лучшее представление о том, что вам нужно, потому что с помощью Intent вы можете решить свою проблему. – Robert

Смежные вопросы