Commit Graph

338 Commits

Author SHA1 Message Date
Dianne Hackborn
e746f03c6c resolved conflicts for merge of 53686433 to master
Change-Id: I27004dc464f5771d3205ae5757c6eccc5b16854d
2010-09-13 16:56:10 -07:00
Dianne Hackborn
53686433a9 am 7e9f4eb2: Track client requests through location manager.
Merge commit '7e9f4eb2608148436cef36c9969bf8a599b39e72' into gingerbread-plus-aosp

* commit '7e9f4eb2608148436cef36c9969bf8a599b39e72':
  Track client requests through location manager.
2010-09-13 14:34:22 -07:00
Dianne Hackborn
7e9f4eb260 Track client requests through location manager.
This fixes a problem where applications could ask the location
manager to do very heavy-weight things (like...  say... update
location every minute), which would get accounted against the
system instead of the application because ultimately it is the
system making the heavy calls (wake locks, etc).

To solve this, we introduce a new class WorkSource representing
the source of some work.  Wake locks and Wifi locks allow you
to set the source to use (but only if you are system code and thus
can get the permission to do so), which is what will be reported
to the battery stats until the actual caller.

For the initial implementation, the location manager keeps track
of all clients requesting periodic updates, and tells its providers
about them as a WorkSource param when setting their min update time.
The network location provider uses this to set the source on the
wake and wifi locks it acquires, when doing work because of the
update period.

This should also be used elsewhere, such as in the GPS provider,
but this is a good start.

Change-Id: I2b6ffafad9e90ecf15d7c502e2db675fd52ae3cf
2010-09-13 14:20:48 -07:00
Brad Fitzpatrick
0b29554188 am 37fc8cc7: am b724d251: Merge "Enable strictmode logging in system_server & add a lock." into gingerbread
Merge commit '37fc8cc7b87133eddacaeab60cabefaf4a7b9bdd'

* commit '37fc8cc7b87133eddacaeab60cabefaf4a7b9bdd':
  Enable strictmode logging in system_server & add a lock.
2010-09-10 15:07:20 -07:00
Brad Fitzpatrick
37fc8cc7b8 am b724d251: Merge "Enable strictmode logging in system_server & add a lock." into gingerbread
Merge commit 'b724d2519a900744a477bd57df6a2f8703c87e72' into gingerbread-plus-aosp

* commit 'b724d2519a900744a477bd57df6a2f8703c87e72':
  Enable strictmode logging in system_server & add a lock.
2010-09-10 14:08:58 -07:00
Brad Fitzpatrick
1e02d36b0f Enable strictmode logging in system_server & add a lock.
We weren't logging strictmode violation in the system_server process
in non-user builds (only system apps), even though the rest of the
strictmode logging supports it.

Also add a missing lock in ActivityManagerService.

Change-Id: If2af96a7e4fdde604a647b836097f0029ef1334b
2010-09-10 09:19:50 -07:00
Dianne Hackborn
203e9529c5 resolved conflicts for merge of 62d005ec to master
Change-Id: I552d7adffe70a2bd94113ffb70cdc3e625fca0bd
2010-09-09 23:06:27 -07:00
Dianne Hackborn
62d005ec94 am a7d868d4: Merge "Add toast when an app intercepts the launch of another app." into gingerbread
Merge commit 'a7d868d4f99dfaf85e13498210aecf1ad8efd859' into gingerbread-plus-aosp

* commit 'a7d868d4f99dfaf85e13498210aecf1ad8efd859':
  Add toast when an app intercepts the launch of another app.
2010-09-09 21:34:44 -07:00
Dianne Hackborn
0dad364adb Add toast when an app intercepts the launch of another app.
The activity manager looks for cases where one app launches immediately
after another.  If this happens, a brief toast is shown telling the user
when app is actually running and what was originally starting.

Change-Id: If94cf5bd393dd0bc0f09789dae044fde1386c481
2010-09-09 21:25:35 -07:00
Dianne Hackborn
467e8e1332 am 5fdacb8a: am ee455f5a: Merge "People holding partial wake locks now get blamed for CPU usage." into gingerbread
Merge commit '5fdacb8a2818136218afdea4308ad1b10049a201'

* commit '5fdacb8a2818136218afdea4308ad1b10049a201':
  People holding partial wake locks now get blamed for CPU usage.
2010-09-08 14:38:20 -07:00
Dianne Hackborn
5fdacb8a28 am ee455f5a: Merge "People holding partial wake locks now get blamed for CPU usage." into gingerbread
Merge commit 'ee455f5a9572bc0d23c3328f6c22da91dc109a50' into gingerbread-plus-aosp

* commit 'ee455f5a9572bc0d23c3328f6c22da91dc109a50':
  People holding partial wake locks now get blamed for CPU usage.
2010-09-08 14:34:41 -07:00
Dianne Hackborn
0d903a84d0 People holding partial wake locks now get blamed for CPU usage.
For the duration of the wake lock, 50% of all CPU usage is now
accounted against the app(s) holding partial wake locks, evenly
distributed between them.  This is only while the device is on
battery and screen off.

Change-Id: I3e5c978b792b6ef17bf8540705bfe8343dadd464
2010-09-08 12:41:24 -07:00
Dianne Hackborn
004abb1223 resolved conflicts for merge of 3d7d3690 to master
Change-Id: I1d1d7a448b3ae8a86600addfa75f2448a98327bf
2010-09-03 14:07:25 -07:00
Dianne Hackborn
3d7d3690de am e25b4bc7: Merge "These are not ready to be exposed. Also rename them to be better." into gingerbread
Merge commit 'e25b4bc76fef584b38ce4e72f919fba119bdfa99' into gingerbread-plus-aosp

* commit 'e25b4bc76fef584b38ce4e72f919fba119bdfa99':
  These are not ready to be exposed.  Also rename them to be better.
2010-09-03 13:26:30 -07:00
Dianne Hackborn
482566ed5c These are not ready to be exposed. Also rename them to be better.
Change-Id: I7c234144497084b7769f8c46761b7d74d1c583d5
2010-09-03 12:51:28 -07:00
Dianne Hackborn
1bfdac8c6d am 3f124cc5: am 22cd420b: Merge "Improve debug output when an ANR happens." into gingerbread
Merge commit '3f124cc5ec31024acac057d0f848125f8da5e905'

* commit '3f124cc5ec31024acac057d0f848125f8da5e905':
  Improve debug output when an ANR happens.
2010-08-31 19:02:02 -07:00
Dianne Hackborn
3f124cc5ec am 22cd420b: Merge "Improve debug output when an ANR happens." into gingerbread
Merge commit '22cd420bfa431b4ad55e699afadf109dcc54f201' into gingerbread-plus-aosp

* commit '22cd420bfa431b4ad55e699afadf109dcc54f201':
  Improve debug output when an ANR happens.
2010-08-31 18:58:47 -07:00
Dianne Hackborn
6b1afebdac Improve debug output when an ANR happens.
- Collect data at better times.
- Collect per-thread CPU usage as soon as possible after the ANR, and print
  in log.
- Based on new per-thread CPU usage, limit the number of processes we
  collect stacks from to not include inactive not interesting procs.
- Improve the way ProcessStats compute and reports its data.

Change-Id: I12b17fb47d593d175be69bb792c1f57179bf4fdf
2010-08-31 18:51:27 -07:00
Daniel Sandler
44af754cf0 am d02bdaab: Remove experimental immersive mode support. DO NOT MERGE
Merge commit 'd02bdaab495641ab50e2123fdfd99a819cc40540' into gingerbread-plus-aosp

* commit 'd02bdaab495641ab50e2123fdfd99a819cc40540':
  Remove experimental immersive mode support. DO NOT MERGE
2010-08-27 20:00:29 -07:00
Daniel Sandler
d02bdaab49 Remove experimental immersive mode support. DO NOT MERGE
Bug: 2949215

Change-Id: I7d998ef571ef7e149bb96261430e92150b80b77d
2010-08-27 22:57:39 -04:00
Dianne Hackborn
c8f8497b9c resolved conflicts for merge of 66d633d2 to master
Change-Id: I6c38d7c4d127954dfca17082215c587a3cd4a586
2010-08-25 23:14:44 -07:00
Dianne Hackborn
66d633d208 am 3003a017: Merge "Don\'t retain global ref to last inflated context." into gingerbread
Merge commit '3003a017d312a55e3804d6cf4a80044b1f1d7993' into gingerbread-plus-aosp

* commit '3003a017d312a55e3804d6cf4a80044b1f1d7993':
  Don't retain global ref to last inflated context.
2010-08-25 22:02:18 -07:00
Dianne Hackborn
7e269644fc Don't retain global ref to last inflated context.
Also rework URI permission granting to support upcoming
clipboard use.

Change-Id: I9842920350955531c5a511c2ecc5215e8c783343
2010-08-25 21:50:54 -07:00
Dianne Hackborn
917d88213e am fde7fdd3: am 50395e80: Merge "Fix a fun bug with multiple service bindings from an activity." into gingerbread
Merge commit 'fde7fdd38d45e6bdb12cba9917a23d18e9f3457c'

* commit 'fde7fdd38d45e6bdb12cba9917a23d18e9f3457c':
  Fix a fun bug with multiple service bindings from an activity.
2010-08-25 16:40:55 -07:00
Dianne Hackborn
fde7fdd38d am 50395e80: Merge "Fix a fun bug with multiple service bindings from an activity." into gingerbread
Merge commit '50395e80718e77d27ec5e2d474b255e05de68d82' into gingerbread-plus-aosp

* commit '50395e80718e77d27ec5e2d474b255e05de68d82':
  Fix a fun bug with multiple service bindings from an activity.
2010-08-25 16:33:57 -07:00
Dianne Hackborn
43d9ac81f7 Fix a fun bug with multiple service bindings from an activity.
There was a flaw in the service management, when the same activity
is doing a bindService() for the same service IBinder.  In this case
the activity would correctly keep a list of all generated connections,
however some other data structures would assume there is only one
connection per IBinder, and thus only remember the last.

When that last connection was unbound, the service would be destroyed
since it thought there were no more connections.  Then when the
activity was finished, it would try to destroy the service again and
end up with an ANR because the service was already gone and would
not respond.

Change-Id: I59bde38bc24e78147b90b0a7cd525c2a1d20489f
2010-08-25 15:09:17 -07:00
Dianne Hackborn
103bff317b am 5474b0f8: am 39792d22: Fix bugs with granting permissions through onNewIntent().
Merge commit '5474b0f8603ee66413c3e44600ca46f162f3089e'

* commit '5474b0f8603ee66413c3e44600ca46f162f3089e':
  Fix bugs with granting permissions through onNewIntent().
2010-08-24 09:01:54 -07:00
Dianne Hackborn
37444f4239 am d172594e: am cf6d2a1d: Merge "Fix issue #2845673: android:exported="false" is not obeyed" into gingerbread
Merge commit 'd172594e3a1e25f1f2c190e99421cb7d4963389b'

* commit 'd172594e3a1e25f1f2c190e99421cb7d4963389b':
  Fix issue #2845673: android:exported="false" is not obeyed
2010-08-21 09:34:43 -07:00
Dianne Hackborn
5474b0f860 am 39792d22: Fix bugs with granting permissions through onNewIntent().
Merge commit '39792d2262352ae775091876d5488d2412a2ff92' into gingerbread-plus-aosp

* commit '39792d2262352ae775091876d5488d2412a2ff92':
  Fix bugs with granting permissions through onNewIntent().
2010-08-20 11:53:29 -07:00
Dianne Hackborn
39792d2262 Fix bugs with granting permissions through onNewIntent().
It would grant the permission to the temporary ActivityRecord,
not the real one, so it never got cleaned up.

Also allow granting of permissions to services because...  well,
it would be really really useful.  And it introduces some
refactoring that we'll need to support cut/paste.

Change-Id: If521f509042e7baad7f5dc9bec84b6ba0d90ba09
2010-08-20 11:50:00 -07:00
Dianne Hackborn
d172594e3a am cf6d2a1d: Merge "Fix issue #2845673: android:exported="false" is not obeyed" into gingerbread
Merge commit 'cf6d2a1de274e9a4156b12be811a180eb36412ab' into gingerbread-plus-aosp

* commit 'cf6d2a1de274e9a4156b12be811a180eb36412ab':
  Fix issue #2845673: android:exported="false" is not obeyed
2010-08-18 17:08:36 -07:00
Dianne Hackborn
b424b633bb Fix issue #2845673: android:exported="false" is not obeyed
Thou shall obey.

Change-Id: I09f163a0db7cc9189c8d7f5116cc8ca9d4f7a76c
2010-08-18 16:07:35 -07:00
Dianne Hackborn
a10382b67d am 2e47052f: am 567722ee: Merge "Fix problems with determining when to kill apps for wake usage." into gingerbread
Merge commit '2e47052fc4ad3439adc2322fd953fd58a85d457c'

* commit '2e47052fc4ad3439adc2322fd953fd58a85d457c':
  Fix problems with determining when to kill apps for wake usage.
2010-08-16 15:18:27 -07:00
Dianne Hackborn
0a56fdc140 am 66b0343e: am a8d9291d: Merge "Various battery info things:" into gingerbread
Merge commit '66b0343e9e32203cdd39b854852cf575ca2fcd6b'

* commit '66b0343e9e32203cdd39b854852cf575ca2fcd6b':
  Various battery info things:
2010-08-16 15:17:46 -07:00
Dianne Hackborn
2e47052fc4 am 567722ee: Merge "Fix problems with determining when to kill apps for wake usage." into gingerbread
Merge commit '567722eee190f7cf88dc7ea95167db76d5514842' into gingerbread-plus-aosp

* commit '567722eee190f7cf88dc7ea95167db76d5514842':
  Fix problems with determining when to kill apps for wake usage.
2010-08-15 17:34:49 -07:00
Dianne Hackborn
1ebccf531d Fix problems with determining when to kill apps for wake usage.
Also improve debug printing of various times.

Change-Id: Ifcc288fd1bcbf44c069875ba97925b9e7ffe9a48
2010-08-15 17:27:29 -07:00
Dianne Hackborn
66b0343e9e am a8d9291d: Merge "Various battery info things:" into gingerbread
Merge commit 'a8d9291d7f93d1aa0d24d71d65c7de2894812177' into gingerbread-plus-aosp

* commit 'a8d9291d7f93d1aa0d24d71d65c7de2894812177':
  Various battery info things:
2010-08-13 16:00:44 -07:00
Dianne Hackborn
9adb9c3b10 Various battery info things:
- Now track wake locks in battery history.
- Now track sensors in battery history.
- Some filtering of sensory data.
- Fixes to some data that wasn't cleared when resetting battery stats.
- Print amount discharged since last charge.

And the big part -- keep track of wake locks held per process,
and kill processes that hold wake locks too much while they are in
the background.  This includes information in the battery stats
about the process being killed, which will be available to the
developer if the app is reported.

Change-Id: I97202e94d00aafe0526ba2db74a03212e7539c54
2010-08-13 15:17:49 -07:00
Dianne Hackborn
ed6075943f am 2d8b9fe0: am bd1c082c: Merge "New system property "sys.boot_completed" set to 1 when boot completed." into gingerbread
Merge commit '2d8b9fe0f9fe44c17ccc4d041f726df490548984'

* commit '2d8b9fe0f9fe44c17ccc4d041f726df490548984':
  New system property "sys.boot_completed" set to 1 when boot completed.
2010-08-11 15:25:42 -07:00
Dianne Hackborn
2d8b9fe0f9 am bd1c082c: Merge "New system property "sys.boot_completed" set to 1 when boot completed." into gingerbread
Merge commit 'bd1c082cf90d07e3ccb017b72e59b5ccad81dd07' into gingerbread-plus-aosp

* commit 'bd1c082cf90d07e3ccb017b72e59b5ccad81dd07':
  New system property "sys.boot_completed" set to 1 when boot completed.
2010-08-11 15:20:34 -07:00
Dianne Hackborn
f4c454bac9 New system property "sys.boot_completed" set to 1 when boot completed.
Change-Id: Ie3fc0b1efdfb637b0c780064a71e8c1575e15ca3
2010-08-11 12:47:41 -07:00
Jean-Baptiste Queru
1ca94798cc Fix build: HistoryRecord is now ActivityRecord
Change-Id: I5f402e76fbff58ec59ea26b6765e7455801a6cd0
2010-08-11 11:56:21 -07:00
Dianne Hackborn
9f53119b72 First pass at a new clipboard API.
ClipboardManager was in android.text(!!) so it needed to be moved
up to android.content to have access to the richer data types we
now need.

ClippedData is the data representation.  Still needs a lot of
fleshing out to allow holding more than one data type at a time
and perhaps conversions between them.  (MIME-oriented interrogation
and conversion will be done through ContentProvider, which needs
to grow an ability to report multiple MIME types and accept a
desired MIME type when a stream is being opened.)

Change-Id: Ifa51bedcd084a677813b255d171804e8496b0cb5
2010-08-05 12:28:20 -07:00
Brad Fitzpatrick
86dde2d64c am e2d33bbc: am d2165cfc: Merge "StrictMode: time violations in Binder calls" into gingerbread
Merge commit 'e2d33bbc496192d49c1e48baad446d8d0720d301'

* commit 'e2d33bbc496192d49c1e48baad446d8d0720d301':
  StrictMode: time violations in Binder calls
2010-07-30 15:27:56 -07:00
Brad Fitzpatrick
e2d33bbc49 am d2165cfc: Merge "StrictMode: time violations in Binder calls" into gingerbread
Merge commit 'd2165cfce7911dac66d1195ed9123e79b086d22b' into gingerbread-plus-aosp

* commit 'd2165cfce7911dac66d1195ed9123e79b086d22b':
  StrictMode: time violations in Binder calls
2010-07-30 15:23:19 -07:00
Brad Fitzpatrick
cb9ceb1029 StrictMode: time violations in Binder calls
Change-Id: I5796993dce98be722cf679b78acaf0c9de0ba461
2010-07-30 14:28:55 -07:00
Jean-Baptiste Queru
5ea89f77ea Fix build: HistoryRecord is now ActivityRecord
Change-Id: Ide07d72abd02aeb7e56695f2e98ae7af1568ad1c
2010-07-30 09:30:31 -07:00
Mattias Larsson
5f5548e82d am 85673d91: am a4fd0078: Clear preferred activities when home process crashes
Merge commit '85673d91681e6b5dede0c72f36ed3b81f5c4bb0d'

* commit '85673d91681e6b5dede0c72f36ed3b81f5c4bb0d':
  Clear preferred activities when home process crashes
2010-07-30 08:51:09 -07:00
Mattias Larsson
85673d9168 am a4fd0078: Clear preferred activities when home process crashes
Merge commit 'a4fd0078d138b433d2250a74833ee3cc6424143a' into gingerbread-plus-aosp

* commit 'a4fd0078d138b433d2250a74833ee3cc6424143a':
  Clear preferred activities when home process crashes
2010-07-30 08:45:05 -07:00
Mattias Larsson
a4fd0078d1 Clear preferred activities when home process crashes
If the "default" Home application has been replaced with
a third-party app that is repeatedly crashing at start-up,
there is no way for the user to clear the preferred activities
or uninstall the bad application. If we clear the package
preferred activities when the application crashes, the user
will be prompted with the ResolverActivity at the next boot
and can try using the app again or choose to use another
Home application.

Change-Id: I8ba8e95e6752916d50515d96c117d3084fa980fd
2010-07-30 08:36:42 -07:00