Commit Graph

1476 Commits

Author SHA1 Message Date
Dianne Hackborn
6cc372b16a am 0af9fb52: am 236afa0d: Merge "Fix issue #10747324: adb install hangs" into klp-dev
* commit '0af9fb526b67ddb2d7f55dabef4379f46b622d57':
  Fix issue #10747324: adb install hangs
2013-09-13 17:30:53 -07:00
Craig Mautner
5bb9c2edb7 am f6f36a95: am 540421ba: Merge "When launching home activity, make sure it is top." into klp-dev
* commit 'f6f36a95a238381740a92263a76af790bc93ae37':
  When launching home activity, make sure it is top.
2013-09-13 17:30:36 -07:00
Dianne Hackborn
1cd9a73ac0 am f3b4cf7d: am 28eeb420: Merge "Implement #10749688: Improve low memory reporting" into klp-dev
* commit 'f3b4cf7d01b68418dd652e201868d140de081bd8':
  Implement #10749688: Improve low memory reporting
2013-09-13 17:30:31 -07:00
Christopher Tate
9b6c9a1592 am fcda3283: am 7560c256: Merge "Add hidden API for querying available \'home\' activities" into klp-dev
* commit 'fcda3283d27f8dfaa812fb735af43eea2e077c64':
  Add hidden API for querying available 'home' activities
2013-09-13 17:22:45 -07:00
Dianne Hackborn
0af9fb526b am 236afa0d: Merge "Fix issue #10747324: adb install hangs" into klp-dev
* commit '236afa0d8b3e146c97801bd72a224b0908cd93f9':
  Fix issue #10747324: adb install hangs
2013-09-13 17:16:13 -07:00
Craig Mautner
f6f36a95a2 am 540421ba: Merge "When launching home activity, make sure it is top." into klp-dev
* commit '540421ba984655b07f2b70bae1db9ae1bc3052aa':
  When launching home activity, make sure it is top.
2013-09-13 17:15:58 -07:00
Dianne Hackborn
f3b4cf7d01 am 28eeb420: Merge "Implement #10749688: Improve low memory reporting" into klp-dev
* commit '28eeb42012018bfa3cffc77e9a970e8f5c13f70b':
  Implement #10749688: Improve low memory reporting
2013-09-13 17:15:23 -07:00
Christopher Tate
fcda3283d2 am 7560c256: Merge "Add hidden API for querying available \'home\' activities" into klp-dev
* commit '7560c256ecacb5fa3904ec5c957e88331328f38b':
  Add hidden API for querying available 'home' activities
2013-09-13 17:14:00 -07:00
Dianne Hackborn
236afa0d8b Merge "Fix issue #10747324: adb install hangs" into klp-dev 2013-09-14 00:04:43 +00:00
Dianne Hackborn
2e46bb5d88 Fix issue #10747324: adb install hangs
Dumb typo was clearing the wrong service array, causing
us to sometimes forget we were launching a service.

Change-Id: Ie1aba0e07d19e85a104a5985e3cead5f28a0556a
2013-09-13 17:01:26 -07:00
Craig Mautner
540421ba98 Merge "When launching home activity, make sure it is top." into klp-dev 2013-09-13 23:33:17 +00:00
Christopher Tate
b649443b3c am a5ec4d4b: am 5daf77d0: am ac39c604: Merge "Fix formatting in clearApplicationUserData exception message."
* commit 'a5ec4d4b54440dd7f56661ebf602498d2b08526c':
  Fix formatting in clearApplicationUserData exception message.
2013-09-13 16:11:11 -07:00
Dianne Hackborn
28eeb42012 Merge "Implement #10749688: Improve low memory reporting" into klp-dev 2013-09-13 23:06:07 +00:00
Dianne Hackborn
8e69257a9c Implement #10749688: Improve low memory reporting
This significantly reworks the logging we do when
all cached processes are killed:

- We now collect the list of processes in-place so we
  have a snapshot of exactly when the low memory situation
  happened.
- In that snapshot we include the key process state: oom
  adj, proc state, adj reasons.
- The report then asynchronously collects pss information
  for those processes.
- The ultimate data printed to the log looks like a mix
  between the "dumpsys meminfo" and "dumpsys activity"
  output.  This code no longer uses "dumpsys meminfo"
  itself, so some of that data is no longer included,
  in particular pss organized by allocation type.

In doing this, I realized that the existing code that is
supposed to run "procstats" is not currently working.  And
at that point I realized, really, when we are collecting
this pss data we'd really like to include all those native
processes using ghod-only-knows how much RAM.  And guess
what, we have a list of processes available in
ProcessCpuTracker.

So we now also collect and print information for native
processes, and we also do this for "dumpsys meminfo" which
really seems like a good thing when we are printing summaries
of all pss and such.

I also improved the code for reading /proc/meminfo to be
able to load all the interesting fields from there, and
am now printing that as well.

Change-Id: I9e7d13e9c07a8249c7a7e12e5433973b2c0fdc11
2013-09-13 16:02:01 -07:00
Craig Mautner
a82aa09ba3 When launching home activity, make sure it is top.
Because recents sits on the same stack as launcher it can sometimes be
above launcher. When we were launching home activity because the flag
told us to we would sometimes launch recents instead. This fix makes
sure that the home activity is on the top when it is supposed to be
launched next.

Previously this was fixed by having recents move itself to the back
of the stack after it launched an activity (b/9750207 and ag/336019).
But that solution caused the AppTransition to be set to
TRANSIT_TASK_TO_BACK which left the SOFT_INPUT_IS_FORWARD_NAVIGATION
flag unset. This in turn caused IMEs to remain unlaunched when
returning from recents (b/10240567).

Fixes bug 10240567.

Change-Id: I35c6619af0e68d0e6d9ab87cad06ea7c27e11e27
2013-09-13 15:46:51 -07:00
Christopher Tate
a5ec4d4b54 am 5daf77d0: am ac39c604: Merge "Fix formatting in clearApplicationUserData exception message."
* commit '5daf77d00d0fd93f24f9dc6013ee838411e9adf9':
  Fix formatting in clearApplicationUserData exception message.
2013-09-13 15:05:31 -07:00
Dianne Hackborn
cd71cf1738 am bab31979: am 9210bc85: Implement #10744011: Serialize running of background services
* commit 'bab3197988bd95629d74541ab62f3b7dc1b247ce':
  Implement #10744011: Serialize running of background services
2013-09-13 13:27:17 -07:00
Christopher Tate
a2a0850de8 Add hidden API for querying available 'home' activities
To support improved home-app selection UX in Settings.

Bug 9958444

Change-Id: I106090784618bf7bea6fce28f4f9b9fb8480d310
2013-09-13 12:16:00 -07:00
Dianne Hackborn
9210bc8554 Implement #10744011: Serialize running of background services
Added some code to the activity manager to keep track of
services that are launching and limit the number that can
be launched concurrently.  This only comes into play under
specific circumstances: when the service launch is a background
request (so timing is not important) and its process is not
already running at a high priority.

In this case, we have a list of services that are currently
launching and when that gets too big we start delaying the
launch of future services until currently launching ones are
finished.

There are some important tuning parameters for this: how many
background services we allow to launch concurrently (currently
1 on low-ram devices, 3 on other devices), and how long we
wait for a background service to run before consider it to be
a more long-running service and go on to the next pending
launch (currently set to 15 seconds).

Also while in here, did some cleanup of the service code:

- A little refactoring to make per-user data cleaner.
- Switch to ArrayMap.

Change-Id: I09f372eb5e0f81a8de7c64f8320af41e84b90aa3
2013-09-13 09:58:48 -07:00
Alex Klyubin
03ea04715c Fix formatting in clearApplicationUserData exception message.
Before:
  4539 does not have permission:android.permission.CLEAR_APP_USER_DATA to clear datafor process:com.android.chrome
After:
  PID 4539 does not have permission android.permission.CLEAR_APP_USER_DATA to clear data of package com.android.chrome

Change-Id: Ic466decb050e4fa7f3fee4098c4f2abdc6cedf5c
2013-09-13 09:51:42 -07:00
Adam Skory
a7cda03a47 resolved conflicts for merge of 7d17de35 to master
Conflicts:
	core/res/res/values/public.xml

Change-Id: I14b4e332be7ef27e76a2773a504cb942bd0642ef
2013-09-11 16:16:19 +01:00
Adam Skory
86d9c457de Merge "Revert services assist context in KitKat" into klp-dev 2013-09-11 11:27:50 +00:00
Adam Skory
7140a25f01 Revert services assist context in KitKat
Reverts extension to assist context API to query
foreground services for assist context data.

Also hides Intent.ACTION_VOICE_ASSIST because
nobody's actually using it yet.

Bug: 10461702
Change-Id: Idf6836adc659b434e11ebb2b98e8b814c94a7227
2013-09-11 12:04:58 +01:00
Jeff Brown
279f3cdf70 am 9993f8ff: am dc6fd0a2: Merge "Propagate input ANR reason to activity manager log." into klp-dev
* commit '9993f8ff24718553c05872d9f13f4114701b3428':
  Propagate input ANR reason to activity manager log.
2013-09-10 16:58:06 -07:00
Jeff Brown
dc6fd0a20a Merge "Propagate input ANR reason to activity manager log." into klp-dev 2013-09-10 23:52:53 +00:00
Jeff Brown
bd181bb832 Propagate input ANR reason to activity manager log.
Make it a little easier to diagnose input dispatch timeouts by
providing the detailed reason as the ANR annotation in the log.

Bug: 10689184
Change-Id: Ie18fd9ad066b0673d1f57c030e027ad0085f4650
2013-09-10 16:44:24 -07:00
Craig Mautner
3f339d8193 am 88cfdae6: am cdd82540: Merge "When waiting for activity to finish don\'t reset" into klp-dev
* commit '88cfdae667bd85931c1bf81781a54472a8fe3ac7':
  When waiting for activity to finish don't reset
2013-09-10 15:17:23 -07:00
Craig Mautner
cdd82540f2 Merge "When waiting for activity to finish don't reset" into klp-dev 2013-09-10 22:11:58 +00:00
Craig Mautner
5c494547af When waiting for activity to finish don't reset
In cases where the client is waiting for an activity to launch
(startActivityMayWait()) it is a bad idea to clear
ActivityRecord.displayStartTime when going into the pause state. If
displayStartTime is cleared before the activity is displayed,
the client will never be released.

This fix keeps pause from clearing displayStartTime if any client
is waiting for the activity to be displayed.

Fixes bug 10095558. But not a permanent fix, startActivityMayWait()
should not be called by any production code.

Change-Id: I7cbdcb04256f4a26233867c52aedd3bc4151adc3
2013-09-10 07:39:51 -07:00
Craig Mautner
72a533adac am e2b8bd72: am 16c32207: Merge "Do not enter resumeTopActivity recursively." into klp-dev
* commit 'e2b8bd72bd325de9c258fa9c8ef4143420796614':
  Do not enter resumeTopActivity recursively.
2013-09-09 15:02:44 -07:00
Craig Mautner
16c3220734 Merge "Do not enter resumeTopActivity recursively." into klp-dev 2013-09-09 21:55:20 +00:00
Dianne Hackborn
9542acab2f am d8c06fab: am 80213add: Merge "Fix issue #10671878: Proc stats needs to remove old data structures" into klp-dev
* commit 'd8c06fab80d4fa6c2eeef697bdfdbaff88b3d934':
  Fix issue #10671878: Proc stats needs to remove old data structures
2013-09-09 14:14:36 -07:00
Dianne Hackborn
80213addda Merge "Fix issue #10671878: Proc stats needs to remove old data structures" into klp-dev 2013-09-09 20:37:02 +00:00
Craig Mautner
e5273b422e Do not enter resumeTopActivity recursively.
Changes for translucent activity were causing activities to be
launched twice due to a recursive call into resumeTopActivity.
Putting the translucent action onto a handler removes the recursivity
and fixes the multiple launch problem.

Fixes bug 10556969.

Change-Id: I2bb53cd555b0aaf093ab35db2859acb10b58211e
2013-09-09 12:57:47 -07:00
Eric Rowe
001ebe0ec6 am a130a316: am e13aa0ba: Merge "Add PID to ANR logcat printout." into klp-dev
* commit 'a130a3161432bd4e2f267d3de43c75c9a87c667a':
  Add PID to ANR logcat printout.
2013-09-09 11:36:30 -07:00
Eric Rowe
4e94f93a7d Add PID to ANR logcat printout.
Bug: 10568033
Change-Id: I7131520c887df1f897b7a135b04509bdad9bdb88
2013-09-09 10:34:12 -07:00
Dianne Hackborn
be4c1d74a7 Fix issue #10671878: Proc stats needs to remove old data structures
We now keep track of which process and service states are actively
in use, and remove any that are not in use during a commit.  The
activity manager needed to be tweaked to report this data, and ensure
it does not try to operate on one of these structures when not in
use.

Also some other fixes:

- We now keep track of process names associated with services, for
display in the UI.
- Keep track of total run time for each service, also for UI.
- The parceled format is more efficient, not storing duplicates of
process/package names, and writing times as ints when possible.
- Reduced commit period from 1 day to 12 hours, so that our UI can
be a little closer at its attempt to display the stats over 1 day.

Change-Id: Ifeda0ffe963a7b49d8eb2a3f6923f3a5e71a4e43
2013-09-09 09:49:52 -07:00
Dianne Hackborn
2949d1af93 am 5e615ee5: am a4796d51: Merge "Fix to show correct duration." into klp-dev
* commit '5e615ee5ad4fb02cec2c328555cf5fb4fc1ea424':
  Fix to show correct duration.
2013-09-06 13:46:18 -07:00
Dianne Hackborn
d6d54a4694 Fix to show correct duration.
Change-Id: I1032d90d5b7bf39006b20f3374104421dcc53305
2013-09-06 11:46:43 -07:00
Dianne Hackborn
6e8bd7234b am de93f124: am d67f18cf: Merge "Fix crash when dump() is called on ReceiverList" into klp-dev
* commit 'de93f124bc6c76cdc75c980cb9e4b261db1ac040':
  Fix crash when dump() is called on ReceiverList
2013-09-05 15:23:09 -07:00
Evans Thomas
880e5d486e Fix crash when dump() is called on ReceiverList
Bug: 9750621
Change-Id: Ie203bc008747cd2def5839e64b27a2f98dbc6950
2013-09-04 21:10:12 -07:00
Dianne Hackborn
1703c54a0e am 021a138b: am 8144585c: Merge "Fix issue #10422349: Limit/change the battery history data in batterystats" into klp-dev
* commit '021a138bdc0a8d1561cd7a429936afb8983c68b0':
  Fix issue #10422349: Limit/change the battery history data in batterystats
2013-09-04 18:32:16 -07:00
Dianne Hackborn
49021f5f79 Fix issue #10422349: Limit/change the battery history data in batterystats
Don't include history in real checkins; have a new compact option
for bug reports.

Change-Id: I077f9218b365154f6bae9cc685c2c6b378e0283a
2013-09-04 18:03:40 -07:00
Dianne Hackborn
353f12d915 am f9be242a: am 3cd28adc: Merge "Fix issue #10427108: Google+ has long running process" into klp-dev
* commit 'f9be242afa3c72a95538205b2cdd690f6c4174f1':
  Fix issue #10427108: Google+ has long running process
2013-09-04 13:26:20 -07:00
Dianne Hackborn
3cd28adc5d Merge "Fix issue #10427108: Google+ has long running process" into klp-dev 2013-09-04 20:22:27 +00:00
Adam Skory
d3effc3941 am 1b6d0891: am 11254ade: Merge "Add provideAssistData attr to public.xml" into klp-dev
* commit '1b6d08916c88827839416afd2ac264d422c469e7':
  Add provideAssistData attr to public.xml
2013-09-04 05:27:10 -07:00
Adam Skory
16731d4dc0 Add provideAssistData attr to public.xml
http://ag/323631 added the provideAssistData
attribute to the Service manifest tag.

It did not, however, add that attribute to
public.xml - making it impossible to actually
build a service that defines said tag.

So, add it.

Now that the attribute is where it should be,
restore @link notation to ServiceInfo.java
without breaking the offline docs build
( see http://ag//340279 ).

Also, make some log warnings related to
providing assist data slightly more verbose.

Bug: 10573008
Change-Id: Ie2bcb411c182d69738a2fa4a74de3171b9b9c455
2013-09-04 12:30:47 +01:00
Dianne Hackborn
ae36b236d2 Fix issue #10427108: Google+ has long running process
There was a bug in counting the number of starting services
in a process that would cause it to count too many (it would
increment at any state change while the service is started, not
just when starting/stopping).

Also reduce dumpsys output -- only print summaries for old
data.  There is probably no utility in printing the long details
of all that data.

Change-Id: I1c1e901b0214c01eb7d071f23166fc6f3702ca67
2013-09-03 18:12:53 -07:00
Craig Mautner
b1d0129c80 am 583e8f25: am 59f6b510: Merge "Insert home task into history when sending to back." into klp-dev
* commit '583e8f2528346d2bc43a8b6b693dc6cfafd8d8d1':
  Insert home task into history when sending to back.
2013-09-03 14:12:48 -07:00
Craig Mautner
c8143c623d Insert home task into history when sending to back.
- There is an assumption that moving a task to the back moves it
behind the home activity. This fix ensures that the home activity
will be launched by some activity before the task that has been
moved to the back.

- Convert "private final" declarations to private only.

- Convert container tests for size()==0 to isEmpty().

- Remove unused variable.

Fixes bug 10228536.

Change-Id: I51741ee7a09652e27afffcc50c14953bf0aa27ea
2013-09-03 13:14:57 -07:00