Loading
Unfreeze dependencies for apps receiving broadcast
Currently unfreezeTemporarily() doesn't update oomadj of the target frozen process. If that frozen process calls into another frozen service or content provider, it fails. Async calls will be delayed, causing ANR. Sync calls will kill the latter unnecessarily. As it's heavy to recompute and propagate oomadj values of the impacted processes, those frozen processes are temporarily unfrozen to process the incoming broadcasts. The long term goal is to improve the oomadj logic and remove unfreezeTemporarily(). Bug: 272319219 Test: atest CachedAppOptimizerTest BroadcastQueueTest Test: manually verify broadcasts unfreeze apps and their bound services Change-Id: Ia584206a90ca9e4ada8d9c319a7ee103da8a4e4a