同步和异步活动

任何人都可以帮我理解Android中的同步异步活动吗?

Android中的同步和异步活动到底意味着什么?

StartActivityStartSubActivityStartAcivityForResult是同步还是异步启动活动,还是它们可以以两种方式运行?

请解释,因为我已经阅读了很多文章,但未find任何适当的解释。

首先,Android上一次只能运行一个活动,因此您永远不会同时运行两个活动。 当您想要“发射并忘记”时,请使用startActivity() ,也就是说,您希望启动一个活动,但不希望它为您的活动返回一个值。 在这种情况下,新活动将开始,您的活动将暂停; 一旦用户返回您的活动,您最终可能会重新获得控制权。

当您从正在启动的活动中取消结果时,请使用startActivityForResult() 。 在这种情况下,调用活动应该覆盖onActivityResult() ,当启动的活动退出并返回给你(它使用setResult()设置的结果)时将调用它。

在这两种情况下,由于调用活动和被调用活动在同一个任务中 ,它在某种意义上是“同步的”(尽管我认为使用术语“同步”和“异步”在这种情况下可能会令人困惑)。 在被调用的活动完成之前,调用活动不会出现在屏幕上。

有用的阅读更多信息是:* http://developer.android.com/guide/topics/fundamentals/tasks-and-back-stack.html

– Bruno Oliveira(谷歌Android开发者关系部)