1

我需要获取调用Activity时创建的实例。startActivity()但是,startActivity()返回一个 void 值。

我想startActivity()不要等到Activity创建。

我是否有其他方法可以获取activity刚刚在调用 to 时创建的内容startActivity?或者,也许我可以自己创建一个Activity实例并将其注册到某个地方以便startActivity可以找到它。

4

1 回答 1

1

您要查看的活动是在您自己的应用程序中还是在其他应用程序中?

如果它们都是你的活动,那么做你想做的事情可能没问题,尽管活动应该保持分开。您可以考虑改用 Fragments,因为它们可以通过其父 Activity 相互“交流”。

如果它们不在您的应用程序中,那么您将无法获取另一个 Activity 实例,因为根据定义它位于另一个进程中。此外,Android 系统会阻止它,因为这将是一个很大的安全漏洞。

一般而言,我对尝试获取您自己的组件之外的某物的实例有点眯眼,除非它是系统中某物的一个实例。组件之间的通信应该通过 Intent、绑定的服务特性或内容 URI。传递实例会使您容易受到内存泄漏的影响。

于 2013-09-18T23:41:41.530 回答