Я думаю, что лучший сценарий - открыть другое приложение поверх intent
сообщения.
Когда второе приложение завершит свою работу, на onDestroy
отправьте еще одно intent
для запуска первого приложения. У intent
должны быть правильные флаги, чтобы сохранить правильное состояние первого приложения.
Первое приложение
Intent intent = new Intent();
intent.setAction("custom.action");
MainActivity.this.startActivity(intent);
Файл манифеста:
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="custom.action" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
Второе приложение, целевая активность:
@Override
protected void onDestroy() {
Intent intent = new Intent();
intent.setComponent(new ComponentName("com.home.androiddemo", "com.home.androiddemo.MainActivity"));
intent.setAction("custom.android");
intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(intent);
// TODO pass necessary outcome
super.onDestroy();
}
Файл манифеста:
<activity
android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="custom.action" />
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>