Вам нужно будет использовать startActivityForResult
в приложении 1.
Intent i = Intent.parseUri("App2://arg1=value&secondArgument=someValue", Intent.URI_INTENT_SCHEME);
i.addCategory(Intent.CATEGORY_BROWSABLE);
i.setComponent(null);
startActivityForResult(i, REQUEST_CODE);
Затем в упражнении в приложении 2 выполните операцию, а по завершении установите результат:
Intent intent = new Intent();
intent.putExtra( "key", value );
setResult(Activity.RESULT_OK, intent);
finish();
Это вызовет onActivityResult
в вашем первом приложении, и вы можете обработать намерение там:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
if (requestCode == REQUEST_CODE)
{
if (resultCode == RESULT_OK)
{
id = data.getExtras().getString("key");
}
}
}
Если ваше второе приложение является приложением AIR, вам, вероятно, понадобится ANE, чтобы справиться с этим, например, с помощью пользовательского действия.