History log of /frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
9851d03819bd960b285f28bf12b8ffa3422c46e2 26-Jan-2015 Craig Mautner <cmautner@google.com> Stop logging service starts and stops.

Completes work on bug 18201239.

Change-Id: I80686351ac91e48bf113976a000b351b423d8dd2
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
455625e298204a27d3958eb56ff155f27562eec8 21-Jan-2015 Dianne Hackborn <hackbod@google.com> Work on issue #18201239: ANRs in com.google.process.gapps:

Reason: Executing service com.google.android.syncadapters.contacts
/.SyncHighResPhotoIntentService

Make the code more robust when destroying services, so that if
the nesting count gets out of sync we don't just hang.

Change-Id: If117d5ef242e7c148fd9576bd89a1a092583d6ad
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
cff1bbf46ce79e370b80298522b0c2e23f3bdccc 20-Jan-2015 Dianne Hackborn <hackbod@google.com> Fix issue #19020826: Including timing issues in ANR reason breaks clustering

Also improve service ANR debugging.

Change-Id: I2118ef2811ca3ba676c110639f58d5c21abfb8eb
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
66c4a824b9b11a47c7bd1bf858d92fe207409ab9 16-Jan-2015 Craig Mautner <cmautner@google.com> More debugging for bug 18201239.

Fixes bug 19045133.

Change-Id: I2ef2b8600278ed91df59db4acf4740dac970ee3a
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
9776ad41b900c6c7da0a3b6baf91b609be27f9b9 15-Jan-2015 Craig Mautner <cmautner@google.com> Debug for bug 18201239.

Change-Id: I06281bd76b8c1d887324d3efa39b6cb11c9e71ae
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
ab2df067fc9757f19061b968c53953ca90a4c384 07-Jan-2015 Dianne Hackborn <hackbod@google.com> Add new debug feature to track associations between processes. Also
add some debugging for spurious service ANRs.

Bug: 18201239
Change-Id: Icd43f35c696d71453e1d4deea855984b2d14b347
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
f85e7af4d009862fc799c7232ec5cf9e2dc9fa34 14-Oct-2014 Dianne Hackborn <hackbod@google.com> Fix issue #10034864: Define YouTube application as the preferred...

...handler for its Intents

Fix bug when a third party app is installed as an additional but
worse match for the intent.

Also raise up the limit for when we start printing logs about
overly large strict mode data.

And turn off the logs about services being created and destroyed,
since with the way things are using services these days these have
become way too spammy.

Change-Id: I8fe301dfd80fb4b70213cb7783b7c5426245278d
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
955d8d69ea6caabce1461dc25b339b9bf9dc61a6 08-Oct-2014 Dianne Hackborn <hackbod@google.com> Put in real "code" (aka marketing) name.

Change-Id: Idb3976edfae37293ed75cb5b869b4b42d8042bbe
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
7622a0f8e4198adf0aae5d4e167ee132b34f4cdb 30-Sep-2014 Dianne Hackborn <hackbod@google.com> Maybe fix issue #17700474: manta: high occurrence of device booted...

...but dev.bootcomplete flag is not set

Rework things to address a few issues I found:

- When the activity goes idle, the way we were handling finishing the
boot there was calling finishBooting() with the lock held, but it
shouldn't. We now dispatch that and turning on the screen together
in a separate message.

- Make sure we don't try to start the home activity until we have
reached the point of the system being ready and mBooting being set.
This ensures we don't do any work prematurely.

Change-Id: If30c1f287af73bc2164e7aadbe98022ae42cc5e7
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
cd97c96734ac00a6a800724fe5d8e81ee0ee134c 26-Sep-2014 Dianne Hackborn <hackbod@google.com> Fix issue #17574819: Chrome browser process is killed...

...in background due to dying renderer process

Completely turn this off, for now.

Change-Id: I028eefc9b7e627d29569ef72d9ab940ac5960c7c
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
ff072725e39b8c6928d6ca2d7e263d7d081a2288 24-Sep-2014 Dianne Hackborn <hackbod@google.com> Work on issue #17624121: Settings crash while launching on wiped device

Cleaner paths and better error reporting when a problem goes wrong
while binding an application. This gets rid of the (recently added)
error about removing a process that hasn't been killed, and cleanly
kills the process along with more detailed errors about where things
failed.

Change-Id: I710a209c14da1515929e6254396b793177eee115
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
d0e0154c1f0be7786f12aea60add7ed4fb7c4e6c 23-Sep-2014 Dianne Hackborn <hackbod@google.com> Merge "Maybe fix issue #17614177 APR: system process restarting due to infinite loop" into lmp-dev
25e1ecaabbde4741663c8e5a777d9df9b939572c 23-Sep-2014 Dianne Hackborn <hackbod@google.com> Maybe fix issue #17614177 APR: system process restarting due to infinite loop

Also try to get rid of a huge wtf we are seeing across a lot of devices
where we incorrectly change real states on a service that is restarting,
and get rid of one of the noisier boot logs in the package manager.

Change-Id: I2510b6fb082eac3f6168cbd57bc3b70ad006114d
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
c2f6f947b6f3ebc5df5ac0a3d2c9f959b9c5e6c5 22-Sep-2014 Dianne Hackborn <hackbod@google.com> Fix issue #17609716: Frequent crash in system_server (RT restarts)

There was some code here locking on the lock object instead of
the main activity manager lock...!!!

Change-Id: Ic85151fbef915f6fb8fd5ce3c1a7e9b810412cb6
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
cf456e3c225fa736914cca1f51eb5311fa16fb88 20-Sep-2014 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #17574819: Chrome browser process is killed in background..." into lmp-dev
0fe3c2565833914b7e30df1dc82e3e26fa6de978 20-Sep-2014 Dianne Hackborn <hackbod@google.com> Fix issue #17574819: Chrome browser process is killed in background...

...due to dying renderer process

Don't kill processes if they are bound to a service but not impacting
oom adjustment.

Change-Id: I1cc44e633feaeaad6e996b79a6cfd7b386c04095
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
365e4c38d58d38bb61d1fdd870346f2f594825fd 18-Sep-2014 Christoph Studer <chstuder@google.com> Remove FLAG_FOREGROUND_SERVICE on Service.stopForeground()

When services call Service.stopForeground(), remove
FLAG_FOREGROUND_SERVICE from the notification that was supplied
to Service.startForeground().

This enables services to post notifications that become user
dismissable when they switch to being a background service.

Restrict this to targetSdk=L apps to reduce the risk of breaking
existing apps.

Bug: 17551106
Change-Id: Iff8541e5bb2a23ad1fbc9ad80df5fd6eb683148b
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
24c98e8cf88f6edc3d5bdf2ce40a51f158f36884 15-Sep-2014 Dianne Hackborn <hackbod@google.com> A little more work on issue ##16907799.

I got distracted in the middle of it, and forget to finish
up with the test to not kill processes if they aren't using
an auto create binding.

Change-Id: Ieecfe97fa3208e50cb91ba94be2a8659d128b0de
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
465fa3963534e41ead0dce1273b71fd50c58c973 14-Sep-2014 Dianne Hackborn <hackbod@google.com> Fix issue #16907799: Processes containing bound services...

...are killed over eagerly.

When the current foreground activity is moving to the background,
it was briefly going through the CACHED_ACTIVITY state before the
correct LAST_ACTIVITY state, allowing its bound service processes
to be killed (because they went in to the cached list). To solve
this, as long as a process has stopping activities, it won't go
lower than LAST_ACTIVITY.

Also fixed a problem where we could put a process in CACHED_EMPTY
instead of CACHED_ACTIVITY_CLIENT. There were a number of cases
in the binding flow and also the client process state transitions
where we would not correctly updateing the bound client activity
state.

And add some sanity code so that if a process hosting a
service is killed, and a client process of that service is in the
cached state, we kill the client process. This avoids situations
where we can start thrashing around in the cached list because we
are restarting process for no reason -- since they will just
continue to be cached.

Finally, tune the process LRU list to allow twice as many cached
activity processes (from 8 to 16), so we can make better use of
the RAM we have available these days.

Change-Id: Ib0cdf78c321cbb035259fc9dd6ee27b5ba1f90c5
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
eddeb49a734a524347587e7654025c489fb6331e 09-Sep-2014 Adam Lesinski <adamlesinski@google.com> ActivityManager shouldn't return null for getCurrentUser

There was a race where ActivityManager would return null
for getCurrentUser() when switching between guest accounts.
This is because the Guest account was marked for deletion
while it was still active.

Bug:17290209

Change-Id: I224fb4b6836380e5acb7dbeb8f3343d74505f88a
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
4a8dddbf18fedb33bb2c725db489669a141e1d73 13-Aug-2014 Craig Mautner <cmautner@google.com> Clean up app following death when creating service

If an app has died, run through the cleanup before relaunching its
service.

Also a little simplifying refactor.

Fixes bug 16979752.

Change-Id: I376cbef2ea00fc626588386317f092cc6dea0bdc
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
409297da182267465adbc21cfb75a23e8d678117 11-Jul-2014 Dianne Hackborn <hackbod@google.com> Allow INTERACT_ACROSS_USERS for service access.

But only if the two users are in the same profile. Also
apply the same rule for the recently allowed interaction
across content providers.

The activity manager now keeps track of which users are in
the same profile group, and the handleIncomingUser function has
an option to allow a non-full caller to do the interaction
if the two users are in the same profile group.

Spread this joy all over the place.

Also turn off multi-user on Svelte devices.

Change-Id: I231484ea2a6bfccbb3cd51357d7a387bd75039ea
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
f7097a5b697fedb6976774e55a51471405a23c0e 13-May-2014 Dianne Hackborn <hackbod@google.com> Add kernel and native memory data to procstats.

We now collect memory use data in the kernel and native
application for aggregation in procstats. This should
allows us to do aggregated summaries of how memory use
is distributed across the system -- how much is free vs.
how much is in use.

Fix a bug in how we were tracking per-app version codes:
apps that used a shared user id to have multiple packages
run in the same process could get their version codes
cross-wired. Now we keep track of version codes in the
list of packages associated with a process.

Bumped the checkin version code to 5, so that we can
distinguish checkins that have this corrected data.

Also fix a bug in battery stats monitoring radio state.

Change-Id: I1c849f2df442df679a34ad7b0ca0c5870bfac8df
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
8b466c19d6306c508aeaa2ad349f8c3225f62f0e 30-May-2014 Dianne Hackborn <hackbod@google.com> am f6550f0a: Merge "More work on voice interaction visuals." into lmp-preview-dev

* commit 'f6550f0ab2fb1abae6f9d694c87ccba9bede57f4':
More work on voice interaction visuals.
20d94749043d0851f1da10c7749fd7eb13a35081 30-May-2014 Dianne Hackborn <hackbod@google.com> More work on voice interaction visuals.

There is now a special theme for voice interaction activities
to use, so they can be a panel that is better intergrated with
the rest of the voice interaction experience. This is still
not completely working, I have some hacks in the demo app to
get it right; I'll fix that in a future change.

Also improve VoiceInteractor to be retained across activity
instances, for things like rotation.

And bump up the number of concurrent broadcasts that are allowed
on non-svelte devices, since they can handle more and this makes
the boot experience better when dispatching BOOT_COMPLETED.

Change-Id: Ie86b5fd09b928da20d645ec2200577dee3e6889d
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
1015efb143b51a5d31f2f932528f295cfa1add1f 29-May-2014 Nicolas Prevot <nprevot@google.com> Merge "Making the content resolver work with result intents."
c6cf95c0f5f7250c65e40c441fe58d8cbfd114c9 29-May-2014 Nicolas Prevot <nprevot@google.com> Making the content resolver work with result intents.

prepareToLeaveUser is called if necessary on result intents.
Adding the targetUserId to grantUriPermissionFromIntentLocked
This allows the GET_CONTENT intent to work across profiles.

Change-Id: Id81280c23247aeda7ad56e34af9b12a6f3a00a3c
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
4b9d79c30eccb61645d98a4f0d49b7769e8c7ccc 22-May-2014 Amith Yamasani <yamasani@google.com> Fix singleUser attribute

Make it work correctly for singleton content providers.
Relax which apps can export singleton content providers.

Change-Id: I43d315c25ed76a876bfa6d5e0d1351bc19c9bdba
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
40c8725804f46c9d53f2815e0ee69e6cfb0152cc 20-Mar-2014 Dianne Hackborn <hackbod@google.com> batstats: fix wake lock tracking, service bug

- Fix bug I introduced in handling wake lock changes where
we weren't iterating over the new work sources correctly.
- Fix bug in ActiveServices that would wtf too much.
- Prepare to start tracking uptime in the battery history.

Change-Id: Ia94316be51bc6eab7b02f214a5c40c08e99cc3b1
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
f0f94d129b6eb3c48624e915898d86d4f2de59ff 18-Mar-2014 Dianne Hackborn <hackbod@google.com> Treat IME processes as hosting activities

When we stop using an IME process, we still treat that
process as if it is hosting activities (in the activity part
of the LRU list), to try to keep it around. This is intended
to help the experience of switching between IMEs, reducing
the chance of your previous IME process being killed and thus
requiring much more time to switch.

Change-Id: Ie5793fd9b40d980fa18f80246326511ed6ae0597
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
08c9db7363a45e2e86f3f69f52758c37775cea7e 19-Feb-2014 Craig Mautner <cmautner@google.com> am 6ed1c96b: am a1baf028: am 23ef1b5e: am 16ea3e6a: Merge "A background started service is removed from mStartingBackground when timeout. Fix is to make sure mStartingBackground is updated to remove one."

* commit '6ed1c96b7253d2590ffe339714bdcaf8c77217c0':
A background started service is removed from mStartingBackground when timeout. Fix is to make sure mStartingBackground is updated to remove one.
a1baf0288407c17737cf92bba5c7fccb8c8c55ed 19-Feb-2014 Craig Mautner <cmautner@google.com> am 23ef1b5e: am 16ea3e6a: Merge "A background started service is removed from mStartingBackground when timeout. Fix is to make sure mStartingBackground is updated to remove one."

* commit '23ef1b5e0b84e3bb726454b97846f91f2efad212':
A background started service is removed from mStartingBackground when timeout. Fix is to make sure mStartingBackground is updated to remove one.
eaf2ac464b1cd741d7d0fe700771b1b7c00ddb29 07-Feb-2014 Dianne Hackborn <hackbod@google.com> Battery stats: more events, fixes.

Add new history events for top application package and
foreground application packages.

Doing this involved a fair amount of improvement to history
events. The event code is now separated out to have "start"
and "finish" identifies, and we use that to now keep track
of which events are active. With that, when resetting the
stats, we can spit out all of the currently active events at
the front of the new history.

Also fixed some problems when I re-arranged the history delta
int bits that were conflicting with the packing of the battery
status bits. These packing structures are changed to work
together correctly.

Change-Id: Ic8b815060dd8a50ff4a0a209efc2e1044215cd88
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
6873e17d4b565aa1d4ea2a8f1ac261f517dcc2ff 14-Jan-2014 Dianne Hackborn <hackbod@google.com> am 305c61a1: am 3a8a8ddd: am 8c359bf4: am c174288d: Fix issue #12031685: Sticky Service Breakage in Android 4.4.1

* commit '305c61a1c6816549b225719518df5b29a17f0f42':
Fix issue #12031685: Sticky Service Breakage in Android 4.4.1
49782e46c0eb85a25ae2abcf80880c48dbab5aea 20-Dec-2013 Amith Yamasani <yamasani@google.com> am 9158825f: Move some system services to separate directories

* commit '9158825f9c41869689d6b1786d7c7aa8bdd524ce':
Move some system services to separate directories
9158825f9c41869689d6b1786d7c7aa8bdd524ce 22-Nov-2013 Amith Yamasani <yamasani@google.com> Move some system services to separate directories

Refactored the directory structure so that services can be optionally
excluded. This is step 1. Will be followed by another change that makes
it possible to remove services from the build.

Change-Id: Ideacedfd34b5e213217ad3ff4ebb21c4a8e73f85
/frameworks/base/services/core/java/com/android/server/am/ActiveServices.java