Commit Graph

410 Commits

Author SHA1 Message Date
Dianne Hackborn
10d5b0966d am 407f625a: Add new API to find out whether external storage is removable.
Merge commit '407f625a9b8e356e765a5ec587c443af1f3aadb5' into gingerbread-plus-aosp

* commit '407f625a9b8e356e765a5ec587c443af1f3aadb5':
  Add new API to find out whether external storage is removable.
2010-10-04 14:03:06 -07:00
Dianne Hackborn
407f625a9b Add new API to find out whether external storage is removable.
This is implemented based on whether we are using the "nosdcard"
product.  Needed to tweak aapt to allow use of the product attribute
with other resource definition tags besides strings.

Change-Id: I49922d23b52a34183a8e2f4d2515adaf1fc9149a
2010-10-04 13:58:56 -07:00
Brad Fitzpatrick
6718b365bc am 32e60c79: Update StrictMode\'s public API.
Merge commit '32e60c7942eeba920ec5c27b372ec0899fd75a20' into gingerbread-plus-aosp

* commit '32e60c7942eeba920ec5c27b372ec0899fd75a20':
  Update StrictMode's public API.
2010-10-01 13:05:02 -07:00
Brad Fitzpatrick
32e60c7942 Update StrictMode's public API.
This makes it more future-proof and maintainable, not exposing the
internal bitpacking state.

The implementation is unchanged (the policy is still just an int we pass
around).

Also starts to introduce VmPolicy, for things which are process-wide,
not per-thread.  As an initial user, make SQLite's Cursor finalization
leak warnings use StrictMode.

Change-Id: Idedfba4e965716f5089a52036421460b1f383725
2010-10-01 12:54:10 -07:00
Kenny Root
6ce5f60c79 am 38cf8867: Remove OBBs from state list when volume unmounted
Merge commit '38cf8867a8d3e8d5159abd0bd0e6a3b0b8348b94' into gingerbread-plus-aosp

* commit '38cf8867a8d3e8d5159abd0bd0e6a3b0b8348b94':
  Remove OBBs from state list when volume unmounted
2010-09-30 17:30:22 -07:00
Kenny Root
38cf8867a8 Remove OBBs from state list when volume unmounted
Don't keep tracking OBBs when the volume they're located on goes away.
Remove them from our state tracking maps and then send a notification to
any listener that is still around.

Add a dump handler to MountService so the state of the mount lists
can be inspected.

Change the API to just make a callback directly to the change listener
when mount is called when it's already mounted or unmount called when
it's already unmounted.

Change-Id: Idb4afbb943ca5ca775825f908bff334e3ce1cfcc
2010-09-30 17:24:34 -07:00
Doug Zongker
ab9f508292 am 981dec69: Merge "don\'t delete /cache/recovery/last_log on boot" into gingerbread
Merge commit '981dec695f83eb51935fcf480ecbd76ae3f7d6c4' into gingerbread-plus-aosp

* commit '981dec695f83eb51935fcf480ecbd76ae3f7d6c4':
  don't delete /cache/recovery/last_log on boot
2010-09-29 13:43:28 -07:00
Doug Zongker
981dec695f Merge "don't delete /cache/recovery/last_log on boot" into gingerbread 2010-09-29 13:41:00 -07:00
Doug Zongker
d059055fb3 don't delete /cache/recovery/last_log on boot
Change-Id: I7739d7a61f4f0d0c2bc6324580404f61d435d716
2010-09-29 13:22:49 -07:00
Kenny Root
d8e8186c88 am 05105f7a: Update OBB API to include callbacks
Merge commit '05105f7abe02b2dff91d6260b3628c8b97816bab' into gingerbread-plus-aosp

* commit '05105f7abe02b2dff91d6260b3628c8b97816bab':
  Update OBB API to include callbacks
2010-09-28 17:33:47 -07:00
Kenny Root
05105f7abe Update OBB API to include callbacks
Add a callback for users of the StorageManager API to be able to receive
notifications when the requested operation completes for mountObb and
unmountObb.

Add NDK API to get to ObbInfo like the Java API has.

Also update the docs for the API and remove the "STOPSHIP" comments.

Change-Id: I23a4409c7f8b74d3169614beba920b4d667990a4
2010-09-28 17:23:26 -07:00
Dianne Hackborn
8952a4488e am 287952c3: Fix issue #3022508: Crash during media scan
Merge commit '287952c35e148811c106bc0f5036eabf20f71562' into gingerbread-plus-aosp

* commit '287952c35e148811c106bc0f5036eabf20f71562':
  Fix issue #3022508: Crash during media scan
2010-09-23 16:04:23 -07:00
Dianne Hackborn
287952c35e Fix issue #3022508: Crash during media scan
Don't kill processes for excessive wake lock use, even if they
are in the background, as long as they have running services.

Also fix some problems with this, such as not noting the kill
in battery stats.

And add killing of processes for cpu usage as well, along with
some optimizations to computing CPU usage.

And fix BatteryWaster to be better behaving for testing these
cases.

Add new "monitor" command to am to watch as the activity manager
does stuff (so we can catch things at the point of ANR).

Finally some miscellaneous debug output for the stuff here, as
well as in progress debugging of an ANR.

Change-Id: Ib32f55ca50fb7486b4be4eb5e695f8f60c882cd1
2010-09-23 15:59:28 -07:00
Joe Onorato
19c4b29d46 am 8310b42f: Add javadoc saying that wake locks are ref counted by default.
Merge commit '8310b42fbc086b0f05fc8ef45ac34c7e099c485e' into gingerbread-plus-aosp

* commit '8310b42fbc086b0f05fc8ef45ac34c7e099c485e':
  Add javadoc saying that wake locks are ref counted by default.
2010-09-22 17:29:49 -07:00
Joe Onorato
8310b42fbc Add javadoc saying that wake locks are ref counted by default.
Bug: 3012561
Change-Id: I441a42fdb12ba6d87d6f5a49463d6ddcc300acb7
2010-09-22 16:54:36 -07:00
Brad Fitzpatrick
9317801a3c am c87a8adc: Merge "Flesh out StrictMode docs." into gingerbread
Merge commit 'c87a8adc0e143e0c7efc62a1094ee6ac666e46d9' into gingerbread-plus-aosp

* commit 'c87a8adc0e143e0c7efc62a1094ee6ac666e46d9':
  Flesh out StrictMode docs.
2010-09-22 15:30:05 -07:00
Brad Fitzpatrick
15ba406111 Flesh out StrictMode docs.
Bug: 3001474
Change-Id: If64209a312d45f7d96d8317d1e63e6c773a01441
2010-09-22 15:01:32 -07:00
Jeff Brown
aa522ac8ba am ed739327: Simplify and optimize MessageQueue loop.
Merge commit 'ed7393274af2f268fcdede5f1a3d72c9af842b8e' into gingerbread-plus-aosp

* commit 'ed7393274af2f268fcdede5f1a3d72c9af842b8e':
  Simplify and optimize MessageQueue loop.
2010-09-21 15:59:14 -07:00
Jeff Brown
ed7393274a Simplify and optimize MessageQueue loop.
Avoids allocating new idle handler arrays on each iteration since
we only need one to copy into.
Coalesced the synchronized blocks.
Hoisted the call to Binder.flushPendingCommands() outside of the
synchronized block.

Change-Id: Iabb6b633627954564bdd5d09e696663223407f47
2010-09-21 15:41:33 -07:00
Doug Zongker
bd1578fb68 am eb4d5b25: Merge "recovery just takes a filename as an argument now (do not merge)" into gingerbread
Merge commit 'eb4d5b253733a699c16f0a50a8e8642ec49ed9ae' into gingerbread-plus-aosp

* commit 'eb4d5b253733a699c16f0a50a8e8642ec49ed9ae':
  recovery just takes a filename as an argument now (do not merge)
2010-09-21 11:37:15 -07:00
Doug Zongker
4baf641e7d recovery just takes a filename as an argument now (do not merge)
Change-Id: I900cb3e7392c38b40f8c08ae5282cd5c05a4a009
2010-09-21 10:27:54 -07:00
Dianne Hackborn
4b187e804f am 8e1b84e7: Merge "Some battery improvements:" into gingerbread
Merge commit '8e1b84e7654ddeeb77a03f5eca10c6669b1cb42b' into gingerbread-plus-aosp

* commit '8e1b84e7654ddeeb77a03f5eca10c6669b1cb42b':
  Some battery improvements:
2010-09-20 16:34:45 -07:00
Dianne Hackborn
ce2ef766ca Some battery improvements:
- New API for iterating over history that will allow a better implementation
  in the future.
- Now do writes asynchronously.

Also improve the documentation for Activity.onRetainNonInstanceState().

Change-Id: Idf67f2796a8868eb62f288bcbb2bad29876c8554
2010-09-20 16:25:01 -07:00
Dianne Hackborn
1f377298e2 am 58e0eefe: Improve power tracking of WIFI use.
Merge commit '58e0eefeb5e2e270e2b04369bbf29fc22abda8d5' into gingerbread-plus-aosp

* commit '58e0eefeb5e2e270e2b04369bbf29fc22abda8d5':
  Improve power tracking of WIFI use.
2010-09-17 15:20:10 -07:00
Dianne Hackborn
58e0eefeb5 Improve power tracking of WIFI use.
We now distribute "wifi started" time across all apps that are
holding WIFI locks that cause it to be started.  But only when
WIFI would not normally be running.  Also have a mechanism to
distribute other WIFI work that has happened across those processes
based on their use.

Also fixed a bug where we were not retaining the CPU speed step
stats across boots...!

Change-Id: I00e3153b98429166273750512cc37e7975211ab9
2010-09-17 15:14:57 -07:00
Dianne Hackborn
264e727775 am 934516e1: Merge "Fix issue #2999795: Runtime restart on Crespo" into gingerbread
Merge commit '934516e10150874fd1db5ab9e0be3ae793441fd8' into gingerbread-plus-aosp

* commit '934516e10150874fd1db5ab9e0be3ae793441fd8':
  Fix issue #2999795: Runtime restart on Crespo
2010-09-14 11:54:28 -07:00
Dianne Hackborn
934516e101 Merge "Fix issue #2999795: Runtime restart on Crespo" into gingerbread 2010-09-14 11:50:51 -07:00
Dianne Hackborn
83770289f8 Fix issue #2999795: Runtime restart on Crespo
Change-Id: I7138b031298a234f3f35aec4a003d25cf86a57ff
2010-09-14 11:45:44 -07:00
Brad Fitzpatrick
f26ac1f8ed am 96d6c345: Merge "Unify some duplicate StrictMode-enabling code." into gingerbread
Merge commit '96d6c3454c3550486a2efa25ca0c83732b5e2eaf' into gingerbread-plus-aosp

* commit '96d6c3454c3550486a2efa25ca0c83732b5e2eaf':
  Unify some duplicate StrictMode-enabling code.
2010-09-14 11:39:54 -07:00
Brad Fitzpatrick
96d6c3454c Merge "Unify some duplicate StrictMode-enabling code." into gingerbread 2010-09-14 11:37:13 -07:00
Romain Guy
282315e154 am 52e19d59: Merge "Change the keep alive time for excess idle threads." into gingerbread
Merge commit '52e19d5917b8f057131c1dc8b3eb772febd791d9' into gingerbread-plus-aosp

* commit '52e19d5917b8f057131c1dc8b3eb772febd791d9':
  Change the keep alive time for excess idle threads.
2010-09-14 11:36:55 -07:00
Romain Guy
52e19d5917 Merge "Change the keep alive time for excess idle threads." into gingerbread 2010-09-14 11:34:01 -07:00
Romain Guy
6b424f4770 Change the keep alive time for excess idle threads.
Change-Id: Ie076544df5ee8df185f0824333fdc62203a565c2
2010-09-14 11:30:27 -07:00
Brad Fitzpatrick
50d66f9fcd Unify some duplicate StrictMode-enabling code.
Change-Id: Ifb92f35d9e245dbdb5e201597d8be702bce9e8b8
2010-09-14 08:22:30 -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
Jeff Brown
0f0541e40c am b88102f5: Input dispatcher ANR handling enhancements.
Merge commit 'b88102f5b7e51552a3576cf197b4c8cf96f193d1' into gingerbread-plus-aosp

* commit 'b88102f5b7e51552a3576cf197b4c8cf96f193d1':
  Input dispatcher ANR handling enhancements.
2010-09-12 17:05:38 -07:00
Jeff Brown
b88102f5b7 Input dispatcher ANR handling enhancements.
This change is essentially a rewrite of the main input dispatcher loop
with the target identification folded in.  Since the input dispatcher now
has all of the window state, it can make better decisions about
when to ANR.

Added a .5 second deadline for processing app switch keys.  This behavior
predates Gingerbread but had not previously been ported.

Fixed some timing inaccuracies in the ANR accounting that could cause
applications to ANR sooner than they should have.

Added a mechanism for tracking key and motion events that have been
dispatched to a window so that appropriate cancelation events can be
synthesized when recovering from ANR.  This change helps to keep
applications in sync so they don't end up with stuck buttons upon
recovery from ANRs.

Added more comments to describe the tricky parts of PollLoop.

Change-Id: I13dffca27acb436fc383980db536abc4d8b9e6f1
2010-09-12 16:52:03 -07:00
Dianne Hackborn
195dc210cb am a4ce31f5: Merge "Small fixes to battery stats." into gingerbread
Merge commit 'a4ce31f5e080eae6c97e6f37040db0c7f0fc78f2' into gingerbread-plus-aosp

* commit 'a4ce31f5e080eae6c97e6f37040db0c7f0fc78f2':
  Small fixes to battery stats.
2010-09-09 21:34:33 -07:00
Dianne Hackborn
b8071d790a Small fixes to battery stats.
Change-Id: Ibbf7c548a8e787a046de3659094cea64908e3deb
2010-09-09 16:45:15 -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
75f0024cf4 am 6e86915e: Merge "Fixes to battery stats debug output." into gingerbread
Merge commit '6e86915e8f5dfffa60ae5d1a4ca9aa74912fd026' into gingerbread-plus-aosp

* commit '6e86915e8f5dfffa60ae5d1a4ca9aa74912fd026':
  Fixes to battery stats debug output.
2010-09-07 14:15:17 -07:00
Dianne Hackborn
b5e3165129 Fixes to battery stats debug output.
Change-Id: I32e7cad9633b8c517a74573069e426d9f835a83d
2010-09-07 14:09:36 -07:00
Brad Fitzpatrick
28130baefb resolved conflicts for merge of 6b50986a to gingerbread-plus-aosp
Change-Id: I7c5ec7ae717e75ad242e2c1ad4537052e4eea718
2010-08-27 12:08:40 -07:00
Brad Fitzpatrick
333b8cba99 SharedPreferences$Editor.startCommit()
Adds a fire-and-forget save method (startCommit) to the
SharedPreferences.Editor, which is the way most people use it anyway.

This commit adds the implementation.  The previous commit added the
interface and docs:

   previous change: Idf9934b445da1fb72b79f0192218b47c0a7f5a34
        git commit: edf32d0131

In addition, this change:

-- adds a generic "runPendingWorkFinishers" mechanism to
   ActivityThread to wait on async operations that are still
   in flight and use it for this.

-- ties runPendingWorkFinishers into Activity.onPause,
   BroadcastReceiver, and Service.

-- makes sSharedPreferences keyed on name, not File, to avoid
   unnnecessary allocations

-- documents and guarantees what thread
   OnSharedPreferenceChangeListener callbacks run on

-- makes a few things in frameworks/base use startCommit(), notably
   Preference.java (which was ignoring the return value anyway)

Change-Id: I1c8db60ad45643226fe6d246d3e513eeb7bd0ebd
2010-08-27 09:10:11 -07:00
Brad Fitzpatrick
6cf1a8bfb0 am b1bbe99a: Merge "Some StrictMode API changes." into gingerbread
Merge commit 'b1bbe99aaa01f321ae94f0d5ba4505e528664cc7' into gingerbread-plus-aosp

* commit 'b1bbe99aaa01f321ae94f0d5ba4505e528664cc7':
  Some StrictMode API changes.
2010-08-24 14:18:26 -07:00
Brad Fitzpatrick
97461bd25c Some StrictMode API changes.
* rename setThreadBlockingPolicy to setThreadPolicy (opens the way to
  using StrictMode for non-blocking-related things in the future?)

* add allowThreadDiskWrites() and allowThreadDiskReads() to modify the
  current policy mask and return the old one.  this will allow turning
  off part of StrictMode during certain regions of code.  (for
  instance, writing to disk in Activity onPause...)

Change-Id: Ia1878153713f79299971fdab567fa15b3cb9d56c
2010-08-24 11:47:19 -07:00
Kenny Root
485de781f6 am 06c81f29: Merge changes I8a257579,I82d16312 into gingerbread
Merge commit '06c81f29a61ad3568a77f111b6be93e1f437f5bd' into gingerbread-plus-aosp

* commit '06c81f29a61ad3568a77f111b6be93e1f437f5bd':
  Add AStorageManager API to NDK
  Reorganize MountService IPC
2010-08-20 15:09:58 -07:00
Kenny Root
06c81f29a6 Merge changes I8a257579,I82d16312 into gingerbread
* changes:
  Add AStorageManager API to NDK
  Reorganize MountService IPC
2010-08-20 15:07:34 -07:00