我在某处读到广播接收器在与应用程序不同的进程中运行,因此它有一个自己的堆。现在,如果在广播接收器中我从我的应用程序启动一个活动,它会在应用程序的进程中运行还是仍在广播接收器的进程中?
这个问题的答案是否也适用于本机堆(pre-honeycomb API)?
想知道,因为当我收到推送通知时,我必须启动一个内存昂贵的活动/屏幕,如果我处于其他一些内存昂贵的活动的中间,在应用程序中,它可能会导致内存不足错误。但是如果它是一个单独的堆(更具体地说 - 本机堆,因为内存消耗来自位图并且我正在为 API pre-honeycomb 开发)我不必担心它。
注意“读某处”是指:为什么这么多内存? 尼古拉·乔尼 (Nikolay Chorniy) 的帖子
“我曾经有一个棘手的解决方法来避免 OutOfMemoryError。我注册了一个接收器,以便它在不同的进程上运行......”