意图在安卓中是异步的。为什么它不能是同步调用?

4
我理解Intent的概念,但是有一件事我不明白,为什么Intent应该是异步消息调用呢?

几乎所有在Android中都是异步的。 - Alexey
为什么会这样?@Alexey - Murali krishna
我不知道你所说的“正常调用”是什么意思,也不知道你如何实现它。任何非同步的操作都是异步的定义。你想让你的设备在创建或读取Intent之前就冻结吗?不想吧?那么它必须是异步的。 - OneCricketeer
我指的是普通调用,这意味着同步调用。我的意思是,当您调用下一个活动时,该活动可能会冻结。如果发生这种情况,问题在哪里?@cricket_007 - Murali krishna
1个回答

3
为什么Intent应该是异步消息调用?
API调用是同步的,而基于Intent的调用是异步的。 API调用是编译时绑定,而基于Intent的调用是运行时绑定。 它基本上是一个被动的数据结构,保存了要执行的操作的抽象描述。
它是如何工作的?
Intent是异步消息,允许应用程序组件请求来自其他Android组件的功能。Intent允许您与同一应用程序的组件以及由其他应用程序提供的组件进行交互。例如,一个活动可以启动一个外部活动来拍照。
Intent是android.content.Intent类型的对象。您的代码可以将它们发送到Android系统,定义您要针对的组件。例如,通过startActivity()方法,您可以定义Intent应该用于启动一个活动。
Intent可以通过Bundle包含数据。接收组件可以使用这些数据。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接