android.content.ComponentCallbacks |
Known Indirect Subclasses |
The set of callback APIs that are common to all application components
(
Activity
,
Service
,
ContentProvider
, and
Application
).
Note:
You should also implement the
ComponentCallbacks2
interface, which provides the
onTrimMemory(int)
callback to help your app manage its memory usage more
effectively.
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
Called by the system when the device configuration changes while your
component is running.
|
||||||||||
|
This is called when the overall system is running low on memory, and
actively running processes should trim their memory usage.
|
Called by the system when the device configuration changes while your component is running. Note that, unlike activities, other components are never restarted when a configuration changes: they must always deal with the results of the change, such as by re-retrieving resources.
At the time that this function has been called, your Resources object will have been updated to return resource values matching the new configuration.
For more information, read Handling Runtime Changes .
newConfig | The new device configuration. |
---|
This is called when the overall system is running low on memory, and actively running processes should trim their memory usage. While the exact point at which this will be called is not defined, generally it will happen when all background process have been killed. That is, before reaching the point of killing processes hosting service and foreground UI that we would like to avoid killing.
You should implement this method to release any caches or other unnecessary resources you may be holding on to. The system will perform a garbage collection for you after returning from this method.
Preferably, you should implement
onTrimMemory(int)
from
ComponentCallbacks2
to incrementally unload your resources based on various
levels of memory demands. That API is available for API level 14 and higher, so you should
only use this
onLowMemory()
method as a fallback for older versions, which can be
treated the same as
onTrimMemory(int)
with the
TRIM_MEMORY_COMPLETE
level.