У меня есть приложение, в котором я запускаю новое действие, и мне нужно иметь результат действия, прежде чем продолжить.
Я понимаю, что startActivityForResult является асинхронным / неблокирующим, и что я могу получить результат действия в обратном вызове onActivityResult.
Так что, я думаю, что я ищу, это лучший способ дождаться возвращения активности ...
Может быть, что-то подобное? Или есть лучший способ?
Функция запуска активности:
public String ActivityLauncher()
{
//Set up Intent
startActivityForResult(intent, 1);
while (mIsActivityDone == false)
{
Thread.Sleep(250);
}
//Continue with processing
String data = "<Data from Activity">
return data;
}
Обратный звонок:
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
//Pull out the data
mIsActivityDone = true;
}
Данные должны быть возвращены в вызывающую функцию более высокого уровня - вот почему мне нужно дождаться результата в функции ActivityLauncher.
Спасибо!